diff --git a/client/chatbot.go b/client/chatbot.go index 0acf6888..c63d29d3 100644 --- a/client/chatbot.go +++ b/client/chatbot.go @@ -19,16 +19,16 @@ type ChatbotService struct { func (c *ChatbotService) SendChatMessage(ctx context.Context, scope dto.Scope, request *dto.ChatRequest) (string, error) { path := chatPath params := make(map[string]string) - + // Only add non-empty scope parameters if scope.AccountID != "" { params["accountIdentifier"] = scope.AccountID } - + if scope.OrgID != "" { params["orgIdentifier"] = scope.OrgID } - + if scope.ProjectID != "" { params["projectIdentifier"] = scope.ProjectID } diff --git a/client/cloudcostmanagement.go b/client/cloudcostmanagement.go index db29e805..73c2b582 100644 --- a/client/cloudcostmanagement.go +++ b/client/cloudcostmanagement.go @@ -8,9 +8,9 @@ import ( ) const ( - ccmBasePath = "ccm/api" - ccmGetOverviewPath = ccmBasePath + "/overview?accountIdentifier=%s&startTime=%d&endTime=%d&groupBy=%s" - ccmCostCategoryListPath = ccmBasePath + "/business-mapping/filter-panel?accountIdentifier=%s" + ccmBasePath = "ccm/api" + ccmGetOverviewPath = ccmBasePath + "/overview?accountIdentifier=%s&startTime=%d&endTime=%d&groupBy=%s" + ccmCostCategoryListPath = ccmBasePath + "/business-mapping/filter-panel?accountIdentifier=%s" ccmCostCategoryDetailListPath = ccmBasePath + "/business-mapping?accountIdentifier=%s" // This endpoint lists cost categories ) diff --git a/client/connectors.go b/client/connectors.go index 8433654e..4934f110 100644 --- a/client/connectors.go +++ b/client/connectors.go @@ -4,7 +4,7 @@ import ( "context" "fmt" - "github.com/harness/harness-mcp/client/dto" // Corrected import path for Scope + "github.com/harness/harness-mcp/client/dto" // Corrected import path for Scope pkgDTO "github.com/harness/harness-mcp/pkg/harness/dto" // Alias for the other DTOs ) @@ -34,7 +34,7 @@ func (c *ConnectorService) ListConnectorCatalogue(ctx context.Context, scope dto Connectors []string `json:"connectors"` } `json:"catalogue"` } `json:"data"` - MetaData interface{} `json:"metaData"` + MetaData interface{} `json:"metaData"` CorrelationID string `json:"correlationId"` } diff --git a/client/dto/chatbot.go b/client/dto/chatbot.go index cd582ca9..d7db6545 100644 --- a/client/dto/chatbot.go +++ b/client/dto/chatbot.go @@ -6,6 +6,6 @@ type ChatHistoryItem struct { } type ChatRequest struct { - Question string `json:"question"` - ChatHistory []ChatHistoryItem `json:"chat_history,omitempty"` + Question string `json:"question"` + ChatHistory []ChatHistoryItem `json:"chat_history,omitempty"` } diff --git a/client/dto/cloudcostmanagement.go b/client/dto/cloudcostmanagement.go index 456ebe8d..fcb3bfe0 100644 --- a/client/dto/cloudcostmanagement.go +++ b/client/dto/cloudcostmanagement.go @@ -10,33 +10,33 @@ const ( ) const ( - SortTypeName string = "NAME" - SortTypeLastEdit string = "LAST_EDIT" + SortTypeName string = "NAME" + SortTypeLastEdit string = "LAST_EDIT" ) const ( - SortOrderAsc string = "ASCENDING" - SortOrderDesc string = "DESCENDING" + SortOrderAsc string = "ASCENDING" + SortOrderDesc string = "DESCENDING" ) // CEView represents a basic ccm response. // The `data` field contains the response data. type CCMBaseResponse struct { - Status string `json:"state,omitempty"` - Message string `json:"message,omitempty"` - CorrelationID string `json:"correlation_id,omitempty"` - Error []CCMError `json:"error,omitempty"` + Status string `json:"state,omitempty"` + Message string `json:"message,omitempty"` + CorrelationID string `json:"correlation_id,omitempty"` + Error []CCMError `json:"error,omitempty"` } // Response error type CCMError struct { - FieldId string `json:"fieldId,omitempty"` - Error string `json:"error,omitempty"` + FieldId string `json:"fieldId,omitempty"` + Error string `json:"error,omitempty"` } type CEView struct { CCMBaseResponse - Data CCMOverview `json:"data,omitempty"` + Data CCMOverview `json:"data,omitempty"` } // CCMOverview represents the Overview data from a CCM Overview @@ -73,8 +73,8 @@ type CCMReference struct { // CcmCostCategoriesOptions represents options for listing cost categories type CCMListCostCategoriesOptions struct { AccountIdentifier string `json:"accountIdentifier,omitempty"` - CostCategory string `json:"costCategory,omitempty"` - SearchTerm string `json:"search,omitempty"` + CostCategory string `json:"costCategory,omitempty"` + SearchTerm string `json:"search,omitempty"` } // CcmCostCategoryList represents a list of cost categories in CCM @@ -88,22 +88,22 @@ type CCMCostCategoryList struct { // *************************** type CCMPaginationOptions struct { - Limit int32 `json:"limit,omitempty"` - Offset int32 `json:"offset,omitempty"` + Limit int32 `json:"limit,omitempty"` + Offset int32 `json:"offset,omitempty"` } type CCMListCostCategoriesDetailOptions struct { AccountIdentifier string `json:"accountIdentifier,omitempty"` SearchKey string `json:"searchKey,omitempty"` - SortType string `json:"sortType,omitempty"` // Enum: "NAME", "LAST_EDIT" + SortType string `json:"sortType,omitempty"` // Enum: "NAME", "LAST_EDIT" SortOrder string `json:"sortOrder,omitempty"` // Enum: "ASCENDING", "DESCENDING" CCMPaginationOptions } type CCMCostCategoryDetailList struct { - MetaData map[string]interface{} `json:"metaData"` - Resource CCMCostCategoryResource `json:"resource"` - ResponseMessages []CCMResponseMessage `json:"responseMessages"` + MetaData map[string]interface{} `json:"metaData"` + Resource CCMCostCategoryResource `json:"resource"` + ResponseMessages []CCMResponseMessage `json:"responseMessages"` } type CCMCostCategoryResource struct { @@ -112,29 +112,29 @@ type CCMCostCategoryResource struct { } type CCMBusinessMapping struct { - UUID string `json:"uuid"` - Name string `json:"name"` - AccountID string `json:"accountId"` - CostTargets []CCMCostTarget `json:"costTargets"` - SharedCosts []CCMSharedCost `json:"sharedCosts"` + UUID string `json:"uuid"` + Name string `json:"name"` + AccountID string `json:"accountId"` + CostTargets []CCMCostTarget `json:"costTargets"` + SharedCosts []CCMSharedCost `json:"sharedCosts"` UnallocatedCost CCMUnallocatedCost `json:"unallocatedCost"` - DataSources []string `json:"dataSources"` - CreatedAt int64 `json:"createdAt"` - LastUpdatedAt int64 `json:"lastUpdatedAt"` - CreatedBy CCMUser `json:"createdBy"` - LastUpdatedBy CCMUser `json:"lastUpdatedBy"` + DataSources []string `json:"dataSources"` + CreatedAt int64 `json:"createdAt"` + LastUpdatedAt int64 `json:"lastUpdatedAt"` + CreatedBy CCMUser `json:"createdBy"` + LastUpdatedBy CCMUser `json:"lastUpdatedBy"` } type CCMCostTarget struct { - Name string `json:"name"` - Rules []CCMRule `json:"rules"` + Name string `json:"name"` + Rules []CCMRule `json:"rules"` } type CCMSharedCost struct { - Name string `json:"name"` - Rules []CCMRule `json:"rules"` - Strategy string `json:"strategy"` - Splits []CCMSplit `json:"splits"` + Name string `json:"name"` + Rules []CCMRule `json:"rules"` + Strategy string `json:"strategy"` + Splits []CCMSplit `json:"splits"` } type CCMUnallocatedCost struct { @@ -145,7 +145,7 @@ type CCMUnallocatedCost struct { } type CCMSplit struct { - CostTargetName *string `json:"costTargetName"` + CostTargetName *string `json:"costTargetName"` PercentageContribution *float64 `json:"percentageContribution"` } @@ -161,12 +161,12 @@ type CCMUser struct { } type CCMResponseMessage struct { - Code string `json:"code"` - Level string `json:"level"` - Message string `json:"message"` - Exception *CCMException `json:"exception"` - FailureTypes []string `json:"failureTypes"` - AdditionalInfo map[string]string `json:"additionalInfo"` + Code string `json:"code"` + Level string `json:"level"` + Message string `json:"message"` + Exception *CCMException `json:"exception"` + FailureTypes []string `json:"failureTypes"` + AdditionalInfo map[string]string `json:"additionalInfo"` } type CCMException struct { diff --git a/client/dto/infrastructure.go b/client/dto/infrastructure.go index 0c227d3e..74a77446 100644 --- a/client/dto/infrastructure.go +++ b/client/dto/infrastructure.go @@ -20,11 +20,11 @@ type Infrastructure struct { // InfrastructureItem represents an item in the response list type InfrastructureItem struct { - Infrastructure Infrastructure `json:"infrastructure"` - CreatedAt int64 `json:"createdAt,omitempty"` - LastModifiedAt int64 `json:"lastModifiedAt,omitempty"` - EntityValidityDetails interface{} `json:"entityValidityDetails"` - GovernanceMetadata interface{} `json:"governanceMetadata"` + Infrastructure Infrastructure `json:"infrastructure"` + CreatedAt int64 `json:"createdAt,omitempty"` + LastModifiedAt int64 `json:"lastModifiedAt,omitempty"` + EntityValidityDetails interface{} `json:"entityValidityDetails"` + GovernanceMetadata interface{} `json:"governanceMetadata"` } // InfrastructureListResponse represents the response from the list infrastructures API @@ -32,7 +32,7 @@ type InfrastructureListResponse struct { Status string `json:"status,omitempty"` MetaData interface{} `json:"metaData"` CorrelationID string `json:"correlationId,omitempty"` - Data struct { + Data struct { Content []InfrastructureItem `json:"content"` TotalPages int `json:"totalPages"` TotalItems int `json:"totalItems"` @@ -40,36 +40,36 @@ type InfrastructureListResponse struct { PageSize int `json:"pageSize"` PageIndex int `json:"pageIndex"` Empty bool `json:"empty"` - PageToken interface{} `json:"pageToken"` + PageToken interface{} `json:"pageToken"` } `json:"data"` } // InfrastructureOptions represents the options for listing infrastructures type InfrastructureOptions struct { - Page int `json:"page,omitempty"` - Limit int `json:"limit,omitempty"` - Sort string `json:"sort,omitempty"` - Order string `json:"order,omitempty"` - DeploymentType string `json:"deploymentType,omitempty"` // Filter by deployment type - EnvironmentIdentifier string `json:"environmentIdentifier,omitempty"` // Filter by environment + Page int `json:"page,omitempty"` + Limit int `json:"limit,omitempty"` + Sort string `json:"sort,omitempty"` + Order string `json:"order,omitempty"` + DeploymentType string `json:"deploymentType,omitempty"` // Filter by deployment type + EnvironmentIdentifier string `json:"environmentIdentifier,omitempty"` // Filter by environment } // MoveInfraConfigsRequest represents the request to move infrastructure configurations type MoveInfraConfigsRequest struct { - InfraIdentifier string `json:"-"` // Required - from path parameter - EnvironmentIdentifier string `json:"-"` // Required - AccountIdentifier string `json:"-"` // Required - OrgIdentifier string `json:"-"` - ProjectIdentifier string `json:"-"` - ConnectorRef string `json:"-"` - RepoName string `json:"-"` - Branch string `json:"-"` - FilePath string `json:"-"` - CommitMsg string `json:"-"` - IsNewBranch *bool `json:"-"` - BaseBranch string `json:"-"` - IsHarnessCodeRepo *bool `json:"-"` - MoveConfigType MoveConfigType `json:"-"` // Required - enum: "INLINE_TO_REMOTE" "REMOTE_TO_INLINE" + InfraIdentifier string `json:"-"` // Required - from path parameter + EnvironmentIdentifier string `json:"-"` // Required + AccountIdentifier string `json:"-"` // Required + OrgIdentifier string `json:"-"` + ProjectIdentifier string `json:"-"` + ConnectorRef string `json:"-"` + RepoName string `json:"-"` + Branch string `json:"-"` + FilePath string `json:"-"` + CommitMsg string `json:"-"` + IsNewBranch *bool `json:"-"` + BaseBranch string `json:"-"` + IsHarnessCodeRepo *bool `json:"-"` + MoveConfigType MoveConfigType `json:"-"` // Required - enum: "INLINE_TO_REMOTE" "REMOTE_TO_INLINE" } // MoveInfraConfigsResponse represents the response from the move infrastructure configs API diff --git a/client/dto/repositories.go b/client/dto/repositories.go index 03d7a703..b2a0474f 100644 --- a/client/dto/repositories.go +++ b/client/dto/repositories.go @@ -2,39 +2,39 @@ package dto // Repository represents a repository in the system type Repository struct { - Archived bool `json:"archived,omitempty"` - Created int64 `json:"created,omitempty"` - CreatedBy int `json:"created_by,omitempty"` - DefaultBranch string `json:"default_branch,omitempty"` - Deleted int64 `json:"deleted,omitempty"` - Description string `json:"description,omitempty"` - ForkID int `json:"fork_id,omitempty"` - GitSSHURL string `json:"git_ssh_url,omitempty"` - GitURL string `json:"git_url,omitempty"` - ID int `json:"id,omitempty"` - Identifier string `json:"identifier,omitempty"` - Importing bool `json:"importing,omitempty"` - IsEmpty bool `json:"is_empty,omitempty"` - IsPublic bool `json:"is_public,omitempty"` - LastGitPush int64 `json:"last_git_push,omitempty"` - NumClosedPulls int `json:"num_closed_pulls,omitempty"` - NumForks int `json:"num_forks,omitempty"` - NumMergedPulls int `json:"num_merged_pulls,omitempty"` - NumOpenPulls int `json:"num_open_pulls,omitempty"` - NumPulls int `json:"num_pulls,omitempty"` - ParentID int `json:"parent_id,omitempty"` - Path string `json:"path,omitempty"` - Size int64 `json:"size,omitempty"` - SizeUpdated int64 `json:"size_updated,omitempty"` - State int `json:"state,omitempty"` - Updated int64 `json:"updated,omitempty"` + Archived bool `json:"archived,omitempty"` + Created int64 `json:"created,omitempty"` + CreatedBy int `json:"created_by,omitempty"` + DefaultBranch string `json:"default_branch,omitempty"` + Deleted int64 `json:"deleted,omitempty"` + Description string `json:"description,omitempty"` + ForkID int `json:"fork_id,omitempty"` + GitSSHURL string `json:"git_ssh_url,omitempty"` + GitURL string `json:"git_url,omitempty"` + ID int `json:"id,omitempty"` + Identifier string `json:"identifier,omitempty"` + Importing bool `json:"importing,omitempty"` + IsEmpty bool `json:"is_empty,omitempty"` + IsPublic bool `json:"is_public,omitempty"` + LastGitPush int64 `json:"last_git_push,omitempty"` + NumClosedPulls int `json:"num_closed_pulls,omitempty"` + NumForks int `json:"num_forks,omitempty"` + NumMergedPulls int `json:"num_merged_pulls,omitempty"` + NumOpenPulls int `json:"num_open_pulls,omitempty"` + NumPulls int `json:"num_pulls,omitempty"` + ParentID int `json:"parent_id,omitempty"` + Path string `json:"path,omitempty"` + Size int64 `json:"size,omitempty"` + SizeUpdated int64 `json:"size_updated,omitempty"` + State int `json:"state,omitempty"` + Updated int64 `json:"updated,omitempty"` } // RepositoryOptions represents the options for listing repositories type RepositoryOptions struct { - Query string `json:"query,omitempty"` - Sort string `json:"sort,omitempty"` - Order string `json:"order,omitempty"` - Page int `json:"page,omitempty"` - Limit int `json:"limit,omitempty"` + Query string `json:"query,omitempty"` + Sort string `json:"sort,omitempty"` + Order string `json:"order,omitempty"` + Page int `json:"page,omitempty"` + Limit int `json:"limit,omitempty"` } diff --git a/client/dto/service.go b/client/dto/service.go index 08b9200a..bd9db022 100644 --- a/client/dto/service.go +++ b/client/dto/service.go @@ -2,17 +2,17 @@ package dto // Service represents a service in Harness type Service struct { - ID string `json:"identifier"` - Name string `json:"name"` - Description string `json:"description,omitempty"` - OrgIdentifier string `json:"orgIdentifier"` - ProjectIdentifier string `json:"projectIdentifier"` - YAML string `json:"yaml,omitempty"` - Tags map[string]string `json:"tags,omitempty"` - Variables []map[string]interface{} `json:"variables,omitempty"` - GitOpsEnabled bool `json:"gitOpsEnabled,omitempty"` - CreatedAt int64 `json:"createdAt,omitempty"` - LastModifiedAt int64 `json:"lastModifiedAt,omitempty"` + ID string `json:"identifier"` + Name string `json:"name"` + Description string `json:"description,omitempty"` + OrgIdentifier string `json:"orgIdentifier"` + ProjectIdentifier string `json:"projectIdentifier"` + YAML string `json:"yaml,omitempty"` + Tags map[string]string `json:"tags,omitempty"` + Variables []map[string]interface{} `json:"variables,omitempty"` + GitOpsEnabled bool `json:"gitOpsEnabled,omitempty"` + CreatedAt int64 `json:"createdAt,omitempty"` + LastModifiedAt int64 `json:"lastModifiedAt,omitempty"` } // ServiceResponse represents the response from the get service API diff --git a/client/dto/template.go b/client/dto/template.go new file mode 100644 index 00000000..eec9961d --- /dev/null +++ b/client/dto/template.go @@ -0,0 +1,44 @@ +package dto + +// TemplateListOptions represents options for listing templates +type TemplateListOptions struct { + SearchTerm string `json:"search_term,omitempty"` + TemplateListType string `json:"template_list_type,omitempty"` + PaginationOptions +} + + +// TemplateMetadataSummaryResponse represents a template metadata summary +type TemplateMetadataSummaryResponse struct { + Account string `json:"account,omitempty"` + Org string `json:"org,omitempty"` + Project string `json:"project,omitempty"` + Identifier string `json:"identifier,omitempty"` + Name string `json:"name,omitempty"` + Description string `json:"description,omitempty"` + Tags map[string]string `json:"tags,omitempty"` + VersionLabel string `json:"version_label,omitempty"` + EntityType string `json:"entity_type,omitempty"` + ChildType string `json:"child_type,omitempty"` + Scope string `json:"scope,omitempty"` + Version int64 `json:"version,omitempty"` + GitDetails *EntityGitDetails `json:"git_details,omitempty"` + Updated int64 `json:"updated,omitempty"` + StoreType string `json:"store_type,omitempty"` + ConnectorRef string `json:"connector_ref,omitempty"` + StableTemplate bool `json:"stable_template,omitempty"` +} + +// EntityGitDetails represents git details for an entity +type EntityGitDetails struct { + ObjectID string `json:"object_id,omitempty"` + BranchName string `json:"branch_name,omitempty"` + FilePath string `json:"file_path,omitempty"` + RepoName string `json:"repo_name,omitempty"` + CommitID string `json:"commit_id,omitempty"` + FileURL string `json:"file_url,omitempty"` + RepoURL string `json:"repo_url,omitempty"` +} + +// TemplateMetaDataList represents a list of template metadata +type TemplateMetaDataList []TemplateMetadataSummaryResponse diff --git a/client/environments.go b/client/environments.go index 24fef6e0..fe9249ce 100644 --- a/client/environments.go +++ b/client/environments.go @@ -88,15 +88,15 @@ func (e *EnvironmentClient) List(ctx context.Context, scope dto.Scope, opts *dto // Note: REMOTE_TO_INLINE operations are not supported for environments func (e *EnvironmentClient) MoveConfigs(ctx context.Context, scope dto.Scope, request *dto.MoveEnvironmentConfigsRequest) (bool, error) { path := fmt.Sprintf(environmentMoveConfigsPath, request.EnvironmentIdentifier) - + params := make(map[string]string) addScope(scope, params) - + // Explicitly add org and project identifiers from the request if request.OrgIdentifier != "" { params["orgIdentifier"] = request.OrgIdentifier } - + if request.ProjectIdentifier != "" { params["projectIdentifier"] = request.ProjectIdentifier } @@ -104,35 +104,35 @@ func (e *EnvironmentClient) MoveConfigs(ctx context.Context, scope dto.Scope, re if request.ConnectorRef != "" { params["connectorRef"] = request.ConnectorRef } - + if request.RepoName != "" { params["repoName"] = request.RepoName } - + if request.Branch != "" { params["branch"] = request.Branch } - + if request.FilePath != "" { params["filePath"] = request.FilePath } - + if request.CommitMsg != "" { params["commitMsg"] = request.CommitMsg } - + if request.IsNewBranch != nil { params["isNewBranch"] = fmt.Sprintf("%t", *request.IsNewBranch) } - + if request.BaseBranch != "" { params["baseBranch"] = request.BaseBranch } - + if request.IsHarnessCodeRepo != nil { params["isHarnessCodeRepo"] = fmt.Sprintf("%t", *request.IsHarnessCodeRepo) } - + // Check that we're not attempting an unsupported operation if request.MoveConfigType == dto.RemoteToInline { return false, fmt.Errorf("operation not supported: REMOTE_TO_INLINE operation is not supported for environments") diff --git a/client/infrastructure.go b/client/infrastructure.go index e3eaebfe..07a75cac 100644 --- a/client/infrastructure.go +++ b/client/infrastructure.go @@ -8,8 +8,8 @@ import ( ) const ( - infrastructureBasePath = "ng/api/infrastructures" - infrastructureListPath = infrastructureBasePath + infrastructureBasePath = "ng/api/infrastructures" + infrastructureListPath = infrastructureBasePath infrastructureMoveConfigsPath = infrastructureBasePath + "/move-config/%s" ) @@ -85,19 +85,19 @@ func (i *InfrastructureClient) MoveConfigs(ctx context.Context, scope dto.Scope, params := make(map[string]string) // Add scope to parameters addScope(scope, params) - + // Add required parameters params["accountIdentifier"] = request.AccountIdentifier - + // Add optional parameters if request.EnvironmentIdentifier != "" { params["environmentIdentifier"] = request.EnvironmentIdentifier } - + if request.OrgIdentifier != "" { params["orgIdentifier"] = request.OrgIdentifier } - + if request.ProjectIdentifier != "" { params["projectIdentifier"] = request.ProjectIdentifier } @@ -105,35 +105,35 @@ func (i *InfrastructureClient) MoveConfigs(ctx context.Context, scope dto.Scope, if request.ConnectorRef != "" { params["connectorRef"] = request.ConnectorRef } - + if request.RepoName != "" { params["repoName"] = request.RepoName } - + if request.Branch != "" { params["branch"] = request.Branch } - + if request.FilePath != "" { params["filePath"] = request.FilePath } - + if request.CommitMsg != "" { params["commitMsg"] = request.CommitMsg } - + if request.IsNewBranch != nil { params["isNewBranch"] = fmt.Sprintf("%t", *request.IsNewBranch) } - + if request.BaseBranch != "" { params["baseBranch"] = request.BaseBranch } - + if request.IsHarnessCodeRepo != nil { params["isHarnessCodeRepo"] = fmt.Sprintf("%t", *request.IsHarnessCodeRepo) } - + // Ensure the parameter name matches exactly what the API expects params["moveConfigType"] = string(request.MoveConfigType) diff --git a/client/pipelines.go b/client/pipelines.go index 4898d555..fe24e656 100644 --- a/client/pipelines.go +++ b/client/pipelines.go @@ -14,13 +14,13 @@ const ( pipelineExecutionPath = "api/pipelines/execution/url" pipelineExecutionGetPath = "api/pipelines/execution/v2/%s" pipelineExecutionSummaryPath = "api/pipelines/execution/summary" - + // Prefix to prepend for external API calls externalPathPrefix = "pipeline/" ) type PipelineService struct { - Client *Client + Client *Client UseInternalPaths bool } diff --git a/client/templates.go b/client/templates.go new file mode 100644 index 00000000..79f8eb26 --- /dev/null +++ b/client/templates.go @@ -0,0 +1,83 @@ +package client + +import ( + "context" + "fmt" + + "github.com/harness/harness-mcp/client/dto" +) + +type TemplateService struct { + Client *Client +} + +// ListAccount lists templates in the account scope +func (ts *TemplateService) ListAccount(ctx context.Context, opts *dto.TemplateListOptions) (*dto.TemplateMetaDataList, error) { + endpoint := "/v1/templates" + + params := make(map[string]string) + if opts.SearchTerm != "" { + params["searchTerm"] = opts.SearchTerm + } + if opts.TemplateListType != "" { + params["templateListType"] = opts.TemplateListType + } + params["page"] = fmt.Sprintf("%d", opts.Page) + params["size"] = fmt.Sprintf("%d", opts.Size) + + var result dto.TemplateMetaDataList + err := ts.Client.Get(ctx, endpoint, params, map[string]string{}, &result) + if err != nil { + return nil, fmt.Errorf("failed to list account templates: %w", err) + } + + return &result, nil +} + +// ListOrg lists templates in the organization scope +func (ts *TemplateService) ListOrg(ctx context.Context, scope dto.Scope, opts *dto.TemplateListOptions) (*dto.TemplateMetaDataList, error) { + endpoint := fmt.Sprintf("/v1/orgs/%s/templates", scope.OrgID) + + params := make(map[string]string) + addScope(scope, params) + if opts.SearchTerm != "" { + params["searchTerm"] = opts.SearchTerm + } + if opts.TemplateListType != "" { + params["templateListType"] = opts.TemplateListType + } + params["page"] = fmt.Sprintf("%d", opts.Page) + params["size"] = fmt.Sprintf("%d", opts.Size) + + var result dto.TemplateMetaDataList + err := ts.Client.Get(ctx, endpoint, params, map[string]string{}, &result) + if err != nil { + return nil, fmt.Errorf("failed to list org templates: %w", err) + } + + return &result, nil +} + +// ListProject lists templates in the project scope +func (ts *TemplateService) ListProject(ctx context.Context, scope dto.Scope, opts *dto.TemplateListOptions) (*dto.TemplateMetaDataList, error) { + endpoint := fmt.Sprintf("/v1/orgs/%s/projects/%s/templates", scope.OrgID, scope.ProjectID) + + params := make(map[string]string) + addScope(scope, params) + if opts.SearchTerm != "" { + params["searchTerm"] = opts.SearchTerm + } + if opts.TemplateListType != "" { + params["templateListType"] = opts.TemplateListType + } + params["page"] = fmt.Sprintf("%d", opts.Page) + params["size"] = fmt.Sprintf("%d", opts.Size) + + var result dto.TemplateMetaDataList + err := ts.Client.Get(ctx, endpoint, params, map[string]string{}, &result) + if err != nil { + return nil, fmt.Errorf("failed to list project templates: %w", err) + } + + return &result, nil +} diff --git a/go.mod b/go.mod index ef791dd2..176b884d 100644 --- a/go.mod +++ b/go.mod @@ -7,6 +7,7 @@ toolchain go1.23.8 require ( github.com/cenkalti/backoff/v4 v4.3.0 github.com/golang-jwt/jwt v3.2.2+incompatible + github.com/google/uuid v1.6.0 github.com/mark3labs/mcp-go v0.20.1 github.com/oapi-codegen/runtime v1.1.1 github.com/rs/zerolog v1.34.0 @@ -17,7 +18,6 @@ require ( require ( github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/fsnotify/fsnotify v1.7.0 // indirect - github.com/google/uuid v1.6.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/magiconair/properties v1.8.7 // indirect diff --git a/pkg/harness/auth/jwt_test.go b/pkg/harness/auth/jwt_test.go index f5c49b26..a9d55575 100644 --- a/pkg/harness/auth/jwt_test.go +++ b/pkg/harness/auth/jwt_test.go @@ -136,12 +136,12 @@ func TestJWTProvider_GetHeader(t *testing.T) { if len(parts) != 2 { t.Fatalf("Expected token value format to be '{serviceIdentity} {token}', got %s", value) } - + // Validate service identity if parts[0] != serviceIdentity { t.Errorf("Expected service identity to be '%s', got '%s'", serviceIdentity, parts[0]) } - + tokenString := parts[1] // Parse token diff --git a/pkg/harness/chatbot.go b/pkg/harness/chatbot.go index 64df4b45..10f98083 100644 --- a/pkg/harness/chatbot.go +++ b/pkg/harness/chatbot.go @@ -24,11 +24,11 @@ func AskChatbotTool(config *config.Config, client *client.ChatbotService) (tool "type": "object", "properties": map[string]any{ "question": map[string]any{ - "type": "string", + "type": "string", "description": "The question in the chat history", }, "answer": map[string]any{ - "type": "string", + "type": "string", "description": "The answer in the chat history", }, }, @@ -75,4 +75,4 @@ func AskChatbotTool(config *config.Config, client *client.ChatbotService) (tool return mcp.NewToolResultText(response), nil } -} \ No newline at end of file +} diff --git a/pkg/harness/cloudcostmanagement.go b/pkg/harness/cloudcostmanagement.go index aa01da74..fbfe6146 100644 --- a/pkg/harness/cloudcostmanagement.go +++ b/pkg/harness/cloudcostmanagement.go @@ -4,10 +4,10 @@ import ( "context" "encoding/json" "fmt" - "github.com/harness/harness-mcp/pkg/utils" "github.com/harness/harness-mcp/client" "github.com/harness/harness-mcp/client/dto" "github.com/harness/harness-mcp/cmd/harness-mcp-server/config" + "github.com/harness/harness-mcp/pkg/utils" "github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/server" "time" @@ -16,8 +16,8 @@ import ( // GetCcmOverview creates a tool for getting a ccm overview from an account func GetCcmOverviewTool(config *config.Config, client *client.CloudCostManagementService) (tool mcp.Tool, handler server.ToolHandlerFunc) { now := time.Now() - defaultStartTime := utils.FormatUnixToMMDDYYYY(now.AddDate(0, 0, -60).Unix()) - defaultEndTime:= utils.CurrentMMDDYYYY(); + defaultStartTime := utils.FormatUnixToMMDDYYYY(now.AddDate(0, 0, -60).Unix()) + defaultEndTime := utils.CurrentMMDDYYYY() return mcp.NewTool("get_ccm_overview", mcp.WithDescription("Get an overview for an specific account in Harness Cloud Cost Management"), mcp.WithString("accountIdentifier", @@ -56,7 +56,7 @@ func GetCcmOverviewTool(config *config.Config, client *client.CloudCostManagemen if err != nil { return mcp.NewToolResultError(err.Error()), nil } - startTime, err := utils.FormatMMDDYYYYToUnixMillis(startTimeStr) + startTime, err := utils.FormatMMDDYYYYToUnixMillis(startTimeStr) endTime, err := utils.FormatMMDDYYYYToUnixMillis(endTimeStr) groupBy, err := requiredParam[string](request, "groupBy") @@ -103,7 +103,7 @@ func ListCcmCostCategoriesTool(config *config.Config, client *client.CloudCostMa params := &dto.CCMListCostCategoriesOptions{} params.AccountIdentifier = accountId - // Handle cost category parameter + // Handle cost category parameter costCategory, ok, err := OptionalParamOK[string](request, "costCategory") if err != nil { return mcp.NewToolResultError(err.Error()), nil @@ -138,7 +138,7 @@ func ListCcmCostCategoriesTool(config *config.Config, client *client.CloudCostMa return mcp.NewToolResultText(string(r)), nil } - } +} func ListCcmCostCategoriesDetailTool(config *config.Config, client *client.CloudCostManagementService) (tool mcp.Tool, handler server.ToolHandlerFunc) { return mcp.NewTool("list_ccm_cost_categories_detail", @@ -242,7 +242,7 @@ func ListCcmCostCategoriesDetailTool(config *config.Config, client *client.Cloud return mcp.NewToolResultText(string(r)), nil } - } +} // getAccountID retrieves AccountID from the config file func getAccountID(config *config.Config, request mcp.CallToolRequest) (string, error) { diff --git a/pkg/harness/dto/connectors.go b/pkg/harness/dto/connectors.go index cbd952c7..660d708e 100644 --- a/pkg/harness/dto/connectors.go +++ b/pkg/harness/dto/connectors.go @@ -5,27 +5,27 @@ import "time" // ConnectorCatalogueItem represents an item in the connector catalogue. // Based on https://apidocs.harness.io/tag/Connectors#operation/getConnectorCatalogue type ConnectorCatalogueItem struct { - Category string `json:"category,omitempty"` - Type string `json:"type,omitempty"` - Name string `json:"name,omitempty"` - Description string `json:"description,omitempty"` - LogoURL string `json:"logoURL,omitempty"` - Tags []string `json:"tags,omitempty"` - HarnessManaged bool `json:"harnessManaged,omitempty"` - Beta bool `json:"beta,omitempty"` - ComingSoon bool `json:"comingSoon,omitempty"` - ComingSoonDate string `json:"comingSoonDate,omitempty"` - ComingSoonDescription string `json:"comingSoonDescription,omitempty"` - IsNew bool `json:"isNew,omitempty"` - NewUntil *time.Time `json:"newUntil,omitempty"` - SupportedDelegateTypes []string `json:"supportedDelegateTypes,omitempty"` - DelegateSelectors []string `json:"delegateSelectors,omitempty"` - DelegateRequiresConnectivityMode bool `json:"delegateRequiresConnectivityMode,omitempty"` - ConnectivityModes []string `json:"connectivityModes,omitempty"` - DocumentationLink string `json:"documentationLink,omitempty"` - IsSSCA bool `json:"isSSCA,omitempty"` - SSCADescription string `json:"sscaDescription,omitempty"` - SSCADocumentationLink string `json:"sscaDocumentationLink,omitempty"` - SSCAType string `json:"sscaType,omitempty"` - SSCASupported bool `json:"sscaSupported,omitempty"` + Category string `json:"category,omitempty"` + Type string `json:"type,omitempty"` + Name string `json:"name,omitempty"` + Description string `json:"description,omitempty"` + LogoURL string `json:"logoURL,omitempty"` + Tags []string `json:"tags,omitempty"` + HarnessManaged bool `json:"harnessManaged,omitempty"` + Beta bool `json:"beta,omitempty"` + ComingSoon bool `json:"comingSoon,omitempty"` + ComingSoonDate string `json:"comingSoonDate,omitempty"` + ComingSoonDescription string `json:"comingSoonDescription,omitempty"` + IsNew bool `json:"isNew,omitempty"` + NewUntil *time.Time `json:"newUntil,omitempty"` + SupportedDelegateTypes []string `json:"supportedDelegateTypes,omitempty"` + DelegateSelectors []string `json:"delegateSelectors,omitempty"` + DelegateRequiresConnectivityMode bool `json:"delegateRequiresConnectivityMode,omitempty"` + ConnectivityModes []string `json:"connectivityModes,omitempty"` + DocumentationLink string `json:"documentationLink,omitempty"` + IsSSCA bool `json:"isSSCA,omitempty"` + SSCADescription string `json:"sscaDescription,omitempty"` + SSCADocumentationLink string `json:"sscaDocumentationLink,omitempty"` + SSCAType string `json:"sscaType,omitempty"` + SSCASupported bool `json:"sscaSupported,omitempty"` } diff --git a/pkg/harness/environments.go b/pkg/harness/environments.go index 21f0c7a7..79134587 100644 --- a/pkg/harness/environments.go +++ b/pkg/harness/environments.go @@ -209,46 +209,46 @@ func MoveEnvironmentConfigsTool(config *config.Config, client *client.Environmen if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + if moveConfigType != string(dto.InlineToRemote) { return mcp.NewToolResultError("move_config_type must be INLINE_TO_REMOTE. The REMOTE_TO_INLINE operation is not supported for environments."), nil } - + connectorRef, err := OptionalParam[string](request, "connector_ref") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + repoName, err := OptionalParam[string](request, "repo_name") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + branch, err := OptionalParam[string](request, "branch") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + filePath, err := OptionalParam[string](request, "file_path") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + commitMsg, err := OptionalParam[string](request, "commit_msg") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + isNewBranch, err := OptionalParam[bool](request, "is_new_branch") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + baseBranch, err := OptionalParam[string](request, "base_branch") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + isHarnessCodeRepo, err := OptionalParam[bool](request, "is_harness_code_repo") if err != nil { return mcp.NewToolResultError(err.Error()), nil @@ -257,28 +257,28 @@ func MoveEnvironmentConfigsTool(config *config.Config, client *client.Environmen // Create move request with the new structure moveRequest := &dto.MoveEnvironmentConfigsRequest{ EnvironmentIdentifier: environmentIdentifier, - AccountIdentifier: accountIdentifier, - OrgIdentifier: orgIdentifier, - ProjectIdentifier: projectIdentifier, - ConnectorRef: connectorRef, - RepoName: repoName, - Branch: branch, - FilePath: filePath, - CommitMsg: commitMsg, + AccountIdentifier: accountIdentifier, + OrgIdentifier: orgIdentifier, + ProjectIdentifier: projectIdentifier, + ConnectorRef: connectorRef, + RepoName: repoName, + Branch: branch, + FilePath: filePath, + CommitMsg: commitMsg, MoveConfigType: dto.MoveConfigType(moveConfigType), } - + // Set boolean pointers if values were provided if isNewBranchProvided, ok := request.Params.Arguments["is_new_branch"]; ok && isNewBranchProvided != nil { val := isNewBranch moveRequest.IsNewBranch = &val } - + if isHarnessCodeRepoProvided, ok := request.Params.Arguments["is_harness_code_repo"]; ok && isHarnessCodeRepoProvided != nil { val := isHarnessCodeRepo moveRequest.IsHarnessCodeRepo = &val } - + // Add the base branch if provided if baseBranch != "" { moveRequest.BaseBranch = baseBranch diff --git a/pkg/harness/genai.go b/pkg/harness/genai.go index f27e3957..41f21b84 100644 --- a/pkg/harness/genai.go +++ b/pkg/harness/genai.go @@ -37,7 +37,7 @@ func AIDevOpsAgentTool(config *config.Config, client *client.GenaiService) (tool "type": "object", "properties": map[string]any{ "type": map[string]any{ - "type": "string", + "type": "string", "description": "The type of context item", }, "payload": map[string]any{ @@ -53,11 +53,11 @@ func AIDevOpsAgentTool(config *config.Config, client *client.GenaiService) (tool "type": "object", "properties": map[string]any{ "role": map[string]any{ - "type": "string", + "type": "string", "description": "The role of the message sender (e.g., 'user', 'assistant')", }, "content": map[string]any{ - "type": "string", + "type": "string", "description": "The content of the conversation message", }, }, diff --git a/pkg/harness/infrastructure.go b/pkg/harness/infrastructure.go index c7ef7f11..ea2c59c4 100644 --- a/pkg/harness/infrastructure.go +++ b/pkg/harness/infrastructure.go @@ -79,7 +79,7 @@ func ListInfrastructuresTool(config *config.Config, client *client.Infrastructur if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + if environmentIdentifier != "" { opts.EnvironmentIdentifier = environmentIdentifier } @@ -177,75 +177,75 @@ func MoveInfrastructureConfigsTool(config *config.Config, client *client.Infrast if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + // Extract required parameters infraIdentifier, err := requiredParam[string](request, "infra_identifier") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + environmentIdentifier, err := requiredParam[string](request, "environment_identifier") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + moveConfigTypeStr, err := requiredParam[string](request, "move_config_type") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + // Validate move config type if moveConfigTypeStr != string(dto.InlineToRemote) && moveConfigTypeStr != string(dto.RemoteToInline) { return mcp.NewToolResultError("move_config_type must be either INLINE_TO_REMOTE or REMOTE_TO_INLINE"), nil } moveConfigType := dto.MoveConfigType(moveConfigTypeStr) - + // Extract optional parameters orgIdentifier, err := OptionalParam[string](request, "org_identifier") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + projectIdentifier, err := OptionalParam[string](request, "project_identifier") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + connectorRef, err := OptionalParam[string](request, "connector_ref") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + repoName, err := OptionalParam[string](request, "repo_name") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + branch, err := OptionalParam[string](request, "branch") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + filePath, err := OptionalParam[string](request, "file_path") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + commitMsg, err := OptionalParam[string](request, "commit_msg") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + isNewBranch, err := OptionalParam[bool](request, "is_new_branch") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + baseBranch, err := OptionalParam[string](request, "base_branch") if err != nil { return mcp.NewToolResultError(err.Error()), nil } - + isHarnessCodeRepo, err := OptionalParam[bool](request, "is_harness_code_repo") if err != nil { return mcp.NewToolResultError(err.Error()), nil @@ -254,7 +254,7 @@ func MoveInfrastructureConfigsTool(config *config.Config, client *client.Infrast // Create move request moveRequest := &dto.MoveInfraConfigsRequest{ InfraIdentifier: infraIdentifier, - EnvironmentIdentifier: environmentIdentifier, + EnvironmentIdentifier: environmentIdentifier, AccountIdentifier: scope.AccountID, OrgIdentifier: orgIdentifier, ProjectIdentifier: projectIdentifier, @@ -265,21 +265,21 @@ func MoveInfrastructureConfigsTool(config *config.Config, client *client.Infrast CommitMsg: commitMsg, MoveConfigType: moveConfigType, } - + // Set boolean pointers if values were provided if isNewBranchProvided, ok := request.Params.Arguments["is_new_branch"]; ok && isNewBranchProvided != nil { moveRequest.IsNewBranch = &isNewBranch } - + if isHarnessCodeRepoProvided, ok := request.Params.Arguments["is_harness_code_repo"]; ok && isHarnessCodeRepoProvided != nil { moveRequest.IsHarnessCodeRepo = &isHarnessCodeRepo } - + // Add the base branch if provided if baseBranch != "" { moveRequest.BaseBranch = baseBranch } - + // Execute the move operation response, err := client.MoveConfigs(ctx, scope, moveRequest) if err != nil { @@ -288,9 +288,9 @@ func MoveInfrastructureConfigsTool(config *config.Config, client *client.Infrast // Create the response result := map[string]interface{}{ - "identifier": response.Data.Identifier, - "success": response.Data.Success, - } + "identifier": response.Data.Identifier, + "success": response.Data.Success, + } r, err := json.Marshal(result) if err != nil { diff --git a/pkg/harness/prompts.go b/pkg/harness/prompts.go index 81c97d1e..31f0357e 100644 --- a/pkg/harness/prompts.go +++ b/pkg/harness/prompts.go @@ -5,14 +5,13 @@ import ( "github.com/mark3labs/mcp-go/server" ) - // RegisterPrompts initializes and registers predefined prompts with the MCP server. -func RegisterPrompts(mcpServer *server.MCPServer ) { - prompts := p.Prompts{} +func RegisterPrompts(mcpServer *server.MCPServer) { + prompts := p.Prompts{} // This prompt is intended to make the LLM handle the date parameters in the correct format because fields descriptions where not enough. prompts.Append( - p.NewPrompt().SetName("get_ccm_overview"). + p.NewPrompt().SetName("get_ccm_overview"). SetDescription("Ensure parameters are provided correctly and in the right format. "). SetResultDescription("Input parameters validation"). SetText(`When calling get_ccm_overview, ensure you have: accountIdentifier, groupBy, startDate, and endDate. diff --git a/pkg/harness/server.go b/pkg/harness/server.go index a4a51403..c8d2e361 100644 --- a/pkg/harness/server.go +++ b/pkg/harness/server.go @@ -141,3 +141,8 @@ func OptionalStringArrayParam(r mcp.CallToolRequest, p string) ([]string, error) return []string{}, fmt.Errorf("parameter %s could not be coerced to []string, is %T", p, r.Params.Arguments[p]) } } + +// boolPtr is a helper function that converts a bool to *bool +func boolPtr(b bool) *bool { + return &b +} diff --git a/pkg/harness/services.go b/pkg/harness/services.go index 5eb3bd29..351b38e7 100644 --- a/pkg/harness/services.go +++ b/pkg/harness/services.go @@ -119,10 +119,10 @@ func ListServicesTool(config *config.Config, client *client.ServiceClient) (tool // Create response with services and metadata response := map[string]interface{}{ - "services": services, - "totalCount": totalCount, - "pageSize": opts.Limit, - "pageNumber": opts.Page, + "services": services, + "totalCount": totalCount, + "pageSize": opts.Limit, + "pageNumber": opts.Page, } r, err := json.Marshal(response) diff --git a/pkg/harness/templates.go b/pkg/harness/templates.go new file mode 100644 index 00000000..2021f9e0 --- /dev/null +++ b/pkg/harness/templates.go @@ -0,0 +1,175 @@ +package harness + +import ( + "context" + "encoding/json" + "fmt" + + "github.com/harness/harness-mcp/client" + "github.com/harness/harness-mcp/client/dto" + "github.com/harness/harness-mcp/cmd/harness-mcp-server/config" + "github.com/mark3labs/mcp-go/mcp" + "github.com/mark3labs/mcp-go/server" +) + +func ListTemplatesAccountTool(config *config.Config, client *client.TemplateService) (tool mcp.Tool, handler server.ToolHandlerFunc) { + return mcp.NewTool("list_templates_account", + mcp.WithDescription("List templates in the account scope."), + mcp.WithString("search_term", + mcp.Description("Optional search term to filter templates"), + ), + mcp.WithString("template_list_type", + mcp.Description("Type of templates to list (e.g., Step, Stage, Pipeline)"), + ), + WithPagination(), + ), + func(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error) { + page, size, err := fetchPagination(request) + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + searchTerm, err := OptionalParam[string](request, "search_term") + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + templateListType, err := OptionalParam[string](request, "template_list_type") + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + opts := &dto.TemplateListOptions{ + SearchTerm: searchTerm, + TemplateListType: templateListType, + PaginationOptions: dto.PaginationOptions{ + Page: page, + Size: size, + }, + } + + data, err := client.ListAccount(ctx, opts) + if err != nil { + return nil, fmt.Errorf("failed to list account templates: %w", err) + } + + r, err := json.Marshal(data) + if err != nil { + return nil, fmt.Errorf("failed to marshal template list: %w", err) + } + + return mcp.NewToolResultText(string(r)), nil + } +} + +func ListTemplatesOrgTool(config *config.Config, client *client.TemplateService) (tool mcp.Tool, handler server.ToolHandlerFunc) { + return mcp.NewTool("list_templates_org", + mcp.WithDescription("List templates in the organization scope."), + mcp.WithString("search_term", + mcp.Description("Optional search term to filter templates"), + ), + mcp.WithString("template_list_type", + mcp.Description("Type of templates to list (e.g., Step, Stage, Pipeline)"), + ), + WithScope(config, true), + WithPagination(), + ), + func(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error) { + scope, err := fetchScope(config, request, true) + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + page, size, err := fetchPagination(request) + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + searchTerm, err := OptionalParam[string](request, "search_term") + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + templateListType, err := OptionalParam[string](request, "template_list_type") + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + opts := &dto.TemplateListOptions{ + SearchTerm: searchTerm, + TemplateListType: templateListType, + PaginationOptions: dto.PaginationOptions{ + Page: page, + Size: size, + }, + } + + data, err := client.ListOrg(ctx, scope, opts) + if err != nil { + return nil, fmt.Errorf("failed to list org templates: %w", err) + } + + r, err := json.Marshal(data) + if err != nil { + return nil, fmt.Errorf("failed to marshal template list: %w", err) + } + + return mcp.NewToolResultText(string(r)), nil + } +} + +func ListTemplatesProjectTool(config *config.Config, client *client.TemplateService) (tool mcp.Tool, handler server.ToolHandlerFunc) { + return mcp.NewTool("list_templates_project", + mcp.WithDescription("List templates in the project scope."), + mcp.WithString("search_term", + mcp.Description("Optional search term to filter templates"), + ), + mcp.WithString("template_list_type", + mcp.Description("Type of templates to list (e.g., Step, Stage, Pipeline)"), + ), + WithScope(config, true), + WithPagination(), + ), + func(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error) { + scope, err := fetchScope(config, request, true) + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + page, size, err := fetchPagination(request) + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + searchTerm, err := OptionalParam[string](request, "search_term") + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + templateListType, err := OptionalParam[string](request, "template_list_type") + if err != nil { + return mcp.NewToolResultError(err.Error()), nil + } + + opts := &dto.TemplateListOptions{ + SearchTerm: searchTerm, + TemplateListType: templateListType, + PaginationOptions: dto.PaginationOptions{ + Page: page, + Size: size, + }, + } + + data, err := client.ListProject(ctx, scope, opts) + if err != nil { + return nil, fmt.Errorf("failed to list project templates: %w", err) + } + + r, err := json.Marshal(data) + if err != nil { + return nil, fmt.Errorf("failed to marshal template list: %w", err) + } + + return mcp.NewToolResultText(string(r)), nil + } +} diff --git a/pkg/harness/tools.go b/pkg/harness/tools.go index 4c5bf1a2..71c87974 100644 --- a/pkg/harness/tools.go +++ b/pkg/harness/tools.go @@ -33,10 +33,10 @@ func ListConnectorCatalogueTool(harnessConfig *config.Config, c *client.Client) mcp.WithDescription("List the Harness connector catalogue."), // Define scope parameters (org_id, project_id) similar to other tools if needed by API // For getConnectorCatalogue, it seems to primarily use AccountID from scope, but org/project might be for filtering or future use. - mcp.WithString("org_id", + mcp.WithString("org_id", mcp.Description("Optional ID of the organization."), ), - mcp.WithString("project_id", + mcp.WithString("project_id", mcp.Description("Optional ID of the project."), ), ), @@ -88,7 +88,7 @@ func InitToolsets(config *config.Config) (*toolsets.ToolsetGroup, error) { if err := registerChatbot(config, tsg); err != nil { return nil, err } - + // Register genai if err := registerGenai(config, tsg); err != nil { return nil, err @@ -131,6 +131,11 @@ func InitToolsets(config *config.Config) (*toolsets.ToolsetGroup, error) { return nil, err } + if err := registerTemplates(config, tsg); err != nil { + return nil, err + } + + // Enable requested toolsets if err := tsg.EnableToolsets(config.Toolsets); err != nil { return nil, err @@ -336,8 +341,6 @@ func registerChatbot(config *config.Config, tsg *toolsets.ToolsetGroup) error { return nil } - - // registerConnectors registers the connectors toolset func registerConnectors(config *config.Config, tsg *toolsets.ToolsetGroup) error { // Connector catalogue API uses standard auth and doesn't have a specific service URL or secret beyond the main client config. @@ -390,8 +393,6 @@ func registerInfrastructure(config *config.Config, tsg *toolsets.ToolsetGroup) e return nil } - - // registerEnvironments registers the environments toolset func registerEnvironments(config *config.Config, tsg *toolsets.ToolsetGroup) error { // Determine the base URL and secret for environments @@ -542,3 +543,34 @@ func registerGenai(config *config.Config, tsg *toolsets.ToolsetGroup) error { tsg.AddToolset(genai) return nil } + +// registerTemplates registers the templates toolset +func registerTemplates(config *config.Config, tsg *toolsets.ToolsetGroup) error { + // Determine the base URL and secret for templates + baseURL := config.BaseURL + secret := "" + if config.Internal { + return nil + } + + // Create base client for templates + c, err := createClient(baseURL, config, secret) + if err != nil { + return err + } + + templateClient := &client.TemplateService{Client: c} + + // Create the templates toolset + templates := toolsets.NewToolset("templates", "Harness Template related tools"). + AddReadTools( + toolsets.NewServerTool(ListTemplatesAccountTool(config, templateClient)), + toolsets.NewServerTool(ListTemplatesOrgTool(config, templateClient)), + toolsets.NewServerTool(ListTemplatesProjectTool(config, templateClient)), + ) + + // Add toolset to the group + tsg.AddToolset(templates) + return nil +} + diff --git a/pkg/prompts/promptsregistry.go b/pkg/prompts/promptsregistry.go index 4e34420a..a2bb9a4e 100644 --- a/pkg/prompts/promptsregistry.go +++ b/pkg/prompts/promptsregistry.go @@ -1,29 +1,30 @@ package prompts import ( - "log/slog" "context" "github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/server" + "log/slog" ) // harness.prompts is intended to make adding guideline prompts easier by hidding mcp framework details. -// It also wraps the mcp-go framework so that it can be "easily" replaced if necessary. +// It also wraps the mcp-go framework so that it can be "easily" replaced if necessary. // Role represents the role of the prompt creator, either User or Assistant. type Role int + const ( - User Role = iota // 0 - Assistant // 1 + User Role = iota // 0 + Assistant // 1 ) // Prompt represents the prompt data needed to add to the MCP server. type Prompt struct { - Name string - Description string + Name string + Description string ResultDescription string - Text string - Role Role + Text string + Role Role } // Prompts is a collection of Prompt instances. @@ -50,7 +51,6 @@ func (b *Prompt) SetDescription(description string) *Prompt { return b } - // SetResultDescription sets the result description of the prompt and returns the updated Prompt instance. func (b *Prompt) SetResultDescription(resultDescription string) *Prompt { b.ResultDescription = resultDescription @@ -70,7 +70,7 @@ func (b *Prompt) Build() *Prompt { Description: b.Description, ResultDescription: b.ResultDescription, Text: b.Text, - Role: b.Role, + Role: b.Role, } } @@ -100,11 +100,11 @@ func createPrompt(prompt *Prompt) (mcp.Prompt, server.PromptHandlerFunc) { role = mcp.RoleAssistant } - return mcp.NewPrompt(prompt.Name, mcp.WithPromptDescription(prompt.Description)), - func(ctx context.Context, request mcp.GetPromptRequest) (*mcp.GetPromptResult, error) { - return mcp.NewGetPromptResult( - prompt.ResultDescription, - []mcp.PromptMessage {mcp.NewPromptMessage(role, mcp.NewTextContent(prompt.Text))}, - ), nil - } + return mcp.NewPrompt(prompt.Name, mcp.WithPromptDescription(prompt.Description)), + func(ctx context.Context, request mcp.GetPromptRequest) (*mcp.GetPromptResult, error) { + return mcp.NewGetPromptResult( + prompt.ResultDescription, + []mcp.PromptMessage{mcp.NewPromptMessage(role, mcp.NewTextContent(prompt.Text))}, + ), nil + } } diff --git a/pkg/toolsets/toolsets.go b/pkg/toolsets/toolsets.go index eb311031..a6ad8186 100644 --- a/pkg/toolsets/toolsets.go +++ b/pkg/toolsets/toolsets.go @@ -134,7 +134,7 @@ func (tg *ToolsetGroup) EnableToolsets(names []string) error { return err } } - + if tg.everythingOn { for name := range tg.Toolsets { err := tg.EnableToolset(name) @@ -163,4 +163,4 @@ func (tg *ToolsetGroup) RegisterTools(s *server.MCPServer) { for _, toolset := range tg.Toolsets { toolset.RegisterTools(s) } -} \ No newline at end of file +} diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index d56a7008..73630857 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -2,9 +2,9 @@ package utils import ( "github.com/harness/harness-mcp/client/dto" + "math" "strings" "time" - "math" ) func GetRef(scope dto.Scope, params ...string) string { @@ -20,35 +20,35 @@ func GetRef(scope dto.Scope, params ...string) string { } func FormatUnixToMMDDYYYY(ts int64) string { - t := time.Unix(ts, 0) - return t.Format("01/02/2006") + t := time.Unix(ts, 0) + return t.Format("01/02/2006") } func FormatUnixMillisToMMDDYYYY(ms int64) string { - t := time.Unix(0, ms*int64(time.Millisecond)) - return t.Format("01/02/2006") + t := time.Unix(0, ms*int64(time.Millisecond)) + return t.Format("01/02/2006") } func CurrentMMDDYYYY() string { - return time.Now().Format("01/02/2006") + return time.Now().Format("01/02/2006") } func FormatMMDDYYYYToUnixMillis(dateStr string) (int64, error) { - t, err := time.Parse("01/02/2006", dateStr) - if err != nil { - return 0, err - } - return t.UnixNano() / int64(time.Millisecond), nil + t, err := time.Parse("01/02/2006", dateStr) + if err != nil { + return 0, err + } + return t.UnixNano() / int64(time.Millisecond), nil } -func SafeIntToInt32(value int, valueIfOverflow int32) (int32) { +func SafeIntToInt32(value int, valueIfOverflow int32) int32 { if value > math.MaxInt32 || value < math.MinInt32 { return valueIfOverflow } return int32(value) } -func SafeFloatToInt32(value float64, valueIfOverflow int32) (int32) { +func SafeFloatToInt32(value float64, valueIfOverflow int32) int32 { if value > math.MaxInt32 || value < math.MinInt32 { return valueIfOverflow } diff --git a/swagger.json b/swagger.json new file mode 100644 index 00000000..80c72d93 --- /dev/null +++ b/swagger.json @@ -0,0 +1,370824 @@ +{ + "openapi": "3.0.3", + "info": { + "title": "Harness NextGen Software Delivery Platform API Reference", + "version": "1.0", + "description": "The Harness Software Delivery Platform uses OpenAPI Specification v3.0. Harness constantly improves these APIs. Please be aware that some improvements could cause breaking changes.\n# Introduction \n\n The Harness API allows you to integrate and use all the services and modules we provide on the Harness Platform. If you use client-side SDKs, Harness functionality can be integrated with your client-side automation, helping you reduce manual efforts and deploy code faster.\n\n For more information about how Harness works, read our [documentation](https://developer.harness.io/docs/getting-started) or visit the [Harness Developer Hub](https://developer.harness.io/).\n\n## How it works\n\n The Harness API is a RESTful API that uses standard HTTP verbs. You can send requests in JSON, YAML, or form-data format. The format of the response matches the format of your request. You must send a single request at a time and ensure that you include your authentication key. For more information about this, go to [Authentication](#section/Introduction/Authentication).\n\n## Get started\n\n Before you start integrating, get to know our API better by reading the following topics:\n\n * [Harness key concepts](https://developer.harness.io/docs/getting-started/learn-harness-key-concepts/)\n * [Authentication](#section/Introduction/Authentication)\n * [Requests and responses](#section/Introduction/Requests-and-Responses)\n * [Common Parameters](#section/Introduction/Common-Parameters-Beta)\n * [Status Codes](#section/Introduction/Status-Codes)\n * [Errors](#tag/Error-Response)\n * [Versioning](#section/Introduction/Versioning-Beta)\n * [Pagination](/#section/Introduction/Pagination-Beta)\n\n The methods you need to integrate with depend on the functionality you want to use. Work with your Harness Solutions Engineer to determine which methods you need.\n\n## Authentication\n\nTo authenticate with the Harness API, you need to:\n 1. Generate an API token on the Harness Platform.\n 2. Send the API token you generate in the `x-api-key` header in each request.\n\n### Generate an API token\n\nTo generate an API token, complete the following steps:\n 1. Go to the [Harness Platform](https://app.harness.io/).\n 2. On the left-hand navigation, click **My Profile**.\n 3. Click **+API Key**, enter a name for your key and then click **Save**.\n 4. Within the API Key tile, click **+Token**.\n 5. Enter a name for your token and click **Generate Token**.\n**Important**: Make sure to save your token securely. Harness does not store the API token for future reference, so make sure to save your token securely before you leave the page.\n\n### Send the API token in your requests\n\nSend the token you created in the Harness Platform in the x-api-key header. For example:\n `x-api-key: YOUR_API_KEY_HERE`\n\n## Requests and Responses\n\n The structure for each request and response is outlined in the API documentation. We have examples in JSON and YAML for every request and response. You can use our online editor to test the examples.\n\n## Common Parameters [Beta]\n\n| Field Name | Type | Default | Description |\n|------------|---------|---------|----------------|\n| identifier | string | none | URL-friendly version of the name, used to identify a resource within it's scope and so needs to be unique within the scope. |\n| name | string | none | Human-friendly name for the resource. |\n| org | string | none | Limit to provided org identifiers. |\n| project | string | none | Limit to provided project identifiers. |\n| description| string | none | More information about the specific resource. |\n| tags | map[string]string | none | List of labels applied to the resource. |\n| order | string | desc | Order to use when sorting the specified fields. Type: enum(asc,desc). |\n| sort | string | none | Fields on which to sort. Note: Specify the fields that you want to use for sorting. When doing so, consider the operational overhead of sorting fields. |\n| limit | int | 30 | Pagination: Number of items to return. |\n| page | int | 1 | Pagination page number strategy: Specify the page number within the paginated collection related to the number of items in each page. |\n| created | int64 | none | Unix timestamp that shows when the resource was created (in milliseconds). |\n| updated | int64 | none | Unix timestamp that shows when the resource was last edited (in milliseconds). |\n\n\n## Status Codes\n\n Harness uses conventional HTTP status codes to indicate the status of an API request. \n Generally, 2xx responses are reserved for success and 4xx status codes are reserved for failures. A 5xx response code indicates an error on the Harness server.\n\n | Error Code | Description |\n |-------------|-------------|\n | 200 | OK |\n | 201 | Created |\n | 202 | Accepted |\n | 204 | No Content |\n | 400 | Bad Request |\n | 401 | Unauthorized |\n | 403 | Forbidden |\n | 412 | Precondition Failed |\n | 415 | Unsupported Media Type |\n | 500 | Server Error |\n\n To view our error response structures, go [here](#tag/Error-Response).\n\n## Versioning [Beta]\n\n### Harness Version\n The current version of our Beta APIs is yet to be announced. The version number will use the date-header format and will be valid only for our Beta APIs.\n\n### Generation\n All our beta APIs are versioned as a Generation, and this version is included in the path to every API resource. For example, v1 beta APIs begin with `app.harness.io/v1/`, where v1 is the API Generation.\n\n The version number represents the core API and does not change frequently. The version number changes only if there is a significant departure from the basic underpinnings of the existing API. For example, when Harness performs a system-wide refactoring of core concepts or resources.\n\n## Pagination [Beta]\n\nWe use pagination to place limits on the number of responses associated with list endpoints. Pagination is achieved by the use of limit query parameters. The limit defaults to 30. Its maximum value is 100.\n\nFollowing are the pagination headers supported in the response bodies of paginated APIs:\n 1. X-Total-Elements : Indicates the total number of entries in a paginated response.\n 2. X-Page-Number : Indicates the page number currently returned for a paginated response.\n 3. X-Page-Size : Indicates the number of entries per page for a paginated response.\n\nFor example:\n\n ```\nX-Total-Elements : 30\nX-Page-Number : 0\nX-Page-Size : 10\n ```\n", + "contact": { + "name": "API Support", + "email": "contact@harness.io", + "url": "https://harness.io/" + }, + "x-logo": { + "url": "https://mma.prnewswire.com/media/779232/Harnes_logo_horizontal.jpg?p=facebook", + "altText": "Harness" + }, + "termsOfService": "https://harness.io/terms-of-use/" + }, + "servers": [ + { + "url": "https://app.harness.io", + "description": "Harness host URL" + }, + { + "url": "https://{vanity}", + "description": "Vanity URL", + "variables": { + "vanity": { + "default": "app.harness.io" + } + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + { + "name": "Governance Status", + "description": "\n" + }, + { + "name": "Policy", + "description": "\n" + }, + { + "name": "Policy Set", + "description": "\n" + }, + { + "name": "Governance Metadata", + "description": "\n", + "x-displayName": "Governance Metadata [Beta]" + }, + { + "name": "Test Error Metadata", + "description": "\n" + }, + { + "name": "Error Metadata", + "description": "\n" + }, + { + "name": "Field Error", + "description": "\n" + }, + { + "name": "Error Response", + "description": "\n", + "x-displayName": "Error Response [Beta]" + }, + { + "name": "Account Roles", + "description": "This contains APIs for Account-scoped Roles.", + "x-displayName": "Account Roles [Beta]" + }, + { + "name": "Organization Roles", + "description": "This contains APIs for Organization-scoped Roles.", + "x-displayName": "Organization Roles [Beta]" + }, + { + "name": "Project Roles", + "description": "This contains APIs for Project-scoped Roles.", + "x-displayName": "Project Roles [Beta]" + }, + { + "name": "Account Role Assignments", + "description": "This contains APIs for Account-scoped Role Assignments.", + "x-displayName": "Account Role Assignments [Beta]" + }, + { + "name": "Org Role Assignments", + "description": "This contains APIs for Organization-scoped Role Assignments.", + "x-displayName": "Organization Role Assignments [Beta]" + }, + { + "name": "Project Role Assignments", + "description": "This contains APIs for Project-scoped Role Assignments.", + "x-displayName": "Project Role Assignments [Beta]" + }, + { + "name": "Organization", + "description": "Create and manage organizations in your account. You use organizations to group together related projects. For example, you can use an organization to group together projects within a business unit or division." + }, + { + "name": "Org Project", + "description": "This contains APIs for projects.", + "x-displayName": "Project [Beta]" + }, + { + "name": "Account Secret", + "description": "This contains APIs for account-scoped secrets.", + "x-displayName": "Account Secrets [Beta]" + }, + { + "name": "Org Secret", + "description": "This contains APIs for organization-scoped secrets.", + "x-displayName": "Organization Secrets [Beta]" + }, + { + "name": "Project Secret", + "description": "This contains APIs for project-scoped secrets.", + "x-displayName": "Project Secrets [Beta]" + }, + { + "name": "Account Services", + "description": "This contains APIs for account-scoped services.", + "x-displayName": "Account Services [Beta]" + }, + { + "name": "Org Services", + "description": "This contains APIs for organization-scoped services.", + "x-displayName": "Organization Services [Beta]" + }, + { + "name": "Project Services", + "description": "This contains APIs for project-scoped services.", + "x-displayName": "Project Services [Beta]" + }, + { + "name": "Project Environments", + "description": "This contains APIs for project-scoped environments.", + "x-displayName": "Project Environments [Beta]" + }, + { + "name": "Account Favorites", + "description": "This contains APIs for account-scoped Favorites.", + "x-displayName": "Account Favorites [Beta]" + }, + { + "name": "Org Favorites", + "description": "This contains APIs for organization-scoped Favorites.", + "x-displayName": "Organization Favorites [Beta]" + }, + { + "name": "Project Favorites", + "description": "This contains APIs for project-scoped Favorites.", + "x-displayName": "Project Favorites [Beta]" + }, + { + "name": "Account Rancher Infrastructure", + "description": "This contains APIs for Rancher infra entities for account level.", + "x-displayName": "Account Rancher Infrastructure [Beta]" + }, + { + "name": "Org Rancher Infrastructure", + "description": "This contains APIs for Rancher infra entities for org level.", + "x-displayName": "Org Rancher Infrastructure [Beta]" + }, + { + "name": "Project Rancher Infrastructure", + "description": "This contains APIs for Rancher infra entities for project level.", + "x-displayName": "Project Rancher Infrastructure [Beta]" + }, + { + "name": "K8s Release Service Mapping", + "description": "This contains APIs for Fetching Release details regarding a pod.", + "x-displayName": "K8s Release Service Mapping [Beta]" + }, + { + "name": "EULA", + "description": "This contains APIs for EULA.", + "x-displayName": "EULA [Beta]" + }, + { + "name": "Account Certificate", + "description": "This contains APIs for account-scoped Certificates", + "x-displayName": "Account Certificates [Beta]" + }, + { + "name": "Org Certificate", + "description": "This contains APIs for organization-scoped Certificates", + "x-displayName": "Org Certificates [Beta]" + }, + { + "name": "Project Certificate", + "description": "This contains APIs for project-scoped Certificates", + "x-displayName": "Project Certificates [Beta]" + }, + { + "name": "IP Allowlist", + "description": "This contains APIs for IP Allowlist.", + "x-displayName": "IP Allowlist [Beta]" + }, + { + "name": "GitX Webhooks", + "description": "This contains APIs for Account GitX Webhooks.", + "x-displayName": "Account GitX Webhooks" + }, + { + "name": "Org GitX Webhooks", + "description": "This contains APIs for Org GitX Webhooks.", + "x-displayName": "Org GitX Webhooks" + }, + { + "name": "Project GitX Webhooks", + "description": "This contains APIs for Project GitX Webhooks.", + "x-displayName": "Project GitX Webhooks" + }, + { + "name": "Gitx Webhooks Events", + "description": "This contains APIs for Account Gitx Webhooks Events.", + "x-displayName": "Account Gitx Webhooks Events" + }, + { + "name": "Org Gitx Webhooks Events", + "description": "This contains APIs for Org Gitx Webhooks Events.", + "x-displayName": "Org Gitx Webhooks Events" + }, + { + "name": "Project Gitx Webhooks Events", + "description": "This contains APIs for Project Gitx Webhooks Events.", + "x-displayName": "Project Gitx Webhooks Events" + }, + { + "name": "Account Webhooks", + "description": "This contains APIs for Account Webhooks.", + "x-displayName": "Account Webhooks" + }, + { + "name": "Org Webhooks", + "description": "This contains APIs for Org Webhooks.", + "x-displayName": "Org Webhooks" + }, + { + "name": "Project Webhooks", + "description": "This contains APIs for Project Webhooks.", + "x-displayName": "Project Webhooks" + }, + { + "name": "Account Banner", + "description": "This contains APIs for Account Banners.", + "x-displayName": "Account Banner" + }, + { + "name": "Account Licensed Modules", + "description": "This contains APIs for Account Licensed Modules.", + "x-displayName": "Account Licensed Modules" + }, + { + "name": "Account Connector", + "description": "This contains APIs for Account-scoped Connectors.", + "x-displayName": "Account Connectors [Beta]" + }, + { + "name": "Org Connector", + "description": "This contains APIs for Organization-scoped Connectors.", + "x-displayName": "Organization Connectors [Beta]" + }, + { + "name": "Project Connector", + "description": "This contains APIs for Project-scoped Connectors.", + "x-displayName": "Project Connectors [Beta]" + }, + { + "name": "Account Resource Groups", + "description": "This contains APIs for Account-scoped Resource Groups.", + "x-displayName": "Account Resource Groups [Beta]" + }, + { + "name": "Organization Resource Groups", + "description": "This contains APIs for Organization-scoped Resource Groups.", + "x-displayName": "Organization Resource Groups [Beta]" + }, + { + "name": "Project Resource Groups", + "description": "This contains APIs for Project-scoped Resource Groups.", + "x-displayName": "Project Resource Groups [Beta]" + }, + { + "name": "Filter Resource Groups", + "description": "This contains the filter endpoint for Resource Groups.", + "x-displayName": "Filter Resource Groups [Beta]" + }, + { + "name": "Streaming Destinations", + "description": "This contains APIs for Streaming Destinations." + }, + { + "name": "Notification Channels", + "description": "This contains APIs for Notification Channels" + }, + { + "name": "Notification Rules", + "description": "This contains APIs for Notification Rules" + }, + { + "name": "Notification Attachments", + "description": "This contains APIs for Notification Attachments" + }, + { + "name": "Pipelines", + "description": "This contains APIs for performing CRUD operations on Pipelines.", + "x-displayName": "Pipelines [Beta]" + }, + { + "name": "Input Sets", + "description": "This contains APIs for Input Sets.", + "x-displayName": "Input Sets [Beta]" + }, + { + "name": "Approvals", + "description": "This contains APIs for Approvals.", + "x-displayName": "Approvals" + }, + { + "name": "Pipeline Execution", + "description": "This contains APIs for Pipeline Execution.", + "x-displayName": "Pipeline Execution [Beta]" + }, + { + "name": "Triggers", + "description": "This contains APIs for performing CRUD operations on Triggers.", + "x-displayName": "Triggers [Beta]" + }, + { + "name": "Steps", + "description": "This contains APIs for Steps.", + "x-displayName": "Steps [Beta]" + }, + { + "name": "Schemas", + "description": "This contains APIs for Schemas.", + "x-displayName": "Schemas [Beta]" + }, + { + "name": "Account Template", + "description": "This contains APIs for Account-scoped Templates.", + "x-displayName": "Account Templates [Beta]" + }, + { + "name": "Org Template", + "description": "This contains APIs for Organization-scoped Templates.", + "x-displayName": "Organization Templates [Beta]" + }, + { + "name": "Project Template", + "description": "This contains APIs for Project-scoped Templates.", + "x-displayName": "Project Templates [Beta]" + }, + { + "name": "AccountInfo", + "description": "Account Information", + "x-displayName": "Account Information" + }, + { + "name": "AllowList", + "description": "Backstage Allow List", + "x-displayName": "Backstage Allow List" + }, + { + "name": "AppConfig", + "description": "IDP App Configurations", + "x-displayName": "IDP App Configurations" + }, + { + "name": "AuthInfo", + "description": "IDP app Auth Information", + "x-displayName": "IDP app Auth Information" + }, + { + "name": "BackstageEnvVariable", + "description": "Backstage Environment Variable", + "x-displayName": "Backstage Environment Variable" + }, + { + "name": "BackstagePermissions", + "description": "Backstage Permissions", + "x-displayName": "Backstage Permissions" + }, + { + "name": "ConnectorInfo", + "description": "Connector Information", + "x-displayName": "Connector Information" + }, + { + "name": "CatalogCustomProperties", + "description": "Catalog Custom Properties", + "x-displayName": "Catalog Custom Properties" + }, + { + "name": "DataSource", + "description": "DataSource Information", + "x-displayName": "DataSource Information" + }, + { + "name": "HarnessDataPoints", + "description": "Harness DataPoints Information", + "x-displayName": "Harness DataPoints Information" + }, + { + "name": "KubernetesDataPoints", + "description": "Kubernetes DataPoints Information", + "x-displayName": "Kubernetes DataPoints Information" + }, + { + "name": "LayoutProxy", + "description": "Layout Proxy", + "x-displayName": "Layout Proxy" + }, + { + "name": "LicenseUsageResource", + "description": "License Usage Resource", + "x-displayName": "License Usage Resource" + }, + { + "name": "MergedPluginsConfig", + "description": "Merged Plugins Configurations", + "x-displayName": "Merged Plugins Configurations" + }, + { + "name": "Namespace", + "description": "Backstage Namespace", + "x-displayName": "Backstage Namespace" + }, + { + "name": "OnboardingResource", + "description": "Onboarding", + "x-displayName": "Onboarding" + }, + { + "name": "PluginInfo", + "description": "Plugin Information", + "x-displayName": "Plugin Information" + }, + { + "name": "Provision", + "description": "Provision", + "x-displayName": "Provision" + }, + { + "name": "Scores", + "description": "Scores Information", + "x-displayName": "Scores Information" + }, + { + "name": "ScoresV2", + "description": "Scores Information V2", + "x-displayName": "Scores Information V2" + }, + { + "name": "StatusInfo", + "description": "Status Information", + "x-displayName": "Status Information" + }, + { + "name": "BackstageHarness", + "description": "Backstage Harness", + "x-displayName": "Backstage Harness" + }, + { + "name": "Groups", + "description": "Groups", + "x-displayName": "Groups" + }, + { + "name": "HomePageLayout", + "description": "Home Page Layout", + "x-displayName": "Home Page Layout" + }, + { + "name": "Entities", + "description": "APIs for managing catalog Entities which represent the core components of your system. Entities can represent services, APIs, user groups, resources, and more. These endpoints allow you to create, retrieve, update, delete, and query entities across different scopes.", + "x-displayName": "Entities" + }, + { + "name": "Accounts", + "description": "This contains APIs related to accounts as defined in Harness" + }, + { + "name": "EnvironmentGroup", + "description": "This contains APIs related to EnvironmentGroup." + }, + { + "name": "Usage", + "description": "This contains APIs specific to CD license usage" + }, + { + "name": "Connectors", + "description": "This contains APIs related to Connectors as defined in Harness" + }, + { + "name": "GoogleSecretManagerConnector", + "description": "This contains APIs specific to Google Secret Manager Connector as defined in Harness" + }, + { + "name": "File Store", + "description": "This contains APIs related to File Store in Harness" + }, + { + "name": "Filter", + "description": "This contains APIs related to Filter as defined in Harness" + }, + { + "name": "Git Branches", + "description": "Contains APIs related to Git Sync Branch" + }, + { + "name": "Git Full Sync", + "description": "Contains APIs related to Git Full Sync" + }, + { + "name": "Git Sync Settings", + "description": "Contains APIs related to Git Sync Settings" + }, + { + "name": "SCM", + "description": "Contains APIs related to Scm" + }, + { + "name": "User Source Code Manager", + "description": "Contains APIs related to User Source Code Manager" + }, + { + "name": "Git Sync", + "description": "Contains APIs for CRUD on Git Sync" + }, + { + "name": "Git Sync Errors", + "description": "Contains APIs related to Git Sync Errors" + }, + { + "name": "Nextgen Ldap", + "description": "This contains APIs related to Nextgen Ldap as defined in Harness" + }, + { + "name": "Authentication Settings", + "description": "This contains APIs related to Authentication settings as defined in Harness" + }, + { + "name": "AccountSetting", + "description": "This contains APIs related to Account Settings as defined in Harness" + }, + { + "name": "Agent mTLS Endpoint Management", + "description": "Contains APIs related to Agent mTLS Endpoint management." + }, + { + "name": "CustomDeployment", + "description": "This contains APIs related to Custom Deployment" + }, + { + "name": "Delegate Download Resource", + "description": "Contains APIs related to Downloading Delegates" + }, + { + "name": "Delegate Group Tags Resource", + "description": "Contains APIs related to Delegate Group Tags management" + }, + { + "name": "Delegate Setup Resource", + "description": "Contains Delegate Setup APIs" + }, + { + "name": "Delegate Token Resource", + "description": "Contains APIs related to Delegate Token management" + }, + { + "name": "Environments", + "description": "This contains APIs related to Environments" + }, + { + "name": "Infrastructures", + "description": "This contains APIs related to Infrastructure Definitions" + }, + { + "name": "Invite", + "description": "This contains APIs related to Invite as defined in Harness" + }, + { + "name": "Oidc-Access-Token", + "description": "This contains APIs related to OIDC Access Token generation as defined in Harness" + }, + { + "name": "Oidc-ID-Token", + "description": "This contains APIs related to OIDC ID Token generation as defined in Harness" + }, + { + "name": "OIDC", + "description": "This contains APIs related to the Harness OIDC config" + }, + { + "name": "Provider", + "description": "This contains APIs related to Provider" + }, + { + "name": "ApiKey", + "description": "This fetches API keys defined in Harness" + }, + { + "name": "ValidateHost", + "description": "This contains APIs related to SSH or WinRm host validation" + }, + { + "name": "Hosts", + "description": "This contains APIs related to Hosts as defined in Harness" + }, + { + "name": "Secret Managers", + "description": "This contains APIs related to SecretManagers as defined in Harness" + }, + { + "name": "Secrets", + "description": "This contains APIs related to Secrets as defined in Harness" + }, + { + "name": "Project", + "description": "This contains APIs related to Project as defined in Harness" + }, + { + "name": "Token", + "description": "This contains APIs related to Token as defined in Harness" + }, + { + "name": "User Group", + "description": "This contains APIs related to User Group as defined in Harness" + }, + { + "name": "Services", + "description": "This contains APIs related to Services" + }, + { + "name": "Overrides", + "description": "This contains APIs related to Overrides" + }, + { + "name": "ServiceOverrides", + "description": "This contains APIs related to Service Overrides V2" + }, + { + "name": "SMTP", + "description": "This contains APIs related to SmtpConfig as defined in Harness" + }, + { + "name": "tas", + "description": "This contains APIs related to tas" + }, + { + "name": "User", + "description": "This contains APIs related to User as defined in Harness" + }, + { + "name": "Variables", + "description": "This contains APIs related to Variables as defined in Harness." + }, + { + "name": "Freeze CRUD", + "description": "This contains APIs related to Freeze CRUD" + }, + { + "name": "Freeze Evaluation", + "description": "This contains APIs related to evaluation Freeze status" + }, + { + "name": "Freeze Schema", + "description": "This contains APIs related to construct schema for Freeze" + }, + { + "name": "Clusters", + "description": "This contains APIs related to Gitops Clusters" + }, + { + "name": "GitOps", + "description": "APIs related to GitOps resources" + }, + { + "name": "Service Dashboard", + "description": "This contains APIs related to Service Dashboard" + }, + { + "name": "Rollback", + "description": "This contains APIs related to Post Prod Rollback of specific service" + }, + { + "name": "Service Account", + "description": "This has all the APIs specific to the Service Accounts in Harness." + }, + { + "name": "Canny", + "description": "This contains APIs required for the creation of Canny tickets" + }, + { + "name": "Tunneling", + "description": "This contains APIs related to tunneling" + }, + { + "name": "Source Code Manager", + "description": "Contains APIs related to Source Code Manager" + }, + { + "name": "Webhook Event Handler", + "description": "Contains APIs corresponding to Webhook Triggers." + }, + { + "name": "Setting", + "description": "This contains APIs related to Settings as defined in Harness" + }, + { + "name": "UserSetting", + "description": "This contains APIs related to User Settings as defined in Harness" + }, + { + "name": "TriggersEvents", + "description": "This contains APIs related to Trigger Event History." + }, + { + "name": "Webhook Triggers", + "description": "This contains APIs related to Webhook Triggers." + }, + { + "name": "Pipeline Dashboard", + "description": "This contains APIs related to Pipeline Dashboard" + }, + { + "name": "Pipeline data retention", + "description": "This contains APIs related to retention of pipeline execution data" + }, + { + "name": "Pipeline", + "description": "This contains pipeline APIs for files as provided as runtime input during pipeline execution" + }, + { + "name": "Pipeline Input Set", + "description": "This contains APIs related to Input Sets" + }, + { + "name": "Pipeline Execution Details", + "description": "This contains APIs for fetching Pipeline Execution Details" + }, + { + "name": "Pipeline Execute", + "description": "This contains APIs for Executing a Pipeline" + }, + { + "name": "Pipeline Refresh", + "description": "This contains APIs related to validation of templates in pipeline yaml" + }, + { + "name": "Access Control List", + "description": "This contains the APIs to perform access control checks" + }, + { + "name": "Permissions", + "description": "This contains the APIs related to permissions" + }, + { + "name": "Role Assignments", + "description": "This contains APIs for CRUD on role assignments" + }, + { + "name": "Roles", + "description": "This contains APIs for CRUD on roles" + }, + { + "name": "Harness Resource Type", + "description": "This contains APIs related to Harness Resource Type" + }, + { + "name": "Zendesk", + "description": "This contains APIs specific to the creation of zendesk ticket" + }, + { + "name": "Harness Resource Group", + "description": "This contains APIs specific to the Harness Resource Group" + }, + { + "name": "Cloud Cost Anomalies", + "description": "Get details about any anomalous spike in your cloud costs" + }, + { + "name": "Cloud Cost BI Dashboards", + "description": "Get details of BI-dashboards specific to CCM" + }, + { + "name": "Cloud Cost Budget Groups", + "description": "Manage Budget Groups and receive alerts when your costs exceed (or are forecasted to exceed) your configured budget group." + }, + { + "name": "Cloud Cost Budgets", + "description": "Manage Budgets and receive alerts when your costs exceed (or are forecasted to exceed) your budget." + }, + { + "name": "Cloud Cost Cost Categories", + "description": "Allows you to categorize based on business requirements and get a contextual view of your expenses." + }, + { + "name": "Cloud Cost K8S Connectors Metadata", + "description": "Health related metadata for your k8S clusters having cost access enabled." + }, + { + "name": "Cloud Cost Notification Settings v2", + "description": "Set notification channels to get cloud cost anomaly alerts" + }, + { + "name": "Cloud Cost Overview", + "description": "Get overview of CCM features." + }, + { + "name": "Anomaly Comments", + "description": "APIs to manage anomaly comments" + }, + { + "name": "Cloud cost anomaly details", + "description": "Get resource level insights into your cloud cost anomalies" + }, + { + "name": "Cloud cost anomalies v2", + "description": "Get details about any anomalies in your cloud costs" + }, + { + "name": "Cloud Cost Details", + "description": "Fetch cloud cost data for cost analysis" + }, + { + "name": "Cloud Cost Currency Preferences", + "description": "Select destination currency to view different cloud provider currencies in destination currency" + }, + { + "name": "External Data Provider", + "description": "This contains APIs related to External Data Provider Support for CCM" + }, + { + "name": "AiEngine", + "description": "This contains APIs related to Generative AI Support for Governance " + }, + { + "name": "Governance Enforcement Recommendation APIs", + "description": "This contains APIs related to CCM Governance Enforcement Recommendations" + }, + { + "name": "Governance Alert", + "description": "This contains APIs related to Governance Alert Management" + }, + { + "name": "Governance Overview", + "description": "This contains APIs related to CCM Governance Overview Page" + }, + { + "name": "Governance Recommendation APIs", + "description": "This contains APIs related to CCM Governance Recommendations" + }, + { + "name": "RuleEnforcement", + "description": "This contains APIs related to Rule Enforcement " + }, + { + "name": "Rule Executions", + "description": "This contains APIs related to Rule Executions" + }, + { + "name": "Rule", + "description": "This contains APIs related to Governance Rule Management" + }, + { + "name": "Rule Sets", + "description": "Rule sets serve as logical bindings on top of individual rules that help you organize and manage rules." + }, + { + "name": "Cloud Cost Perspectives Folders", + "description": "Group your Perspectives using Folders in ways that are more meaningful to your business needs." + }, + { + "name": "Cloud Cost Perspective Reports", + "description": "Manage cost reports created on Perspectives." + }, + { + "name": "Cloud Cost Perspectives", + "description": "Group your resources using Perspectives in ways that are more meaningful to your business needs." + }, + { + "name": "Cloud Cost Recommendations Details", + "description": "Cloud Cost Recommendations details for workloads and node pools." + }, + { + "name": "Cloud Cost Recommendations", + "description": "Recommendations for workloads and node pools." + }, + { + "name": "Cloud Cost Recommendation Jira", + "description": "Cloud Cost recommendation CRUD apis for jira." + }, + { + "name": "Cloud Cost Recommendation Preferences", + "description": "Cloud Cost recommendation apis for recommendations preferences." + }, + { + "name": "Cloud Cost Recommendation Presets", + "description": "Cloud Cost recommendation apis for recommendations presets." + }, + { + "name": "Cloud Cost Recommendation Servicenow", + "description": "Cloud Cost recommendation CRUD apis for servicenow." + }, + { + "name": "Cloud Cost Recommendation Tags", + "description": "Cloud Cost recommendation apis for recommendations tags." + }, + { + "name": "Cloud Cost Recommendation Ignore List", + "description": "Cloud Cost recommendation CRUD apis for recommendations ignore list." + }, + { + "description": "APIs to create and manage Feature Flag SDK API Keys", + "name": "API Keys" + }, + { + "description": "APIs to create and manage Feature Flags", + "name": "Feature Flags" + }, + { + "description": "APIs to create and manage Feature Flag Targets", + "name": "Targets" + }, + { + "description": "APIs to create and manage Feature Flag Target Groups", + "name": "Target Groups" + }, + { + "description": "APIs to create and manage Feature Flag Tags", + "name": "Tags" + }, + { + "description": "APIs used by the ff-proxy", + "name": "Proxy" + }, + { + "description": "APIs to create and manage Feature Flag Environment perspectives", + "name": "Environment Perspectives" + }, + { + "description": "APIs to manage Anomalies on the Feature Flag Service", + "name": "Anomalies" + }, + { + "description": "APIS to create and manage Target Group Attributes", + "name": "Attributes" + }, + { + "name": "Cloud Cost AutoStopping Rules", + "description": "This contains APIs to create and manage AutoStopping Rules for your cloud resources." + }, + { + "name": "Cloud Cost AutoStopping Rules V2", + "description": "This contains Autostopping v2 APIs that support the usage of Autostopping Proxy for managing cloud resources." + }, + { + "name": "Cloud Cost AutoStopping Load Balancers", + "description": "This contains APIs to create and manage load balancers used for AutoStopping." + }, + { + "name": "Cloud Cost AutoStopping Fixed Schedules", + "description": "This contains APIs to manage fixed schedules for the AutoStopping Rules." + }, + { + "name": "Cloud Cost Cluster Orchestrator", + "description": "This contains APIs to onboard and manage Cluster Orchestrator for Kubernetes" + }, + { + "name": "Commitment Orchestrator Events APIs", + "description": "This contains APIs to fetch commitment orchestrator events data." + }, + { + "name": "AuditFilters", + "description": "This contains APIs related to Filter of type Audit as defined in Harness" + }, + { + "name": "Audit", + "description": "This contains APIs related to Audit as defined in Harness" + }, + { + "name": "AuditYaml", + "description": "This contains APIs related to Audit Yaml as defined in Harness" + }, + { + "name": "Global Templates", + "description": "This contains a list of APIs specific to the Global Templates" + }, + { + "name": "Templates", + "description": "This contains a list of APIs specific to the Templates Validations and Refresh" + }, + { + "name": "Template Schemas", + "description": "This contains a list of APIs specific to the Template Schemas" + }, + { + "name": "Monitored Services", + "description": "This contains APIs related to CRUD operations of Monitored Services" + }, + { + "name": "Downtime", + "description": "This contains APIs related to CRUD operations of Downtime" + }, + { + "name": "Srm Notification", + "description": "This contains APIs related to CRUD operations of srm notifications" + }, + { + "name": "SLOs dashboard", + "description": "This contains APIs related to SLOs dashboard" + }, + { + "name": "NG SLOs", + "description": "This contains APIs related to CRUD operations of SLOs (simple & composite)" + }, + { + "name": "SLOs", + "description": "This contains APIs related to CRUD operations of SLOs" + }, + { + "name": "aida", + "description": "AIDA API's for Harness OPA" + }, + { + "name": "dashboard", + "description": "Aggregate summary of policies, policy sets and evaluations for display on the dashboard" + }, + { + "name": "examples", + "description": "Example rego policies and corresponding input" + }, + { + "name": "policies", + "description": "Create, edit and delete Governance policies written in rego" + }, + { + "name": "evaluate", + "description": "Perform evaluations" + }, + { + "name": "evaluations", + "description": "Access evaluation results" + }, + { + "name": "policysets", + "description": "Create, edit and delete Governance policy sets" + }, + { + "name": "system", + "description": "System version and health" + }, + { + "description": "APIs to create, update, list registries", + "name": "Registries" + }, + { + "description": "APIs to get, list artifacts", + "name": "Artifacts" + }, + { + "description": "APIs to get details of docker artifacts", + "name": "Docker Artifacts" + }, + { + "description": "APIs to get details of helm artifacts", + "name": "Helm Artifacts" + }, + { + "description": "APIs to create, update, list webhooks", + "name": "Webhooks" + }, + { + "name": "ansible", + "description": "Ansible Service handles the API for ansible entities." + }, + { + "name": "approvals", + "description": "Approval service handles the approval API to approve or reject pipeline executions" + }, + { + "name": "costs", + "description": "Costs Service handles the API related with the costs attached to workspaces.\nThis API is read only as all the cost are generated in the plugin side" + }, + { + "name": "module-registry", + "description": "The module-registry service is a private registry for Terraform/Opentofu modules" + }, + { + "name": "provider-registry", + "description": "The provider-registry service implements HashiCorp's Provider Registry Protocol for private Terraform providers" + }, + { + "name": "activities", + "description": "Activities Service handles the API for workspace activities" + }, + { + "name": "executions", + "description": "Executions Service handles the API for workflow executions.\n\nAt this time it is a read-only API with no ability to directly create or edit\nexecutions. Instead these are triggered from the Workspaces Service." + }, + { + "name": "settings", + "description": "Settings service handles all API endpoints related to configuration settings" + }, + { + "name": "tf-standard-backend", + "description": "HTTP standard backend for Terraform" + }, + { + "name": "unified-executions", + "description": "Unified Executions Service handles the API for unified workflow executions." + }, + { + "name": "usage", + "description": "Usage service handles licencing" + }, + { + "name": "variable_sets", + "description": "Variable Sets Service handles the API for managing variable sets assigned to workspaces." + }, + { + "name": "workspace_templates", + "description": "Workspace Templates Service handles the API for managing template associations with workspaces." + }, + { + "name": "workspaces", + "description": "Workspaces Service handles the API for managing workspaces\nand triggering workflows against them." + }, + { + "name": "variables", + "description": "Variables Service handles the API for managing workspace variables." + }, + { + "name": "Exemptions", + "description": "Access and modify Exemptions to Security Issues" + }, + { + "name": "Products", + "description": "Access Scan Tool information" + }, + { + "name": "Pull Requests", + "description": "Access and Modify Pull Requests" + }, + { + "name": "System", + "description": "Unauthenticated support endpoints" + }, + { + "name": "Target Variants", + "description": "Access and modify Scan Target Variants" + }, + { + "name": "Frontend", + "description": "Endpoints that power the STO micro-frontend" + }, + { + "name": "Issues", + "description": "Access and modify Security Issues" + }, + { + "name": "Scans", + "description": "Access and modify Security Test Scans" + }, + { + "name": "SSCA Frontend", + "description": "Endpoints that power the SSCA micro-frontend with STO data" + }, + { + "name": "Test Targets", + "description": "Access and modify Scan Targets" + }, + { + "name": "Reference Identifiers", + "description": "Reference Identifiers Lookup" + }, + { + "description": "This contains APIs for performing CRUD operations on Database Schema Entity", + "name": "Database Schema", + "x-displayName": "Database Schema" + }, + { + "description": "This contains APIs for getting Migration State of Database Schema Entity", + "name": "Migration State", + "x-displayName": "Migration State" + }, + { + "description": "This contains APIs for performing CRUD operations on Database Instance Entity", + "name": "Database Instance", + "x-displayName": "Database Instance" + }, + { + "description": "This contains APIs for creating and retrieving database migration log information", + "name": "Log Ingest", + "x-displayName": "Log Ingest" + }, + { + "description": "This contains APIs for Pipeline Plugin Inputs", + "name": "Pipeline Step", + "x-displayName": "Pipeline Step" + }, + { + "description": "This contains APIs for tracking changeSet deployment status", + "name": "Deployed State", + "x-displayName": "Deployed State" + }, + { + "description": "This contains APIs for execution config for image tags", + "name": "Execution Config", + "x-displayName": "Execution Config" + }, + { + "name": "Collection categories", + "description": "This contains APIs specific to the Collection categories" + }, + { + "name": "Collections", + "description": "This contains APIs specific to Collections" + }, + { + "name": "Contributors", + "description": "This contains APIs specific to the Contributors" + }, + { + "name": "DORA", + "description": "This contains APIs specific to the DORA reports" + }, + { + "name": "orchestration", + "description": "This contains APIs for SBOM.", + "x-displayName": "SBOM (SSCA)" + } + ], + "externalDocs": { + "description": "Find out more about Swagger", + "url": "http://swagger.io" + }, + "paths": { + "/v1/roles": { + "parameters": [], + "get": { + "summary": "List Roles", + "operationId": "list-roles-acc", + "description": "Returns a list of Roles present in the Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/RolesListResponse" + } + }, + "tags": [ + "Account Roles" + ] + }, + "post": { + "summary": "Create a Role", + "operationId": "create-role-acc", + "description": "Creates a custom Role in the Account scope.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateRoleRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Roles" + ] + } + }, + "/v1/public-access/enable": { + "parameters": [], + "post": { + "summary": "Enable Public Access for a Resource", + "operationId": "enable-public-access", + "description": "Enable Public Access for a Resource", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/PublicAccessRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/PublicAccessResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false, + "tags": [ + "Public Access" + ] + } + }, + "/v1/analyze-access-policies": { + "parameters": [], + "post": { + "summary": "Analyze access policies within account", + "operationId": "analyze-account-access-policies", + "description": "Analyze access policies within account", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/AccessPolicyAnalysisRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/AccessPolicyAnalysisResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false, + "tags": [ + "Analyze Account Access Policy" + ] + } + }, + "/v1/orgs/{org}/analyze-access-policies": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + } + ], + "post": { + "summary": "Analyze access policies within a organization", + "operationId": "analyze-org-access-policies", + "description": "Analyze access policies within a organization", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/AccessPolicyAnalysisRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/AccessPolicyAnalysisResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false, + "tags": [ + "Analyze Organization Access Policy" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/analyze-access-policies": { + "parameters": [ + { + "name": "org", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Organization identifier" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ], + "post": { + "summary": "Analyze access policies within a project", + "operationId": "analyze-project-access-policies", + "description": "Analyze access policies within a project", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/AccessPolicyAnalysisRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/AccessPolicyAnalysisResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false, + "tags": [ + "Analyze Project Access Policy" + ] + } + }, + "/v1/public-access/is-resource-public": { + "parameters": [] + }, + "/v1/public-access/check-public": { + "parameters": [] + }, + "/v1/public-access/disable": { + "parameters": [] + }, + "/v1/roles/{role}": { + "parameters": [ + { + "$ref": "#/components/parameters/RoleParam" + } + ], + "get": { + "summary": "Retrieve a Role", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "operationId": "get-role-acc", + "description": "Retrieves a Role from Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Roles" + ] + }, + "put": { + "summary": "Update a Role", + "operationId": "update-role-acc", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "description": "Updates a Role from Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateRoleRequest" + }, + "tags": [ + "Account Roles" + ] + }, + "delete": { + "summary": "Delete a Role", + "operationId": "delete-role-acc", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "description": "Deletes a custom Role from Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Roles" + ] + } + }, + "/v1/orgs/{org}/roles": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + } + ], + "get": { + "summary": "List Roles", + "tags": [ + "Organization Roles" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RolesListResponse" + } + }, + "operationId": "list-roles-org", + "description": "Returns a list of Roles present in the Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ] + }, + "post": { + "summary": "Create a Role", + "operationId": "create-role-org", + "responses": { + "201": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "description": "Creates a custom Role in the Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateRoleRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Organization Roles" + ] + } + }, + "/v1/orgs/{org}/roles/{role}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/RoleParam" + } + ], + "get": { + "summary": "Retrieve a Role", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "operationId": "get-role-org", + "description": "Retrieves a Role from Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Organization Roles" + ] + }, + "put": { + "summary": "Update a Role", + "operationId": "update-role-org", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "description": "Updates a Role from Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateRoleRequest" + }, + "tags": [ + "Organization Roles" + ] + }, + "delete": { + "summary": "Delete a Role", + "operationId": "delete-role-org", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "description": "Deletes a custom Role from Organization scope.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Organization Roles" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/roles": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ], + "get": { + "summary": "List Roles", + "responses": { + "200": { + "$ref": "#/components/responses/RolesListResponse" + } + }, + "operationId": "list-roles-project", + "description": "Returns a list of Roles present in the Project scope.", + "parameters": [ + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Roles" + ] + }, + "post": { + "summary": "Create a Role", + "operationId": "create-role-project", + "responses": { + "201": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "description": "Creates a custom Role in the Project scope.", + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateRoleRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Project Roles" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/roles/{role}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/RoleParam" + } + ], + "get": { + "summary": "Retrieve a Role", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "operationId": "get-role-project", + "security": [ + { + "x-api-key": [] + } + ], + "description": "Retrieves a Role from Project scope.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Project Roles" + ] + }, + "put": { + "summary": "Update a Role", + "operationId": "update-role-project", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateRoleRequest" + }, + "description": "Updates a Role from Project scope.", + "tags": [ + "Project Roles" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "delete": { + "summary": "Delete a Role", + "operationId": "delete-role-project", + "responses": { + "200": { + "$ref": "#/components/responses/RoleResponse" + } + }, + "description": "Deletes a custom Role from Project scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Project Roles" + ] + } + }, + "/v1/role-assignments": { + "get": { + "summary": "List role assignments", + "tags": [ + "Account Role Assignments" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentListResponse" + } + }, + "operationId": "get-account-scoped-role-assignments", + "description": "Retrieves the information of the role assignments", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "post": { + "summary": "Create a role assignment", + "operationId": "create-account-scoped-role-assignments", + "responses": { + "201": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "description": "Create a role assignment", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Role Assignments" + ], + "requestBody": { + "$ref": "#/components/requestBodies/RoleAssignmentRequest" + }, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/role-assignments/{role-assignment}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "role-assignment", + "in": "path", + "required": true, + "description": "Role assignment identifier" + } + ], + "get": { + "summary": "Retrieve a role assignment", + "tags": [ + "Account Role Assignments" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "operationId": "get-account-scoped-role-assignment", + "description": "Retrieves the information of the role assignment with the matching role assignment identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete a role assignment", + "operationId": "delete-account-scoped-role-assignment", + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "description": "Deletes the information of the role assignment with the matching role assignment identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Role Assignments" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/role-assignments": { + "get": { + "summary": "List role assignments", + "tags": [ + "Org Role Assignments" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentListResponse" + } + }, + "operationId": "get-org-scoped-role-assignments", + "description": "Retrieves the information of the role assignments", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "post": { + "summary": "Create a role assignment", + "operationId": "create-org-scoped-role-assignments", + "responses": { + "201": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "description": "Create a role assignment", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Role Assignments" + ], + "requestBody": { + "$ref": "#/components/requestBodies/RoleAssignmentRequest" + }, + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + } + ] + }, + "/v1/orgs/{org}/role-assignments/{role-assignment}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "role-assignment", + "in": "path", + "required": true, + "description": "Role assignment identifier" + }, + { + "$ref": "#/components/parameters/OrgParam" + } + ], + "get": { + "summary": "Retrieve a role assignment", + "tags": [ + "Org Role Assignments" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "operationId": "get-org-scoped-role-assignment", + "description": "Retrieves the information of the role assignment with the matching role assignment identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete a role assignment", + "operationId": "delete-org-scoped-role-assignment", + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "description": "Deletes the information of the role assignment with the matching role assignment identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Role Assignments" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/role-assignments": { + "get": { + "summary": "List role assignments", + "tags": [ + "Project Role Assignments" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentListResponse" + } + }, + "operationId": "get-project-scoped-role-assignments", + "description": "Retrieves the information of the role assignments", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "post": { + "summary": "Create a role assignment", + "operationId": "create-project-scoped-role-assignments", + "responses": { + "201": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "description": "Create a role assignment", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Project Role Assignments" + ], + "requestBody": { + "$ref": "#/components/requestBodies/RoleAssignmentRequest" + }, + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/role-assignments/{role-assignment}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "role-assignment", + "in": "path", + "required": true, + "description": "Role assignment identifier" + }, + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ], + "get": { + "summary": "Retrieve a role assignment", + "tags": [ + "Project Role Assignments" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "operationId": "get-project-scoped-role-assignment", + "description": "Retrieves the information of the role assignment with the matching role assignment identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete a role assignment", + "operationId": "delete-project-scoped-role-assignment", + "responses": { + "200": { + "$ref": "#/components/responses/RoleAssignmentResponse" + } + }, + "description": "Deletes the information of the role assignment with the matching role assignment identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Project Role Assignments" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/services/{service}": { + "get": { + "summary": "Retrieve a service", + "operationId": "get-service", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified service", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "tags": [ + "Project Services" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/ServicePathParam" + } + ], + "put": { + "summary": "Update Service", + "operationId": "update-service", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ServiceUpdateRequest" + }, + "description": "Updates the specified service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Services" + ] + }, + "delete": { + "summary": "Delete a Service", + "operationId": "delete-service", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested service.", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Services" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/services": { + "get": { + "summary": "List Services", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceListResponse" + } + }, + "operationId": "get-services", + "parameters": [ + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/ServiceIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list of services that you are permitted to use in a pipeline." + }, + { + "$ref": "#/components/parameters/DeploymentType" + }, + { + "schema": { + "type": "boolean" + }, + "name": "git_ops_enabled", + "in": "query", + "description": "Enables you to use the service in Harness GitOps PR pipelines." + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the services for which you have view permissions in the given project.", + "tags": [ + "Project Services" + ] + }, + "post": { + "summary": "Create a Service", + "operationId": "create-service", + "responses": { + "201": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ServiceCreateRequest" + }, + "description": "Creates a service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Services" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/orgs/{org}/services/{service}": { + "get": { + "summary": "Retrieve a service", + "operationId": "get-org-scoped-service", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified service", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "tags": [ + "Org Services" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ServicePathParam" + } + ], + "put": { + "summary": "Update Service", + "operationId": "update-org-scoped-service", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ServiceUpdateRequest" + }, + "description": "Updates the specified service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Services" + ] + }, + "delete": { + "summary": "Delete a service", + "operationId": "delete-org-scoped-service", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Services" + ] + } + }, + "/v1/orgs/{org}/services": { + "get": { + "summary": "List Services", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceListResponse" + } + }, + "operationId": "get-org-scoped-services", + "parameters": [ + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/ServiceIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list of services that you are permitted to use in a pipeline." + }, + { + "$ref": "#/components/parameters/DeploymentType" + }, + { + "schema": { + "type": "boolean" + }, + "name": "git_ops_enabled", + "in": "query", + "description": "Enables you to use the service in Harness GitOps PR pipelines." + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the services for which you have view permissions in the given project.", + "tags": [ + "Org Services" + ] + }, + "post": { + "summary": "Create a service", + "operationId": "create-org-scoped-service", + "responses": { + "201": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ServiceCreateRequest" + }, + "description": "Creates a service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Services" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/services/{service}": { + "get": { + "summary": "Retrieve a service", + "operationId": "get-account-scoped-service", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified service", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "tags": [ + "Account Services" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/ServicePathParam" + } + ], + "put": { + "summary": "Update service", + "operationId": "update-account-scoped-service", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ServiceUpdateRequest" + }, + "description": "Updates the specified service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Services" + ] + }, + "delete": { + "summary": "Delete a service", + "operationId": "delete-account-scoped-service", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Services" + ] + } + }, + "/v1/services": { + "get": { + "summary": "List services", + "responses": { + "200": { + "$ref": "#/components/responses/ServiceListResponse" + } + }, + "operationId": "get-account-scoped-services", + "parameters": [ + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/ServiceIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list of services that you are permitted to use in a pipeline." + }, + { + "$ref": "#/components/parameters/DeploymentType" + }, + { + "schema": { + "type": "boolean" + }, + "name": "git_ops_enabled", + "in": "query", + "description": "Enables you to use the service in Harness GitOps PR pipelines." + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the services for which you have view permissions in the given project.", + "tags": [ + "Account Services" + ] + }, + "post": { + "summary": "Create a service", + "operationId": "create-account-scoped-service", + "responses": { + "201": { + "$ref": "#/components/responses/ServiceResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ServiceCreateRequest" + }, + "description": "Creates a service", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Services" + ] + }, + "parameters": [] + }, + "/v1/creditOverUsage/{accountIdentifier}": { + "get": { + "summary": "Get over usage count of Credits for a given account", + "tags": [ + "Credits OverUsage Data By Account" + ], + "responses": { + "200": { + "$ref": "#/components/schemas/CreditOverUsage" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "operationId": "credits-overusage", + "x-internal": false, + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "required": true, + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ] + } + }, + "/v1/subscription/{accountIdentifier}": { + "get": { + "summary": "Retrieve type of licenses for an account", + "tags": [ + "Account License Type" + ], + "operationId": "get-license-type", + "responses": { + "200": { + "$ref": "#/components/schemas/LicenseTypeResponse" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "x-internal": false, + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "required": true, + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ] + } + }, + "/v1/subscription/devops/{accountIdentifier}": { + "get": { + "summary": "Get subscriptions information for the Devops Essentials package for an accountIdentifier.", + "tags": [ + "Devops Essentials License Data By Account" + ], + "responses": { + "200": { + "$ref": "#/components/schemas/DevopsEssentialsResponse" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + }, + "x-internal": false + }, + "operationId": "get-devops-essentials-license", + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "required": true, + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ] + } + }, + "/v1/orgs": { + "post": { + "summary": "Create an organization [Beta]", + "operationId": "create-organization", + "responses": { + "201": { + "$ref": "#/components/responses/OrganizationResponse" + } + }, + "description": "Creates a new organization.", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Organization" + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateOrganizationRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "get": { + "summary": "List organizations [Beta]", + "operationId": "get-organizations", + "responses": { + "200": { + "$ref": "#/components/responses/OrganizationListResponse" + } + }, + "description": "Retrieves the information of the organizations.", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Organization" + ], + "parameters": [ + { + "$ref": "#/components/parameters/OrgsQueryParam" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ] + }, + "parameters": [] + }, + "/v1/orgs/{org}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "org", + "in": "path", + "required": true, + "description": "Organization identifier" + } + ], + "get": { + "summary": "Retrieve an organization [Beta]", + "responses": { + "200": { + "$ref": "#/components/responses/OrganizationResponse" + } + }, + "operationId": "get-organization", + "description": "Retrieves the information of the organization with the matching organization identifier.", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Organization" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "put": { + "summary": "Update an organization [Beta]", + "operationId": "update-organization", + "responses": { + "200": { + "$ref": "#/components/responses/OrganizationResponse" + } + }, + "description": "Updates the information of the organization with the matching organization identifier.", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Organization" + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateOrganizationRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "delete": { + "summary": "Delete an organization [Beta]", + "operationId": "delete-organization", + "responses": { + "200": { + "$ref": "#/components/responses/OrganizationResponse" + } + }, + "description": "Deletes the information of the organization with the matching organization identifier.", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Organization" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/orgs/{org}/projects": { + "post": { + "summary": "Create a project", + "responses": { + "201": { + "$ref": "#/components/responses/ProjectResponse" + } + }, + "operationId": "create-org-scoped-project", + "security": [ + { + "x-api-key": [] + } + ], + "description": "Creates a new project", + "requestBody": { + "$ref": "#/components/requestBodies/CreateProjectRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Project" + ] + }, + "get": { + "summary": "List projects", + "responses": { + "200": { + "$ref": "#/components/responses/ProjectListResponse" + } + }, + "operationId": "get-org-scoped-projects", + "description": "Retrieves the information of the projects.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/ProjectsQueryParam" + }, + { + "schema": { + "type": "boolean", + "default": true + }, + "in": "query", + "name": "has_module", + "description": "This boolean specifies whether to filter projects which has the module of type passed in the moduleType parameter or not" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "module_type", + "description": "Project's module type" + }, + { + "$ref": "#/components/parameters/onlyFavorites" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "tags": [ + "Org Project" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}": { + "get": { + "summary": "Retrieve a project", + "responses": { + "200": { + "$ref": "#/components/responses/ProjectResponse" + } + }, + "operationId": "get-org-scoped-project", + "description": "Retrieves the information of the project with the matching project identifier.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Project" + ] + }, + "put": { + "summary": "Update a project", + "responses": { + "200": { + "$ref": "#/components/responses/ProjectResponse" + } + }, + "operationId": "update-org-scoped-project", + "description": "Updates the information of the project with the matching project identifier.", + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateProjectRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Project" + ] + }, + "delete": { + "summary": "Delete a project", + "responses": { + "200": { + "$ref": "#/components/responses/ProjectResponse" + } + }, + "operationId": "delete-org-scoped-project", + "description": "Deletes the information of the project with the matching project identifier.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Project" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/ip-allowlist": { + "post": { + "summary": "Create a IP Allowlist config", + "operationId": "create-ip-allowlist-config", + "responses": { + "201": { + "$ref": "#/components/responses/IPAllowlistConfigResponse" + } + }, + "description": "Creates a new IP Allowlist config", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/IPAllowlistConfigRequest" + }, + "tags": [ + "IP Allowlist" + ], + "x-internal": false + }, + "get": { + "summary": "List IP Allowlist Configs", + "operationId": "get-ip-allowlist-configs", + "responses": { + "200": { + "$ref": "#/components/responses/IPAllowlistConfigListResponse" + } + }, + "description": "Retrieves the information of the IP Allowlist Config", + "parameters": [ + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "description": "This is to filter IP allowlist configs only blocked from UI or API", + "name": "allowed_source_type" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "IP Allowlist" + ], + "x-internal": false + }, + "parameters": [] + }, + "/v1/ip-allowlist/{ip-config-identifier}": { + "get": { + "summary": "Retrieve a IP Allowlist config", + "operationId": "get-ip-allowlist-config", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified IP Allowlist config", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/IPAllowlistConfigResponse" + } + }, + "tags": [ + "IP Allowlist" + ], + "x-internal": false + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "ip-config-identifier", + "in": "path", + "required": true + } + ], + "put": { + "summary": "Update IP Allowlist config", + "operationId": "update-ip-allowlist-config", + "responses": { + "200": { + "$ref": "#/components/responses/IPAllowlistConfigResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/IPAllowlistConfigRequest" + }, + "description": "Updates the specified IP Allowlist config", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "IP Allowlist" + ], + "x-internal": false + }, + "delete": { + "summary": "Delete an IP Allowlist config", + "operationId": "delete-ip-allowlist-config", + "responses": { + "204": { + "description": "No Content" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Deletes the specified IP Allowlist config", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "IP Allowlist" + ], + "x-internal": false + } + }, + "/v1/ip-allowlist/validate-unique-identifier/{ip-config-identifier}": { + "get": { + "summary": "Validate unique IP Allowlist config identifier", + "operationId": "validate-unique-ip-allowlist-config-identifier", + "description": "Checks whether the IP Allowlist config identifier is unique or not", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "IP Allowlist" + ], + "x-internal": false, + "responses": { + "200": { + "$ref": "#/components/responses/IPAllowlistValidateUniqueIdentifierResponse" + } + } + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "ip-config-identifier", + "in": "path", + "required": true + } + ] + }, + "/v1/ip-allowlist/validate/ip-address": { + "get": { + "summary": "Validate IP address lies in a specified range or not", + "operationId": "validate-ip-address-allowlisted-or-not", + "responses": { + "200": { + "$ref": "#/components/responses/IPAllowlistConfigValidateResponse" + } + }, + "description": "Checks whether the IP address is allowed or not. It also supports checking against a specific IP block range.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "ip_address", + "description": "This is the IP address that needs to be checked if allowed or not", + "required": true + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "custom_ip_address_block", + "description": "This is the IP address or block of IP address against which we need to verify if a given IP address is allowed or not. If not passed we do the validation against the IP configs within Harness." + }, + { + "schema": { + "type": "boolean", + "default": false + }, + "in": "query", + "name": "include_disabled_configs", + "description": "This setting controls the visibility of IP allowlist configurations. When set to 'true', it displays both enabled and disabled configurations. When set to 'false' or left unset, it displays only the enabled configurations.", + "allowReserved": false + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "IP Allowlist" + ], + "x-internal": false + }, + "parameters": [] + }, + "/v1/ip-allowlist/allowed/ip-address": { + "parameters": [] + }, + "/v1/secrets": { + "post": { + "summary": "Create a secret", + "operationId": "create-account-scoped-secret", + "responses": { + "201": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Creates a new secret", + "parameters": [ + { + "$ref": "#/components/parameters/PrivateSecret" + }, + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SecretRequest" + }, + "tags": [ + "Account Secret" + ] + }, + "get": { + "summary": "List secrets", + "operationId": "get-account-scoped-secrets", + "responses": { + "200": { + "$ref": "#/components/responses/SecretListResponse" + } + }, + "description": "Retrieves the information of the secrets.", + "parameters": [ + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "secret", + "description": "Identifier field of secrets" + }, + { + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "SSHKeyPath", + "SSHKeyReference", + "SSHPassword", + "SSHKerberosTGTKeyTabFile", + "SSHKerberosTGTPassword", + "SecretFile", + "SecretText", + "WinRmTGTKeyTabFile", + "WinRmTGTPassword", + "WinRmNTLM" + ] + } + }, + "in": "query", + "name": "type", + "description": "Secret types on which the filter will be applied" + }, + { + "schema": { + "type": "boolean", + "default": false + }, + "in": "query", + "name": "recursive", + "description": "Expand current scope to include all child scopes " + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "tags": [ + "Account Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [] + }, + "/v1/secrets/validate-secret-ref": { + "post": { + "summary": "Validate secret reference", + "operationId": "validate-account-secret-ref", + "description": "Validates if the secret at the secretManager path can be referenced", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Secret" + ], + "requestBody": { + "$ref": "#/components/requestBodies/SecretValidationRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/SecretValidationResponse" + } + } + }, + "parameters": [] + }, + "/v1/orgs/{org}/secrets": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ], + "post": { + "summary": "Create a secret", + "operationId": "create-org-scoped-secret", + "responses": { + "201": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Creates a new secret", + "requestBody": { + "$ref": "#/components/requestBodies/SecretRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/PrivateSecret" + }, + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "get": { + "summary": "List secrets", + "operationId": "get-org-scoped-secrets", + "responses": { + "200": { + "$ref": "#/components/responses/SecretListResponse" + } + }, + "description": "Retrieves the information of the secrets.", + "parameters": [ + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "secret", + "description": "Identifier field of secrets" + }, + { + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "SSHKeyPath", + "SSHKeyReference", + "SSHPassword", + "SSHKerberosTGTKeyTabFile", + "SSHKerberosTGTPassword", + "SecretFile", + "SecretText", + "WinRmTGTKeyTabFile", + "WinRmTGTPassword", + "WinRmNTLM" + ] + } + }, + "in": "query", + "name": "type", + "description": "Secret types on which the filter will be applied" + }, + { + "schema": { + "type": "boolean", + "default": false + }, + "in": "query", + "name": "recursive", + "description": "Expand current scope to include all child scopes " + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "tags": [ + "Org Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/secrets/validate-secret-ref": { + "post": { + "summary": "Validate secret reference", + "operationId": "validate-org-secret-ref", + "description": "Validates if the secret at the secretManager path can be referenced", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SecretValidationRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/SecretValidationResponse" + } + }, + "tags": [ + "Org Secret" + ] + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "org", + "in": "path", + "required": true, + "description": "Identifier field of the organization the resource is scoped to" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/secrets": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ], + "post": { + "summary": "Create a secret", + "operationId": "create-project-scoped-secret", + "responses": { + "201": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Creates a new secret", + "requestBody": { + "$ref": "#/components/requestBodies/SecretRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/PrivateSecret" + }, + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Project Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "get": { + "summary": "List secrets", + "operationId": "get-project-scoped-secrets", + "responses": { + "200": { + "$ref": "#/components/responses/SecretListResponse" + } + }, + "description": "Retrieves the information of the secrets.", + "parameters": [ + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "secret", + "description": "Identifier field of secrets" + }, + { + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "SSHKeyPath", + "SSHKeyReference", + "SSHPassword", + "SSHKerberosTGTKeyTabFile", + "SSHKerberosTGTPassword", + "SecretFile", + "SecretText", + "WinRmTGTKeyTabFile", + "WinRmTGTPassword", + "WinRmNTLM" + ] + } + }, + "in": "query", + "name": "type", + "description": "Secret types on which the filter will be applied" + }, + { + "schema": { + "type": "boolean", + "default": false + }, + "in": "query", + "name": "recursive", + "description": "Expand current scope to include all child scopes " + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "tags": [ + "Project Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/secrets/validate-secret-ref": { + "post": { + "summary": "Validate secret reference", + "operationId": "validate-project-secret-ref", + "description": "Validates if the secret at the secretManager path can be referenced", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SecretValidationRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/SecretValidationResponse" + } + }, + "tags": [ + "Project Secret" + ] + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "org", + "in": "path", + "required": true, + "description": "Identifier field of the organization the resource is scoped to" + }, + { + "schema": { + "type": "string" + }, + "name": "project", + "in": "path", + "required": true, + "description": "Identifier field of the project to which the resource is scoped." + } + ] + }, + "/v1/secrets/{secret}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "secret", + "in": "path", + "required": true, + "description": "Identifier field of the secret" + } + ], + "get": { + "summary": "Retrieve a secret", + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "operationId": "get-account-scoped-secret", + "description": "Retrieves the information of the secret.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Deletes a secret", + "tags": [ + "Account Secret" + ], + "operationId": "delete-account-scoped-secret", + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Deletes the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "put": { + "summary": "Update a secret", + "operationId": "update-account-scoped-secret", + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Updates the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Secret" + ], + "requestBody": { + "$ref": "#/components/requestBodies/SecretRequest" + }, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/secrets/{secret}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "secret", + "in": "path", + "required": true, + "description": "Identifier field of the secret" + } + ], + "get": { + "summary": "Retrieve a secret", + "tags": [ + "Org Secret" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "operationId": "get-org-scoped-secret", + "description": "Retrieves the information of the secret.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete a secret", + "tags": [ + "Org Secret" + ], + "operationId": "delete-org-scoped-secret", + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Deletes the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "put": { + "summary": "Update a secret", + "operationId": "update-org-scoped-secret", + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Updates the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SecretRequest" + }, + "tags": [ + "Org Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/secrets/{secret}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "secret", + "in": "path", + "required": true, + "description": "Identifier field of the secret" + } + ], + "get": { + "summary": "Retrieve a secret", + "tags": [ + "Project Secret" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "operationId": "get-project-scoped-secret", + "description": "Retrieves the information of the secret.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete a secret", + "tags": [ + "Project Secret" + ], + "operationId": "delete-project-scoped-secret", + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Deletes the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "put": { + "summary": "Update a secret", + "operationId": "update-project-scoped-secret", + "responses": { + "200": { + "$ref": "#/components/responses/SecretResponse" + } + }, + "description": "Updates the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SecretRequest" + }, + "tags": [ + "Project Secret" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/favorites/{user-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/UserIdPathParam" + } + ] + }, + "/v1/orgs/{org}/favorites": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/orgs/{org}/favorites/{user-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/UserIdPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/favorites": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/favorites/{user-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/UserIdPathParam" + } + ] + }, + "/v1/rancher/connectors/{connector}/clusters": { + "parameters": [ + { + "$ref": "#/components/parameters/ConnectorPathParam" + } + ], + "get": { + "summary": "List rancher clusters using account level connector", + "tags": [ + "Account Rancher Infrastructure" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RancherListClustersResponse" + } + }, + "operationId": "list-account-scoped-rancher-clusters-using-connector", + "description": "List rancher clusters using the given account level rancher connector", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/rancher/connectors/{connector}/clusters": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ConnectorPathParam" + } + ], + "get": { + "summary": "List rancher clusters using org level connector", + "tags": [ + "Org Rancher Infrastructure" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RancherListClustersResponse" + } + }, + "operationId": "list-org-scoped-rancher-clusters-using-connector", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "List rancher clusters using the given org level rancher connector" + } + }, + "/v1/orgs/{org}/projects/{project}/rancher/connectors/{connector}/clusters": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/ConnectorPathParam" + } + ], + "get": { + "summary": "List rancher clusters using project level connector", + "tags": [ + "Project Rancher Infrastructure" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RancherListClustersResponse" + } + }, + "operationId": "list-project-scoped-rancher-clusters-using-connector", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "List rancher clusters using the given project level rancher connector" + } + }, + "/v1/rancher/environments/{environment}/infrastructure-definitions/{infrastructure-definition}/clusters": { + "parameters": [ + { + "$ref": "#/components/parameters/EnvironmentPathParam" + }, + { + "$ref": "#/components/parameters/InfrastructureDefinitionPathParam" + } + ], + "get": { + "summary": "List rancher clusters using account level env and infra def", + "tags": [ + "Account Rancher Infrastructure" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RancherListClustersResponse" + } + }, + "operationId": "list-account-scoped-rancher-clusters-using-env-and-infra", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "List rancher clusters using the given account level environment and infrastructure definition." + } + }, + "/v1/orgs/{org}/rancher/environments/{environment}/infrastructure-definitions/{infrastructure-definition}/clusters": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + }, + { + "$ref": "#/components/parameters/InfrastructureDefinitionPathParam" + } + ], + "get": { + "summary": "List rancher clusters using org level env and infra def", + "tags": [ + "Org Rancher Infrastructure" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RancherListClustersResponse" + } + }, + "operationId": "list-org-scoped-rancher-clusters-using-env-and-infra", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "List rancher clusters using the given org level environment and infrastructure definition." + } + }, + "/v1/orgs/{org}/projects/{project}/rancher/environments/{environment}/infrastructure-definitions/{infrastructure-definition}/clusters": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + }, + { + "$ref": "#/components/parameters/InfrastructureDefinitionPathParam" + } + ], + "get": { + "summary": "List rancher clusters using project level env and infra def", + "tags": [ + "Project Rancher Infrastructure" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RancherListClustersResponse" + } + }, + "operationId": "list-project-scoped-rancher-clusters-using-env-and-infra", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "List rancher clusters using the given project level environment and infrastructure definition." + } + }, + "/v1/orgs/{org}/projects/{project}/services/{service}/primary-manifests": { + "parameters": [ + { + "$ref": "#/components/parameters/ServicePathParam" + }, + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/orgs/{org}/services/{service}/primary-manifests": { + "parameters": [ + { + "$ref": "#/components/parameters/ServicePathParam" + }, + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/services/{service}/primary-manifests": { + "parameters": [ + { + "$ref": "#/components/parameters/ServicePathParam" + } + ] + }, + "/v1/eula/sign": { + "post": { + "summary": "Sign an End User License Agreement", + "operationId": "sign-eula", + "responses": { + "200": { + "$ref": "#/components/responses/EulaSignResponse" + } + }, + "description": "Sign an End User License Agreement.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EulaSignRequest" + }, + "tags": [ + "EULA" + ], + "x-internal": false + } + }, + "/v1/eula/validate-sign": { + "get": { + "summary": "Validate specified agreement is signed or not", + "operationId": "validate-eula-sign", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/AgreementType" + } + ], + "description": "Check whether End User License Agreement has been signed for specified agreement type.", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EulaSignResponse" + } + }, + "tags": [ + "EULA" + ], + "x-internal": false + } + }, + "/v1/gitx-webhooks": { + "post": { + "summary": "Create a GitX webhook at Account level", + "operationId": "create-gitx-webhook", + "responses": { + "201": { + "$ref": "#/components/responses/CreateGitXWebhookResponse" + } + }, + "description": "Create GitXWebhook at account level", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "GitX Webhooks" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateGitXWebhookRequest" + }, + "x-internal": false + }, + "get": { + "summary": "Lists all the GitX Webhooks at Account level", + "operationId": "list-gitx-webhooks", + "responses": { + "200": { + "$ref": "#/components/responses/ListGitXWebhookResponse" + } + }, + "description": "List GitX webhooks", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "GitX Webhooks" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "webhook_identifier" + } + ], + "x-internal": false + } + }, + "/v1/gitx-webhooks/{gitx-webhook}": { + "parameters": [ + { + "$ref": "#/components/parameters/GitXWebhookIdentifier" + } + ], + "get": { + "summary": "Fetch GitX Webhook at Account level", + "responses": { + "200": { + "$ref": "#/components/responses/GetGitXWebhookResponse" + } + }, + "operationId": "get-gitx-webhook", + "description": "Fetch a gitx webhook", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "GitX Webhooks" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "put": { + "summary": "Updates a GitX Webhook at Account level", + "operationId": "update-gitx-webhook", + "responses": { + "200": { + "$ref": "#/components/responses/UpdateGitXWebhookResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "GitX Webhooks" + ], + "description": "Update a Gitx webhook", + "requestBody": { + "$ref": "#/components/requestBodies/UpdateGitXWebhookRequest" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "delete": { + "summary": "Deletes a GitX Webhook at Account level", + "operationId": "delete-gitx-webhook", + "responses": { + "204": { + "description": "No Content" + } + }, + "description": "Deletes a gitx webhooks", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "GitX Webhooks" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "x-internal": false + } + }, + "/v1/kubernetes/releases/service-mapping": { + "get": { + "summary": "List service and environment details using namespace and releasename", + "tags": [ + "K8s Release Service Mapping" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ReleaseDetailsResponse" + } + }, + "operationId": "get-v1-releaseDetails", + "description": "Return details of service and environment mapped to pods namespace and release-name for a given account.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/BatchReleaseDetailsRequest" + } + }, + "parameters": [] + }, + "/v1/orgs/{org}/gitx-webhooks": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ], + "get": { + "summary": "Lists all the GitX Webhooks at Org level", + "tags": [ + "Org Gitx Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListGitXWebhookResponse" + } + }, + "operationId": "list-org-gitx-webhooks", + "description": "List org level GitX webhooks", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "webhook_identifier" + } + ], + "x-internal": false + }, + "post": { + "summary": "Create Org Level GitX webhook", + "operationId": "create-org-gitx-webhook", + "responses": { + "200": { + "$ref": "#/components/responses/CreateGitXWebhookResponse" + } + }, + "description": "Create GitXWebhook at org level", + "tags": [ + "Org Gitx Webhooks" + ], + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateGitXWebhookRequest" + } + } + }, + "/v1/orgs/{org}/gitx-webhooks/{gitx-webhook}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/GitXWebhookIdentifier" + } + ], + "get": { + "summary": "Fetch GitX Webhook at org level", + "tags": [ + "Org Gitx Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetGitXWebhookResponse" + } + }, + "operationId": "get-org-gitx-webhook", + "description": "Fetch a org level gitx webhook", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false + }, + "put": { + "summary": "Updates a GitX Webhook at org level", + "operationId": "update-org-gitx-webhook", + "responses": { + "200": { + "$ref": "#/components/responses/UpdateGitXWebhookResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Update a org level Gitx webhook", + "requestBody": { + "$ref": "#/components/requestBodies/UpdateGitXWebhookRequest" + }, + "tags": [ + "Org Gitx Webhooks" + ], + "x-internal": false + }, + "delete": { + "summary": "Deletes a GitX Webhook at org level", + "operationId": "delete-org-gitx-webhook", + "responses": { + "204": { + "description": "No Content" + } + }, + "description": "Deletes a org level gitx webhooks", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Org Gitx Webhooks" + ], + "x-internal": false + } + }, + "/v1/orgs/{org}/gitx-webhook-events": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/gitx-webhooks": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ], + "get": { + "summary": "Lists all the GitX Webhooks at project level", + "tags": [ + "Project Gitx Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListGitXWebhookResponse" + } + }, + "operationId": "list-project-gitx-webhook", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "webhook_identifier" + } + ], + "description": "List project level GitX webhooks", + "x-internal": false + }, + "post": { + "summary": "Create Project level GitX webhook", + "operationId": "create-project-gitx-webhook", + "responses": { + "200": { + "$ref": "#/components/responses/CreateGitXWebhookResponse" + } + }, + "description": "Create GitXWebhook at project level", + "requestBody": { + "$ref": "#/components/requestBodies/CreateGitXWebhookRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Gitx Webhooks" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/gitx-webhooks/{gitx-webhook}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/GitXWebhookIdentifier" + } + ], + "get": { + "summary": "Fetch GitX Webhook at project level", + "tags": [ + "Project Gitx Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetGitXWebhookResponse" + } + }, + "operationId": "get-project-gitx-webhook", + "x-internal": false, + "description": "Fetch a project level gitx webhook", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "put": { + "summary": "Updates a GitX Webhook at project level", + "operationId": "update-project-gitx-webhook", + "responses": { + "200": { + "$ref": "#/components/responses/UpdateGitXWebhookResponse" + } + }, + "description": "Update a project level Gitx webhook", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateGitXWebhookRequest" + }, + "tags": [ + "Project Gitx Webhooks" + ], + "x-internal": false + }, + "delete": { + "summary": "Deletes a GitX Webhook at project level", + "operationId": "delete-project-gitx-webhook", + "responses": { + "204": { + "description": "No Content" + } + }, + "description": "Deletes a project level gitx webhooks", + "tags": [ + "Project Gitx Webhooks" + ], + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/gitx-webhook-events": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/gitx-webhook-events/{gitx-webhook-event}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "gitx-webhook-event", + "in": "path", + "required": true, + "description": "GitX Webhook Event Identifier" + } + ] + }, + "/v1/certificates/{certificate}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "certificate", + "in": "path", + "required": true, + "description": "Identifier field of the certificate" + } + ] + }, + "/v1/orgs/{org}/certificates/{certificate}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "certificate", + "in": "path", + "required": true, + "description": "Identifier field of the certificate" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/certificates/{certificate}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "certificate", + "in": "path", + "required": true, + "description": "Identifier field of the certificate" + }, + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/certificates/validate-unique-identifier/{certificate}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "certificate", + "in": "path", + "required": true, + "description": "Identifier field of the certificate" + } + ] + }, + "/v1/orgs/{org}/certificates/validate-unique-identifier/{certificate}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "certificate", + "in": "path", + "required": true, + "description": "Identifier field of the certificate" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/certificates/validate-unique-identifier/{certificate}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "certificate", + "in": "path", + "required": true, + "description": "Identifier field of the certificate" + } + ] + }, + "/v1/orgs/{org}/certificates": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/certificates": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/banners": { + "get": { + "summary": "Retrieves the list of Banners in account scope", + "tags": [ + "Account Banner" + ], + "responses": { + "200": { + "$ref": "#/components/responses/BannerListResponse" + } + }, + "operationId": "get-account-scoped-banners", + "x-stoplight": { + "id": "ld5yy1r4xvhtt" + }, + "description": "Retrieves the list of Banners in account scope", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "schema": { + "type": "string", + "enum": [ + "true", + "false" + ] + }, + "in": "query", + "name": "enabled", + "description": "Show banners with enabled field filtering", + "allowEmptyValue": true + } + ] + }, + "post": { + "summary": "Creates a new Banner in account scope", + "operationId": "create-account-scoped-banners", + "x-stoplight": { + "id": "7qljrrvy7z0ha" + }, + "responses": { + "201": { + "$ref": "#/components/responses/BannerResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateBannerRequest" + }, + "description": "Creates a new Banner in Account Scope.", + "tags": [ + "Account Banner" + ] + } + }, + "/v1/banners/validate-unique-identifier/{bannerId}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "bannerId", + "in": "path", + "required": true, + "description": "Identifier field of the BannerDTO" + } + ], + "get": { + "summary": "Validate if the specified Banner identifier is available for use in account scope", + "tags": [ + "Account Banner" + ], + "responses": { + "200": { + "$ref": "#/components/responses/BannerBooleanResponse" + } + }, + "operationId": "validate-account-scoped-banner-identifier", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Validate if the specified BannerDTO identifier is available for use in account scope", + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/banners/allowed": { + "get": { + "summary": "Check for a current account max 5 banners are enabled or not", + "tags": [ + "Account Banner" + ], + "responses": { + "200": { + "$ref": "#/components/responses/BannerBooleanResponse" + } + }, + "operationId": "banners-allowed", + "description": "Check for a current account max 5 banners are enabled or not.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/ldap-settings": { + "post": { + "summary": "Create Account LDAP Settings", + "operationId": "create-ng-ldap-settings", + "responses": { + "201": { + "$ref": "#/components/responses/LdapSettingsResponse" + } + }, + "x-stoplight": { + "id": "n04275yl5c0g3" + }, + "description": "Create NG Ldap setttings", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/LdapSettingsRequest" + }, + "tags": [ + "Ldap Settings" + ] + }, + "parameters": [], + "get": { + "summary": "Get ldap settings for the account", + "tags": [ + "ldap-settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapSettingsResponse" + } + }, + "operationId": "get-account-ldap-settings", + "x-stoplight": { + "id": "x58m09htlk67j" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/ldap-settings/{ldap-settings-id}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "ldap-settings-id", + "in": "path", + "required": true + } + ], + "get": { + "summary": "Get Account Ldap Settings by identifier", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapSettingsResponse" + } + }, + "operationId": "get-ldap-settings", + "x-stoplight": { + "id": "9655d1754op9c" + }, + "description": "Get Account NG Ldap settings", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "put": { + "summary": "Update Account Ldap Settings", + "operationId": "update-ldap-settings", + "responses": { + "200": { + "$ref": "#/components/responses/LdapSettingsResponse" + } + }, + "x-stoplight": { + "id": "63u2f75vg76gz" + }, + "description": "Update NG Ldap settings for the account", + "requestBody": { + "$ref": "#/components/requestBodies/LdapSettingsRequest" + }, + "tags": [ + "Ldap Settings" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "delete": { + "summary": "Delete Account Ldap Settings", + "operationId": "delete-ldap-settings", + "responses": { + "204": { + "description": "No Content" + } + }, + "x-stoplight": { + "id": "hw0azqcr4ehs9" + }, + "description": "Delete Account Ldap settings ", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Ldap Settings" + ] + } + }, + "/v1/ldap-settings/validate/connection-settings": { + "post": { + "summary": "Validate Ldap Connection Settings", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapValidateResponse" + } + }, + "operationId": "validate-connection-settings", + "x-stoplight": { + "id": "24rd6s9hp2b0a" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/LdapSettingsRequest" + } + } + }, + "/v1/ldap-settings/validate/user-settings": { + "post": { + "summary": "Validate Ldap User Settings", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapValidateResponse" + } + }, + "operationId": "validate-user-settings", + "x-stoplight": { + "id": "5fw3lcfs79wpo" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/LdapSettingsRequest" + } + } + }, + "/v1/ldap-settings/validate/group-settings": { + "post": { + "summary": "Validate Ldap Group Settings", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapValidateResponse" + } + }, + "operationId": "validate-group-settings", + "x-stoplight": { + "id": "uvedvfpk6ldue" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/LdapSettingsRequest" + } + } + }, + "/v1/ldap-settings/sync-groups": { + "put": { + "summary": "Ldap Settings Sync User Groups", + "operationId": "ldap-settings-sync-groups", + "responses": { + "200": { + "description": "OK" + } + }, + "x-stoplight": { + "id": "7xnw3fstsnqe7" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Ldap Settings" + ] + } + }, + "/v1/ldap-settings/sync-group/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ], + "get": { + "summary": "Ldap Sync Group with user group id", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "description": "OK" + } + }, + "operationId": "ldap-settings-sync-group-with-id", + "x-stoplight": { + "id": "el2bfbrc5mubt" + }, + "description": "Ldap Sync Group with user group id", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/ldap-settings/search-group/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ], + "get": { + "summary": "Search Ldap groups with matching name", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapGroupResponse" + } + }, + "operationId": "ldap-settings-search-group", + "x-stoplight": { + "id": "xkgeu3g9n1ul2" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/ldap-settings/link/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ] + }, + "/v1/ldap-settings/unlink/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ] + }, + "/v1/ldap-settings/unlink/orgs/{org}/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ] + }, + "/v1/ldap-settings/link/orgs/{org}/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ] + }, + "/v1/ldap-settings/unlink/orgs/{org}/projects/{project}/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ] + }, + "/v1/ldap-settings/link/orgs/{org}/projects/{project}/{group-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/UserGroupIdentifierPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/environments": { + "post": { + "summary": "Creates an Environment", + "operationId": "create-environment", + "responses": { + "201": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnvironmentCreateRequest" + }, + "description": "Creates an Environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Environments" + ], + "x-internal": false + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ], + "get": { + "summary": "List Environments", + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentListResponse" + } + }, + "operationId": "get-environments", + "parameters": [ + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/EnvironmentIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list of environments that you are permitted to use in a pipeline." + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the enviornments for which you have view permissions in the given project.", + "tags": [ + "Project Environments" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/environments/{environment}": { + "get": { + "summary": "Retrieve a environment", + "operationId": "get-environment", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified environment", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "tags": [ + "Project Environments" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + } + ], + "put": { + "summary": "Update Environment", + "operationId": "update-environment", + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnvironmentUpdateRequest" + }, + "description": "Updates the specified environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Environments" + ] + }, + "delete": { + "summary": "Delete a Environment", + "operationId": "delete-environment", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Environments" + ] + } + }, + "/v1/orgs/{org}/environments": { + "post": { + "summary": "Creates an org scoped Environment", + "operationId": "create-org-scoped-environment", + "responses": { + "201": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnvironmentCreateRequest" + }, + "description": "Creates an org scoped Environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Environments" + ], + "x-internal": false + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ], + "get": { + "summary": "List org scoped Environments", + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentListResponse" + } + }, + "operationId": "get-org-scoped-environments", + "parameters": [ + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/EnvironmentIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list org scoped of environments that you are permitted to use in a pipeline." + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the org scoped environments for which you have view permissions in the given org.", + "tags": [ + "Org Environments" + ] + } + }, + "/v1/orgs/{org}/environments/{environment}": { + "get": { + "summary": "Retrieve an org scoped environment", + "operationId": "get-org-scoped-environment", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified org scoped environment", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "tags": [ + "Org Environments" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + } + ], + "put": { + "summary": "Update org scoped Environment", + "operationId": "update-org-scoped-environment", + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnvironmentUpdateRequest" + }, + "description": "Updates the specified org scoped environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Environments" + ] + }, + "delete": { + "summary": "Delete an org scoped Environment", + "operationId": "delete-org-scoped-environment", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested org scoped environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Environments" + ] + } + }, + "/v1/environments": { + "post": { + "summary": "Creates an account scoped Environment", + "operationId": "create-account-scoped-environment", + "responses": { + "201": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnvironmentCreateRequest" + }, + "description": "Creates an account scoped Environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Environments" + ], + "x-internal": false + }, + "get": { + "summary": "List account scoped Environments", + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentListResponse" + } + }, + "operationId": "get-account-scoped-environments", + "parameters": [ + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/EnvironmentIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list account scoped of environments that you are permitted to use in a pipeline." + }, + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the account scoped environments for which you have view permissions in the given account.", + "tags": [ + "Account Environments" + ] + } + }, + "/v1/environments/{environment}": { + "get": { + "summary": "Retrieve an account scoped environment", + "operationId": "get-account-scoped-environment", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified account scoped environment", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "tags": [ + "Account Environments" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/EnvironmentPathParam" + } + ], + "put": { + "summary": "Update account scoped Environment", + "operationId": "update-account-scoped-environment", + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnvironmentUpdateRequest" + }, + "description": "Updates the specified account scoped environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Environments" + ] + }, + "delete": { + "summary": "Delete an account scoped Environment", + "operationId": "delete-account-scoped-environment", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested account scoped environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Environments" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/environments/{environment}/infrastructures": { + "post": { + "summary": "Creates an Infrastructure", + "operationId": "create-infrastructure", + "responses": { + "201": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InfrastructureCreateRequest" + }, + "description": "Creates an Infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Infrastructures" + ], + "x-internal": false + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + } + ], + "get": { + "summary": "List Infrastructures", + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureListResponse" + } + }, + "operationId": "get-infrastructures", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/InfraIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list of infrastructure that you are permitted to use in a pipeline." + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "service_refs", + "description": "Specifies services to which scoped infra are to be fetched." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "template_identifier", + "description": "The Identifier of deployment template if infrastructure is of type custom deployment." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "template_version", + "description": "The version label of deployment template if infrastructure is of type custom deployment(deployment template)." + }, + { + "$ref": "#/components/parameters/DeploymentType" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the infrastructure for which you have view permissions in the given project.", + "tags": [ + "Project Infrastructures" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/environments/{environment}/infrastructures/{infrastructure-definition}": { + "get": { + "summary": "Retrieve a infrastructure", + "operationId": "get-infrastructure", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "tags": [ + "Project Infrastructures" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + }, + { + "$ref": "#/components/parameters/InfrastructureDefinitionPathParam" + } + ], + "put": { + "summary": "Update Infrastructure", + "operationId": "update-infrastructure", + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InfrastructureUpdateRequest" + }, + "description": "Updates the specified infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Infrastructures" + ] + }, + "delete": { + "summary": "Delete a Infrastructure", + "operationId": "delete-infrastructure", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested environment", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Infrastructures" + ] + } + }, + "/v1/orgs/{org}/environments/{environment}/infrastructures": { + "post": { + "summary": "Creates an org scoped Infrastructure", + "operationId": "create-org-scoped-infrastructure", + "responses": { + "201": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InfrastructureCreateRequest" + }, + "description": "Creates an org scoped Infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Infrastructures" + ], + "x-internal": false + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + } + ], + "get": { + "summary": "List org scoped Infrastructures", + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureListResponse" + } + }, + "operationId": "get-org-scoped-infrastructures", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/InfraIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list org scoped of infrastructure that you are permitted to use in a pipeline." + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "service_refs", + "description": "Specifies services to which scoped infra are to be fetched." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "template_identifier", + "description": "The Identifier of deployment template if infrastructure is of type custom deployment." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "template_version", + "description": "The version label of deployment template if infrastructure is of type custom deployment(deployment template)." + }, + { + "$ref": "#/components/parameters/DeploymentType" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the org scoped infrastructures for which you have view permissions in the given org.", + "tags": [ + "Org Infrastructures" + ] + } + }, + "/v1/orgs/{org}/environments/{environment}/infrastructures/{infrastructure-definition}": { + "get": { + "summary": "Retrieve an org scoped Infrastructure", + "operationId": "get-org-scoped-infrastructure", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified org scoped infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "tags": [ + "Org Infrastructures" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/EnvironmentPathParam" + }, + { + "$ref": "#/components/parameters/InfrastructureDefinitionPathParam" + } + ], + "put": { + "summary": "Update org scoped Infrastructure", + "operationId": "update-org-scoped-infrastructure", + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InfrastructureUpdateRequest" + }, + "description": "Updates the specified org scoped infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Infrastructures" + ] + }, + "delete": { + "summary": "Delete an org scoped Infrastructure", + "operationId": "delete-org-scoped-infrastructure", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested org scoped infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Org Infrastructures" + ] + } + }, + "/v1/environments/{environment}/infrastructures": { + "post": { + "summary": "Creates an account scoped Infrastructure", + "operationId": "create-account-scoped-infrastructure", + "responses": { + "201": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InfrastructureCreateRequest" + }, + "description": "Creates an account scoped Infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Infrastructures" + ], + "x-internal": false + }, + "parameters": [ + { + "$ref": "#/components/parameters/EnvironmentPathParam" + } + ], + "get": { + "summary": "List account scoped Infrastructures", + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureListResponse" + } + }, + "operationId": "get-account-scoped-infrastructures", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/InfraIdentifiers" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "schema": { + "type": "boolean" + }, + "in": "query", + "name": "is_access_list", + "description": "Specifies whether the list is an access list. An access list is a list account scoped of infrastructures that you are permitted to use in a pipeline." + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "service_refs", + "description": "Specifies services to which scoped infra are to be fetched." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "template_identifier", + "description": "The Identifier of deployment template if infrastructure is of type custom deployment." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "template_version", + "description": "The version label of deployment template if infrastructure is of type custom deployment(deployment template)." + }, + { + "$ref": "#/components/parameters/DeploymentType" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "description": "Returns a list of the account scoped infrastructures for which you have view permissions in the given account.", + "tags": [ + "Account Infrastructures" + ] + } + }, + "/v1/environments/{environment}/infrastructures/{infrastructure-definition}": { + "get": { + "summary": "Retrieve an account scoped Infrastructure", + "operationId": "get-account-scoped-infrastructure", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Retrieves the specified account scoped infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "tags": [ + "Account Infrastructures" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/EnvironmentPathParam" + }, + { + "$ref": "#/components/parameters/InfrastructureDefinitionPathParam" + } + ], + "put": { + "summary": "Update account scoped Infrastructure", + "operationId": "update-account-scoped-infrastructure", + "responses": { + "200": { + "$ref": "#/components/responses/InfrastructureResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InfrastructureUpdateRequest" + }, + "description": "Updates the specified account scoped infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Infrastructures" + ] + }, + "delete": { + "summary": "Delete an account scoped Infrastructure", + "operationId": "delete-account-scoped-infrastructure", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/ForceDelete" + } + ], + "description": "Deletes the requested account scoped infrastructure", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Infrastructures" + ] + } + }, + "/v1/licenseUsageActivity/export/{accountIdentifier}": { + "post": { + "summary": "Get exported License Usage Data for an account based on the filters", + "tags": [ + "Export License Usage Data By Account" + ], + "responses": { + "200": { + "description": "No Content" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "operationId": "export-license-usage-activity", + "x-internal": false, + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "required": true, + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "description": "Start Time of the Interval for the Entity.", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "description": "End Time of the Interval for the Entity.", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "requestBody": { + "required": true, + "description": "Details of the filters applied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LicenseUsageActivityFilterPropertiesDTO" + } + } + } + } + } + }, + "/v1/ldap-settings/iterations": { + "post": { + "summary": "Ldap Settings iterations", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapSettingsIterationsResponse" + } + }, + "operationId": "ldap-settings-iterations", + "x-stoplight": { + "id": "o0f3p82mazw6a" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CronExpressionRequest" + } + } + }, + "/v1/ldap-settings/ldap-login-test": { + "post": { + "summary": "Ldap login test", + "tags": [ + "Ldap Settings" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LdapTestLoginResponse" + } + }, + "operationId": "ldap-settings-ldap-login-test", + "x-stoplight": { + "id": "xy60v4zxek7xz" + }, + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/LdapTestLoginRequest" + } + } + }, + "/v1/credits/allocation/export/{accountIdentifier}": { + "get": { + "summary": "Get credits allocation Data for an account for a given moduleType", + "tags": [ + "Credits allocation by account and moduleType" + ], + "responses": { + "200": { + "description": "Successful response with CSV file", + "content": { + "text/csv": {} + } + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "operationId": "credits-allocation-export-data", + "x-internal": false, + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "required": true, + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "moduleType", + "in": "query", + "required": true, + "description": "Module type for the account", + "schema": { + "type": "string" + } + } + ] + } + }, + "/v1/licenseUsageActivity/{accountIdentifier}": { + "post": { + "summary": "Get License Usage Data for an account for a given time range", + "tags": [ + "License Usage Data By Account" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LicenseUsageActivity" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "operationId": "license-usage-activity", + "x-internal": false, + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "required": true, + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "description": "Start Time of the Interval for the Entity.", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "description": "End Time of the Interval for the Entity.", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "rollup", + "in": "query", + "required": true, + "description": "Rollup all credit usages in the specified timestamp to a single value.", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "required": true, + "description": "Details of the filters applied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LicenseUsageActivityFilterPropertiesDTO" + } + } + } + } + } + }, + "/v1/iro/get-sync-data-collection-result": { + "post": { + "summary": "Retrieve data from Prometheus APM to fetch data.", + "tags": [ + "Prometheus Data Retrieval" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PrometheusMetricsResponse" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "operationId": "get-sync-data-collection-result", + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PrometheusQueryRequest" + } + } + } + } + } + }, + "/v1/gitx-webhook-events/list-branches": { + "parameters": [] + }, + "/v1/webhooks/list": { + "post": { + "summary": "Lists all the Webhooks at Account level", + "tags": [ + "Account Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListWebhookResponse" + } + }, + "operationId": "list-account-webhooks", + "x-stoplight": { + "id": "q959f3zrosr8j" + }, + "description": "Lists webhooks", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ListWebhookRequest" + } + } + }, + "/v1/orgs/{org}/webhooks/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ], + "post": { + "summary": "Lists all the Webhooks at Org level", + "tags": [ + "Org Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListWebhookResponse" + } + }, + "operationId": "list-org-webhooks", + "x-stoplight": { + "id": "xtibpkmzi48xi" + }, + "description": "List org level webhooks", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ListWebhookRequest" + } + } + }, + "/v1/orgs/{org}/projects/{project}/webhooks/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ], + "post": { + "summary": "List all the Webhooks at Project level", + "tags": [ + "Project Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListWebhookResponse" + } + }, + "operationId": "list-project-webhooks", + "x-stoplight": { + "id": "d0984c6o07vmf" + }, + "description": "List project level webhooks", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ListWebhookRequest" + } + } + }, + "/v1/webhooks": { + "post": { + "summary": "Create a webhook at Account level", + "responses": { + "201": { + "$ref": "#/components/responses/CreateWebhookResponse" + } + }, + "operationId": "create-account-webhooks", + "x-stoplight": { + "id": "8eiwo6om8vhyx" + }, + "description": "Create webhooks at account level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateWebhookRequest" + }, + "tags": [ + "Account Webhooks" + ] + } + }, + "/v1/orgs/{org}/webhooks": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ], + "post": { + "summary": "Create a webhook at Org level", + "responses": { + "201": { + "$ref": "#/components/responses/CreateWebhookResponse" + } + }, + "operationId": "create-org-webhooks", + "x-stoplight": { + "id": "218lrnqztn5db" + }, + "description": "Create webhooks at org level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateWebhookRequest" + }, + "tags": [ + "Org Webhooks" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/webhooks": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ], + "post": { + "summary": "Create a webhook at Project level", + "responses": { + "201": { + "$ref": "#/components/responses/CreateWebhookResponse" + } + }, + "operationId": "create-project-webhooks", + "x-stoplight": { + "id": "3hemfo8zsii5j" + }, + "description": "Create webhooks at project level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateWebhookRequest" + }, + "tags": [ + "Project Webhooks" + ] + } + }, + "/v1/webhooks/{webhook}": { + "parameters": [ + { + "$ref": "#/components/parameters/WebhookIdentifier" + } + ], + "get": { + "summary": "Fetch Webhook at Account level", + "responses": { + "200": { + "$ref": "#/components/responses/GetWebhookResponse" + } + }, + "operationId": "get-account-webhook", + "x-stoplight": { + "id": "htrbf7iw1pgbm" + }, + "description": "Fetch Webhook at Account level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Webhooks" + ] + }, + "put": { + "summary": "Updates a Webhook at Account level", + "tags": [ + "Account Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/UpdateWebhookResponse" + } + }, + "operationId": "update-account-webhook", + "x-stoplight": { + "id": "stg0ym0cf83ms" + }, + "description": "Updates a Webhook at Account level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateWebhookRequest" + } + }, + "delete": { + "summary": "Deletes a Webhook at account level", + "tags": [ + "Account Webhooks" + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-account-webhook", + "x-stoplight": { + "id": "hy1e8ggf1za4k" + }, + "description": "Deletes a Webhook at account level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/orgs/{org}/webhooks/{webhook}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/WebhookIdentifier" + } + ], + "get": { + "summary": "Fetch Webhook at org level", + "tags": [ + "Org Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetWebhookResponse" + } + }, + "operationId": "get-org-webhook", + "x-stoplight": { + "id": "phxcvl7c27s2b" + }, + "description": "Fetch Webhook at org level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "put": { + "summary": "Updates a Webhook at Org level", + "tags": [ + "Org Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/UpdateWebhookResponse" + } + }, + "operationId": "update-org-webhook", + "x-stoplight": { + "id": "qnxs9xauehxf1" + }, + "description": "Updates a Webhook at Org level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateWebhookRequest" + } + }, + "delete": { + "summary": "Deletes a Webhook at org level", + "tags": [ + "Org Webhooks" + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-org-webhook", + "x-stoplight": { + "id": "hp71yii6vje5j" + }, + "description": "Deletes a Webhook at org level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/webhooks/{webhook}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "$ref": "#/components/parameters/WebhookIdentifier" + } + ], + "get": { + "summary": "Fetch Webhook at project level", + "tags": [ + "Project Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetWebhookResponse" + } + }, + "operationId": "get-project-webhook", + "x-stoplight": { + "id": "91vr2lhknz7e2" + }, + "description": "Fetch Webhook at project level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "put": { + "summary": "Updates a Webhook at Project level", + "tags": [ + "Project Webhooks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/UpdateWebhookResponse" + } + }, + "operationId": "update-project-webhook", + "x-stoplight": { + "id": "qkzw38ihe33sm" + }, + "description": "Updates a Webhook at Project level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateWebhookRequest" + } + }, + "delete": { + "summary": "Deletes a Webhook at project level", + "tags": [ + "Project Webhooks" + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-project-webhook", + "x-stoplight": { + "id": "zrxeghi06sstt" + }, + "description": "Deletes a Webhook at project level", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/licensedModules": { + "get": { + "summary": "Get Licensed Modules for an account", + "tags": [ + "Account Licensed Modules" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LicensedModules" + } + } + } + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "get-account-licensed-modules", + "x-stoplight": { + "id": "48ywtaz7t7c2m" + }, + "description": "Get Licensed Modules for an account", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/banners/{banner}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "banner", + "in": "path", + "required": true, + "description": "Identifier field of the Banner" + } + ], + "put": { + "summary": "Updates the specified Banner in account scope", + "operationId": "update-account-scoped-banner", + "responses": { + "200": { + "$ref": "#/components/responses/BannerResponse" + } + }, + "description": "Updates the specified Banner in account scope", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateBannerRequest" + }, + "tags": [ + "Account Banner" + ] + }, + "delete": { + "summary": "Deletes the specified Banner in account scope", + "operationId": "delete-account-scoped-banner", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "description": "Deletes the specified Banner in account scope", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Account Banner" + ] + } + }, + "/v1/devSubscriptions": { + "get": { + "summary": "Get total users count by month for the provided year", + "tags": [ + "Total users count" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SubscriptionUsageDTO" + } + } + } + } + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "get-v1-devSubscriptions", + "x-stoplight": { + "id": "t2sfdg3924zq1" + }, + "description": "Get subscriptions data for account", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "year", + "description": "Year to get the subscriptions data for" + } + ] + }, + "/v1/moduleLicenseUtilization": { + "get": { + "summary": "utilization", + "tags": [ + "Module License Utilization" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ModuleUtilizationDTO" + } + } + } + } + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "get-v1-moduleLicenseUtilization", + "x-stoplight": { + "id": "ou43i1cdk84oz" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ] + } + }, + "/v1/updateModuleAccess": { + "put": { + "summary": "update", + "tags": [ + "Update Module Access" + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "put-v1-updateModuleAccess", + "x-stoplight": { + "id": "xqx83k6nobtol" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "entities": { + "$ref": "#/components/schemas/UpdateAccessRequest" + } + } + } + } + } + } + } + }, + "/v1/listPrincipalsWithAccess": { + "get": { + "summary": "list", + "tags": [ + "Principals With Access" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "principalsWithAccess": { + "$ref": "#/components/schemas/PrincipalWithAccessResponse" + } + } + } + } + } + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "get-v1-listPrincipalsWithAccess", + "x-stoplight": { + "id": "sa5b0bfaplklt" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "moduleType", + "description": "Module to fetch the users for", + "required": true + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + } + ] + }, + "post": { + "summary": "Your POST endpoint", + "tags": [ + "Principals With Access" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "principalsWithAccess": { + "$ref": "#/components/schemas/PrincipalWithAccessResponse" + } + } + } + } + } + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "post-v1-listPrincipalsWithAccess", + "x-stoplight": { + "id": "qdy1p2ocwewgn" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "moduleType", + "description": "Module to fetch the users for", + "required": true + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "filter": { + "$ref": "#/components/schemas/PrincipalWithAccessFilter" + } + } + } + } + } + } + } + }, + "/v1/banners/active": { + "get": { + "summary": "Return Active Banners", + "tags": [ + "Account Banner" + ], + "responses": { + "200": { + "$ref": "#/components/responses/BannerListResponse" + } + }, + "operationId": "get-account-scoped-active-banners", + "description": "This API endpoint will return max 5 banners as that is the enabled banners count.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/SearchTerm1" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit1" + }, + { + "$ref": "#/components/parameters/Sort1" + }, + { + "$ref": "#/components/parameters/Order" + } + ] + } + }, + "/v1/dailyModuleAccountAccess": { + "get": { + "summary": "Your GET endpoint", + "tags": [ + "Daily Module Account Access" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DailyModuleAccountAccessDTO" + } + } + } + } + } + }, + "operationId": "get-v1-dailyModuleAccountAccess", + "x-stoplight": { + "id": "ottg9ts46qi5m" + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "nullable": true + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "schema": { + "type": "integer" + }, + "in": "query", + "name": "year", + "description": "Year for which the data is requested", + "required": true + }, + { + "schema": { + "type": "integer" + }, + "in": "query", + "name": "month", + "description": "Month for which the data is requested", + "required": true + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "moduleType", + "description": "Module for which the data is requested", + "required": true + } + ] + } + }, + "/v1/moduleAccess": { + "get": { + "summary": "Get module access", + "tags": [ + "Get Module Access" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "hasAccess": { + "type": "boolean" + } + } + } + } + } + } + }, + "operationId": "get-v1-moduleAccess", + "x-stoplight": { + "id": "t1jwlv6z8sa1x" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "moduleType", + "description": "Module to check user access for" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "userId", + "description": "User id" + } + ] + } + }, + "/v1/oidc-provider": { + "post": { + "summary": "Create OIDC provider", + "tags": [ + "Oidc Provider" + ], + "responses": { + "200": { + "$ref": "#/components/responses/OidcProviderResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "create-oidc-provider", + "x-stoplight": { + "id": "8j9gyvedhvef1" + }, + "requestBody": { + "$ref": "#/components/requestBodies/OidcProviderRequest" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "in": "header", + "name": "Harness-Account", + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped." + } + ] + }, + "get": { + "summary": "Get OIDC providers", + "tags": [ + "Oidc Provider" + ], + "responses": { + "200": { + "$ref": "#/components/responses/OidcProvidersResponse" + }, + "400": { + "description": "Bad Request" + }, + "404": { + "description": "Not Found" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "list-oidc-provider", + "x-stoplight": { + "id": "z6j7sbsuajq8k" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "in": "header", + "name": "Harness-Account", + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped." + } + ] + } + }, + "/v1/oidc-provider/{providerIdentifier}": { + "get": { + "summary": "GET OIDC provider", + "tags": [ + "Oidc Provider" + ], + "responses": { + "200": { + "$ref": "#/components/responses/OidcProvidersResponse" + }, + "400": { + "description": "Bad Request" + }, + "404": { + "description": "Not Found" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "get-oidc-provider", + "x-stoplight": { + "id": "cubdvrj4itv8p" + }, + "parameters": [ + { + "$ref": "#/components/parameters/OidcProviderId" + }, + { + "schema": { + "type": "string" + }, + "in": "header", + "name": "Harness-Account", + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped." + } + ], + "description": "" + }, + "put": { + "summary": "Update OIDC provider", + "tags": [ + "Oidc Provider" + ], + "responses": { + "200": { + "$ref": "#/components/responses/OidcProviderResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "update-oidc-provider", + "x-stoplight": { + "id": "wq62jc99nwlly" + }, + "requestBody": { + "$ref": "#/components/requestBodies/OidcProviderRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/OidcProviderId" + }, + { + "schema": { + "type": "string" + }, + "in": "header", + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "name": "Harness-Account" + } + ] + }, + "delete": { + "summary": "Delete OIDC provider", + "tags": [ + "Oidc Provider" + ], + "responses": { + "200": { + "$ref": "#/components/responses/OidcProviderResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "delete-oidc-provider", + "x-stoplight": { + "id": "9omza80n0xdqu" + }, + "parameters": [ + { + "$ref": "#/components/parameters/OidcProviderId" + }, + { + "schema": { + "type": "string" + }, + "in": "header", + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "name": "Harness-Account" + } + ] + } + }, + "/v1/connectors": { + "post": { + "summary": "Create a Connector", + "operationId": "create-account-scoped-connector", + "responses": { + "201": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Creates a new connector", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConnectorRequest" + }, + "tags": [ + "Account Connector" + ] + } + }, + "/v1/connectors/{connector}": { + "get": { + "summary": "Retrieve a connector", + "operationId": "get-account-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Retrieves the information of the connector with the matching connector identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS and AZURE.\n", + "tags": [ + "Account Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "put": { + "summary": "Update a connector", + "operationId": "update-account-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Updates the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConnectorRequest" + }, + "tags": [ + "Account Connector" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "connector", + "in": "path", + "required": true, + "description": "Connector identifier" + } + ], + "delete": { + "summary": "Delete a connector", + "operationId": "delete-account-scoped-connector", + "responses": { + "200": { + "description": "OK" + } + }, + "description": "Deletes the information of the connector with the matching connector identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS and AZURE.", + "tags": [ + "Account Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/connectors/{connector}/test-connection": { + "get": { + "summary": "Test a connector", + "operationId": "test-account-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorTestConnectionResponse" + } + }, + "description": "Tests connection of the connector with the matching connector identifier.\n", + "tags": [ + "Account Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "connector", + "in": "path", + "required": true, + "description": "Connector identifier" + } + ] + }, + "/v1/orgs/{org}/connectors": { + "post": { + "summary": "Create a Connector", + "operationId": "create-org-scoped-connector", + "responses": { + "201": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Creates a new connector", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConnectorRequest" + }, + "tags": [ + "Org Connector" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/orgs/{org}/connectors/{connector}": { + "get": { + "summary": "Retrieve a connector", + "operationId": "get-org-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Retrieves the information of the connector with the matching connector identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS and AZURE.\n", + "tags": [ + "Org Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "put": { + "summary": "Update a connector", + "operationId": "update-org-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Updates the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConnectorRequest" + }, + "tags": [ + "Org Connector" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete a connector", + "operationId": "delete-org-scoped-connector", + "responses": { + "200": { + "description": "OK" + } + }, + "description": "Deletes the information of the connector with the matching connector identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS and AZURE.", + "tags": [ + "Org Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "connector", + "in": "path", + "required": true, + "description": "Connector identifier" + } + ] + }, + "/v1/orgs/{org}/connectors/{connector}/test-connection": { + "get": { + "summary": "Test a connector", + "operationId": "test-org-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorTestConnectionResponse" + } + }, + "description": "Tests connection of the connector with the matching connector identifier.\n", + "tags": [ + "Org Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "connector", + "in": "path", + "required": true, + "description": "Connector identifier" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/connectors": { + "post": { + "summary": "Create a Connector", + "operationId": "create-project-scoped-connector", + "responses": { + "201": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Creates a new connector", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConnectorRequest" + }, + "tags": [ + "Project Connector" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/connectors/{connector}": { + "get": { + "summary": "Retrieve a connector", + "operationId": "get-project-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Retrieves the information of the connector with the matching connector identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS and AZURE.\n", + "tags": [ + "Project Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "put": { + "summary": "Update a connector", + "operationId": "update-project-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorResponse" + } + }, + "description": "Updates the information of the secret with the matching secret identifier.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConnectorRequest" + }, + "tags": [ + "Project Connector" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete a connector", + "operationId": "delete-project-scoped-connector", + "responses": { + "200": { + "description": "OK" + } + }, + "description": "Deletes the information of the connector with the matching connector identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS and AZURE.", + "tags": [ + "Project Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "connector", + "in": "path", + "required": true, + "description": "Connector identifier" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/connectors/{connector}/test-connection": { + "get": { + "summary": "Test a connector", + "operationId": "test-project-scoped-connector", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorTestConnectionResponse" + } + }, + "description": "Tests connection of the connector with the matching connector identifier.\n", + "tags": [ + "Project Connector" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader1" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "connector", + "in": "path", + "required": true, + "description": "Connector identifier" + } + ] + }, + "/v1/resource-groups": { + "parameters": [], + "get": { + "summary": "List Resource Groups", + "operationId": "list-resource-groups-acc", + "description": "Returns a list of Resource Groups present in the Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/AccountHeader2" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsListResponse" + } + }, + "tags": [ + "Account Resource Groups" + ] + }, + "post": { + "summary": "Create a Resource Group", + "operationId": "create-resource-group-acc", + "description": "Creates a custom Resource Group in the Account scope.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Account Resource Groups" + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateResourceGroupRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + } + } + }, + "/v1/resource-groups/{resource-group}": { + "parameters": [ + { + "$ref": "#/components/parameters/ResourceGroupParam" + } + ], + "get": { + "summary": "Retrieve a Resource Group", + "operationId": "get-resource-group-acc", + "description": "Retrieves a Resource Group from Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Account Resource Groups" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + }, + "x-internal": false + }, + "put": { + "summary": "Update a Resource Group", + "operationId": "update-resource-group-acc", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + }, + "description": "Updates a Resource Group from Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Account Resource Groups" + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateResourceGroupRequest" + } + }, + "delete": { + "summary": "Delete a Resource Group", + "operationId": "delete-resource-group-acc", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + }, + "description": "Deletes a custom Resource Group from Account scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Account Resource Groups" + ] + } + }, + "/v1/orgs/{org}/resource-groups": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + } + ], + "get": { + "summary": "List Resource Groups", + "tags": [ + "Organization Resource Groups" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsListResponse" + } + }, + "operationId": "list-resource-groups-org", + "description": "Returns a list of Resource Groups present in the Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/AccountHeader2" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ] + }, + "post": { + "summary": "Create a Resource Group", + "operationId": "create-resource-group-org", + "description": "Creates a custom Resource Group in the Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Organization Resource Groups" + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateResourceGroupRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + } + } + }, + "/v1/orgs/{org}/resource-groups/{resource-group}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ResourceGroupParam" + } + ], + "get": { + "summary": "Retrieve a Resource Group", + "operationId": "get-resource-group-org", + "description": "Retrieves a Resource Group from Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Organization Resource Groups" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + } + }, + "put": { + "summary": "Update a Resource Group", + "operationId": "update-resource-group-org", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + }, + "description": "Updates a Resource Group from Organization scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateResourceGroupRequest" + }, + "tags": [ + "Organization Resource Groups" + ] + }, + "delete": { + "summary": "Delete a Resource Group", + "operationId": "delete-resource-group-org", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + }, + "description": "Deletes a custom Resource Group from Organization scope.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Organization Resource Groups" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/resource-groups": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ], + "get": { + "summary": "List Resource Groups", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsListResponse" + } + }, + "operationId": "list-resource-groups-project", + "description": "Returns a list of Resource Groups present in the Project scope.", + "parameters": [ + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/AccountHeader2" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Project Resource Groups" + ] + }, + "post": { + "summary": "Create a Resource Group", + "operationId": "create-resource-group-project", + "description": "Creates a custom Resource Group in the Project scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Project Resource Groups" + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateResourceGroupRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/resource-groups/{resource-group}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/ResourceGroupParam" + } + ], + "get": { + "summary": "Retrieve a Resource Group", + "operationId": "get-resource-group-project", + "security": [ + { + "x-api-key": [] + } + ], + "description": "Retrieves a Resource Group from Project scope.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Project Resource Groups" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + } + }, + "put": { + "summary": "Update a Resource Group", + "operationId": "update-resource-group-project", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateResourceGroupRequest" + }, + "description": "Updates a Resource Group from Project scope.", + "tags": [ + "Project Resource Groups" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ] + }, + "delete": { + "summary": "Delete a Resource Group", + "operationId": "delete-resource-group-project", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsResponse" + } + }, + "description": "Deletes a custom Resource Group from Project scope.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + } + ], + "tags": [ + "Project Resource Groups" + ] + } + }, + "/v1/resource-groups/filter": { + "parameters": [], + "post": { + "summary": "Filter Resource Groups", + "operationId": "filter-resource-groups", + "responses": { + "200": { + "$ref": "#/components/responses/ResourceGroupsListResponse" + } + }, + "description": "Returns a list of Resource Groups based on filter criteria.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader2" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "tags": [ + "Filter Resource Groups" + ], + "requestBody": { + "$ref": "#/components/requestBodies/FilterResourceGroupRequest" + } + } + }, + "/v1/streaming-destinations": { + "parameters": [] + }, + "/v1/streaming-destinations/{streaming-destination}": { + "parameters": [ + { + "$ref": "#/components/parameters/StreamingDestinationParam" + } + ] + }, + "/v1/streaming-destinations/{streaming-destination}/validate-unique-identifier": { + "parameters": [ + { + "name": "streaming-destination", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Streaming Destination identifier" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/notification-channels": { + "get": { + "summary": "List Notification channels", + "responses": { + "200": { + "$ref": "#/components/responses/NotificationChannelListResponse" + } + }, + "operationId": "list-notification-channels", + "x-stoplight": { + "id": "110wzj88g7je4" + }, + "description": "Returns a list of notification channels for the scope.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Limit3" + }, + { + "$ref": "#/components/parameters/SearchTerm3" + }, + { + "$ref": "#/components/parameters/Sort3" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "$ref": "#/components/parameters/notification_channel_type" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/IncludeParentScope" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Channels" + ] + }, + "post": { + "summary": "Create Notification channel", + "operationId": "create-notification-channel", + "responses": { + "201": { + "$ref": "#/components/responses/NotificationChannelResponse" + } + }, + "x-stoplight": { + "id": "hnjw4i11veokz" + }, + "description": "Create Notification Channel", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/NotificationChannelRequest" + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Channels" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/notification-rules": { + "get": { + "summary": "List Notification rules", + "responses": { + "200": { + "$ref": "#/components/responses/NotificationRuleListResponse" + } + }, + "operationId": "list-notification-rules", + "x-stoplight": { + "id": "faoyjfx01yacj" + }, + "description": "Get list of notification rules", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + }, + { + "$ref": "#/components/parameters/Limit3" + }, + { + "$ref": "#/components/parameters/Sort3" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "$ref": "#/components/parameters/SearchTerm3" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "resource", + "description": "Notification entity name" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "event", + "description": "Notification event name" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Rules" + ] + }, + "post": { + "summary": "Create Notification Rule", + "operationId": "create-notification-rule", + "responses": { + "201": { + "$ref": "#/components/responses/NotificationRuleResponse" + } + }, + "x-stoplight": { + "id": "fy1asg68jb20y" + }, + "description": "Create Notification Rule", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/NotificationRuleRequest" + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Rules" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "notification-channel", + "in": "path", + "required": true, + "description": "identifier" + }, + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + } + ], + "get": { + "summary": "Get Notification channel", + "responses": { + "200": { + "$ref": "#/components/responses/NotificationChannelResponse" + } + }, + "operationId": "get-notification-channel", + "x-stoplight": { + "id": "s152cc3xhzlg4" + }, + "description": "Get Notification Channel", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Channels" + ] + }, + "delete": { + "summary": "Delete Notification Channel", + "operationId": "delete-notification-channel", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "x-stoplight": { + "id": "7wecyef99sub3" + }, + "description": "Delete notification channel", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Channels" + ] + }, + "put": { + "summary": "Update Notification Channel", + "operationId": "update-notification-channel", + "responses": { + "200": { + "$ref": "#/components/responses/NotificationChannelResponse" + } + }, + "x-stoplight": { + "id": "kqsk5i3w0wkwr" + }, + "description": "Update Notification Channel", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/NotificationChannelRequest" + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Channels" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/notification-rules/{notification-rule}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "notification-rule", + "in": "path", + "required": true, + "description": "identifier" + } + ], + "get": { + "summary": "Get Notification Rule", + "responses": { + "200": { + "$ref": "#/components/responses/NotificationRuleResponse" + } + }, + "operationId": "get-notification-rule", + "x-stoplight": { + "id": "k9gw1089s3jd6" + }, + "description": "Get notification rule", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Rules" + ] + }, + "delete": { + "summary": "Delete Notification Rule", + "operationId": "delete-notification-rule", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "headers": {}, + "description": "", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "x-stoplight": { + "id": "lsi3h5gkmxugh" + }, + "description": "Delete notification rule", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Rules" + ] + }, + "put": { + "summary": "Update Notification Rule", + "operationId": "update-notification-rule", + "responses": { + "200": { + "$ref": "#/components/responses/NotificationRuleResponse" + } + }, + "x-stoplight": { + "id": "s22i78x6pwd00" + }, + "description": "Update Notification Rule", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/NotificationRuleRequest" + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Notification Rules" + ] + } + }, + "/v1/orgs/{org}/notification-channels": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/orgs/{org}/notification-rules": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/orgs/{org}/notification-channels/{notification-channel}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "notification-channel", + "in": "path", + "required": true, + "description": "identifier" + }, + { + "$ref": "#/components/parameters/OrgPathParam" + } + ] + }, + "/v1/notification-channels/{notification-channel}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "notification-channel", + "in": "path", + "required": true, + "description": "identifier" + } + ] + }, + "/v1/orgs/{org}/notification-rules/{notification-rule}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "notification-rule", + "in": "path", + "required": true, + "description": "identifier" + } + ] + }, + "/v1/notification-rules/{notification-rule}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "notification-rule", + "in": "path", + "required": true, + "description": "identifier" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/notification-rules/validate-rules/{notification-rule}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "notification-rule", + "in": "path", + "required": true, + "description": "Notification Rule Identifier" + } + ], + "get": { + "summary": "Validate notification rule identifier", + "tags": [ + "Notification Rules" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ValidateIdentifierResponse" + }, + "302": { + "description": "Found" + } + }, + "operationId": "validate-notification-rule-identifier", + "x-stoplight": { + "id": "zrupqdwqv03id" + }, + "description": "Validate notification rule identifier", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/validate-rules/{notification-rule}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "notification-rule", + "in": "path", + "required": true, + "description": "Notification Rule Identifier" + } + ], + "get": { + "summary": "Validate notification rule identifier", + "tags": [ + "Notification Rules" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ValidateIdentifierResponse" + }, + "302": { + "description": "Found" + } + }, + "operationId": "validate-notification-rule-identifier-org", + "x-stoplight": { + "id": "8ouru8hu0buzm" + }, + "description": "Validate notification rule identifier org level", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/validate-rules/{notification-rule}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "notification-rule", + "in": "path", + "required": true, + "description": "identifier" + } + ], + "get": { + "summary": "Validate notification rule identifier", + "tags": [ + "Notification Rules" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ValidateIdentifierResponse" + }, + "302": { + "description": "Found" + } + }, + "operationId": "validate-notification-rule-identifier-account", + "x-stoplight": { + "id": "imzpediwp0dzw" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Validate notification rule identifier", + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/validate-channels/{notification-channel}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "notification-channel", + "in": "path", + "required": true, + "description": "identifier" + } + ], + "get": { + "summary": "Validate unique identifier for notification channel", + "tags": [ + "Notification Channels" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ValidateIdentifierResponse" + }, + "302": { + "description": "Found" + } + }, + "operationId": "validate-notification-channel-identifier-org", + "x-stoplight": { + "id": "pa28zngw5cpyb" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/validate-channels/{notification-channel}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgPathParam" + }, + { + "$ref": "#/components/parameters/ProjectPathParam" + }, + { + "schema": { + "type": "string" + }, + "name": "notification-channel", + "in": "path", + "required": true, + "description": "identifier" + } + ], + "get": { + "summary": "Validate Notification Channel Identifier", + "responses": { + "200": { + "$ref": "#/components/responses/ValidateIdentifierResponse" + }, + "302": { + "description": "Found" + } + }, + "operationId": "validate-notification-channel-identifier", + "x-stoplight": { + "id": "3b5yactyqx0hs" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "tags": [ + "Notification Channels" + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/validate-channels/{notification-channel}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "notification-channel", + "in": "path", + "required": true, + "description": "identifier" + } + ], + "get": { + "summary": "Validate Notification channel identifier", + "tags": [ + "Notification Channels" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ValidateIdentifierResponse" + }, + "302": { + "description": "Found" + } + }, + "operationId": "validate-notification-channel-identifier-account", + "x-stoplight": { + "id": "6sqcbt99vrutt" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "description": "Validate Notification Channel Indetifier", + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/attachments": { + "parameters": [] + }, + "/v1/orgs/{org}/projects/{project}/pipelines": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ], + "get": { + "summary": "List Pipelines", + "operationId": "list-pipelines", + "description": "Returns a list of Pipelines.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/Sort4" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "schema": { + "type": "string", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO" + ] + }, + "in": "query", + "name": "module", + "description": "Harness module which is part of the Pipeline." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "filter_identifier", + "description": "Identifier of a saved Filter." + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "pipeline_identifiers", + "description": "List of Pipeline identifiers on the basis of which the Pipelines are filtered." + }, + { + "schema": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "in": "query", + "name": "name", + "description": "Pipeline Name on the basis of which the Pipelines are filtered." + }, + { + "schema": { + "type": "string", + "maxLength": 1024 + }, + "in": "query", + "name": "description", + "description": "Pipeline Description on the basis of which the Pipelines are filtered." + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 128, + "example": "key:value" + }, + "examples": { + "key_and_value": { + "value": "key:value", + "summary": "Tag having both Key and Value." + }, + "key_only": { + "value": "key", + "summary": "Tag having only Key." + } + }, + "in": "query", + "name": "tags", + "description": "Filter tags as a key:value pair." + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "service_names", + "description": "Service names on the basis of which the Pipelines are filtered. [CD]" + }, + { + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "in": "query", + "name": "env_names", + "description": "Names of Environments on the basis of which the Pipelines are filtered. [CD]" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "deployment_type", + "description": "Deployment type on the basis of which the Pipelines are filtered. [CD]" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "repository", + "description": "Repository name on the basis of which the Pipelines are filtered. [CI]" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Pipelines" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PipelineListResponseBody" + } + }, + "x-stoplight": { + "id": "30zs16zs1jnaq" + } + }, + "post": { + "summary": "Create a Pipeline", + "operationId": "create-pipeline", + "description": "Creates a Pipeline.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "tags": [ + "Pipelines" + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelineCreateRequestBody" + }, + "responses": { + "201": { + "$ref": "#/components/responses/PipelineCreateResponseBody" + } + }, + "x-stoplight": { + "id": "mdxs0qz4oh0dc" + } + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/triggers": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + }, + { + "$ref": "#/components/parameters/IgnoreError" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/triggers/{trigger}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + }, + { + "$ref": "#/components/parameters/TriggerParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ], + "get": { + "summary": "Retrieve a Pipeline", + "operationId": "get-pipeline", + "security": [ + { + "x-api-key": [] + } + ], + "description": "Retrieves a Pipeline.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/Branch" + }, + { + "schema": { + "type": "boolean", + "default": false + }, + "in": "query", + "name": "template_applied", + "description": "If true, returns Pipeline YAML with Templates applied on it." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "connector_ref", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "repo_name", + "description": "Name of the repository (for Git Experience)." + }, + { + "schema": { + "type": "string", + "default": "false" + }, + "in": "header", + "name": "Load-From-Cache", + "description": "Flag to enable loading the remote pipeline from git or git cache" + }, + { + "schema": { + "type": "boolean", + "default": false + }, + "in": "query", + "name": "load_from_fallback_branch", + "description": "Flag to load the pipeline from the created non default branch" + }, + { + "schema": { + "type": "boolean", + "default": "false" + }, + "in": "query", + "name": "validate_async", + "description": "Flag to tell whether to start an asynchronous validation process or not" + } + ], + "tags": [ + "Pipelines" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PipelineGetResponseBody" + } + }, + "x-stoplight": { + "id": "rn41qzdjn8lh1" + } + }, + "put": { + "summary": "Update a Pipeline", + "operationId": "update-pipeline", + "security": [ + { + "x-api-key": [] + } + ], + "description": "Updates a Pipeline.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "tags": [ + "Pipelines" + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelineUpdateRequestBody" + }, + "responses": { + "200": { + "$ref": "#/components/responses/PipelineCreateResponseBody" + } + }, + "x-stoplight": { + "id": "9gbauax4g8mkt" + } + }, + "delete": { + "summary": "Delete a Pipeline", + "operationId": "delete-pipeline", + "description": "Deletes a Pipeline.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "tags": [ + "Pipelines" + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "x-stoplight": { + "id": "4jx8uy7y3r44p" + } + }, + "patch": { + "summary": "Patch API for pipeline", + "operationId": "patch-pipeline", + "responses": { + "200": { + "$ref": "#/components/responses/PipelineCreateResponseBody" + } + }, + "description": "Patch API for pipeline", + "tags": [ + "Pipelines" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelinePatchRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/validate": { + "parameters": [ + { + "name": "org", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Organization identifier" + }, + { + "name": "project", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Project identifier" + }, + { + "name": "pipeline", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Pipeline identifier" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/validate/{uuid}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/UuidParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/input-sets": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ], + "post": { + "summary": "Create an Input Set", + "operationId": "create-input-set", + "responses": { + "201": { + "$ref": "#/components/responses/InputSetResponseBody" + } + }, + "tags": [ + "Input Sets" + ], + "description": "Creates an Input Set for a Pipeline.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PipelineInputSetParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InputSetCreateRequestBody" + }, + "x-stoplight": { + "id": "rs93jxpccd461" + } + }, + "get": { + "summary": "List Input Sets", + "operationId": "list-input-sets", + "responses": { + "200": { + "$ref": "#/components/responses/InputSetListResponseBody" + } + }, + "tags": [ + "Input Sets" + ], + "description": "Returns a List of Input Sets for a Pipeline.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PipelineInputSetParam" + }, + { + "$ref": "#/components/parameters/PageIndex" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "$ref": "#/components/parameters/Sort4" + }, + { + "$ref": "#/components/parameters/Order" + } + ], + "x-stoplight": { + "id": "r1m5r04ew0edo" + } + } + }, + "/v1/orgs/{org}/projects/{project}/input-sets/{input-set}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/InputSetParam" + } + ], + "get": { + "summary": "Retrieve an Input Set", + "tags": [ + "Input Sets" + ], + "responses": { + "200": { + "$ref": "#/components/responses/InputSetResponseBody" + } + }, + "operationId": "get-input-set", + "description": "Retrieves an Input Set for a Pipeline.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PipelineInputSetParam" + }, + { + "$ref": "#/components/parameters/Branch" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "parent_entity_connector_ref", + "description": "Connector reference for Parent Entity (Pipeline)." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "parent_entity_repo_name", + "description": "Repository name for Parent Entity (Pipeline)." + }, + { + "schema": { + "type": "boolean", + "default": "false" + }, + "in": "query", + "name": "load_from_fallback_branch", + "description": "Flag to load the pipeline from the created non default branch" + }, + { + "schema": { + "type": "string", + "default": "false" + }, + "in": "header", + "description": "Specifies whether the remote pipeline should be loaded from Git or Git cache.", + "name": "Load-From-Cache" + } + ], + "x-stoplight": { + "id": "cghityrhzn3qi" + } + }, + "put": { + "summary": "Update an Input Set", + "operationId": "update-input-set", + "responses": { + "200": { + "$ref": "#/components/responses/InputSetResponseBody" + } + }, + "description": "Updates an Input Set for a Pipeline.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PipelineInputSetParam" + } + ], + "tags": [ + "Input Sets" + ], + "requestBody": { + "$ref": "#/components/requestBodies/InputSetUpdateRequestBody" + }, + "x-stoplight": { + "id": "yngruwctpu1nf" + } + }, + "delete": { + "summary": "Delete an Input Set", + "operationId": "delete-input-set", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "tags": [ + "Input Sets" + ], + "description": "Deletes an Input Set for a Pipeline.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PipelineInputSetParam" + } + ], + "x-stoplight": { + "id": "mgc4ka4g4nczv" + } + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/inputs": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/move-config": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ], + "post": { + "summary": "Move Pipeline YAML from inline to remote", + "operationId": "moveConfig", + "description": "Creates a remote entity by fetching pipeline YAML from Harness.", + "responses": { + "200": { + "$ref": "#/components/responses/PipelineMoveConfigResponseBody" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelineMoveConfigRequestBody" + }, + "tags": [ + "Pipelines" + ], + "x-internal": false, + "x-stoplight": { + "id": "qw42s90zscen1" + } + } + }, + "/v1/orgs/{org}/projects/{project}/input-sets/{input-set}/move-config": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/InputSetParam" + } + ], + "post": { + "summary": "Move InputSet YAML from inline to remote", + "operationId": "inputSetsMoveConfig", + "description": "Creates a remote entity by fetching the input set YAML from Harness.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InputSetMoveConfigRequestBody" + }, + "responses": { + "200": { + "$ref": "#/components/responses/InputSetMoveConfigResponseBody" + } + }, + "tags": [ + "Input Sets" + ], + "x-internal": false, + "x-stoplight": { + "id": "z1803ifds8q83" + } + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/import": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ], + "post": { + "summary": "Get Pipeline YAML from Git Repository", + "operationId": "importPipelineFromGit", + "responses": { + "200": { + "$ref": "#/components/responses/PipelineSaveResponseBody" + } + }, + "description": "Fetches Pipeline YAML from Git Repository and saves a record for it in Harness", + "tags": [ + "Pipelines" + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelineImportRequestBody" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "x-stoplight": { + "id": "1zb3cae63roiy" + } + } + }, + "/v1/orgs/{org}/projects/{project}/input-sets/{input-set}/import": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/InputSetParam" + } + ], + "post": { + "summary": "Get Input Set YAML from Git Repository", + "operationId": "importInputSetFromGit", + "responses": { + "200": { + "$ref": "#/components/responses/InputSetImportResponseBody" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PipelineInputSetParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InputSetImportRequestBody" + }, + "description": "Fetches InputSet YAML from Git Repository and saves a record for it in Harness", + "tags": [ + "Input Sets" + ], + "x-stoplight": { + "id": "qa15eqrayvc6f" + } + } + }, + "/v1/orgs/{org}/projects/{project}/approvals/execution/{execution-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/ExecutionIdParam" + } + ], + "get": { + "summary": "Gets Approval Instances by Execution Id", + "operationId": "getApprovalInstancesByExecutionId", + "responses": { + "200": { + "$ref": "#/components/responses/ApprovalInstanceListResponseBody" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + }, + "description": "Gets Approval Instances by Execution Id [Beta]", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "name": "approval_status", + "in": "query", + "description": "This filters approval instances based on status", + "schema": { + "type": "string", + "enum": [ + "WAITING", + "APPROVED", + "REJECTED", + "FAILED", + "ABORTED", + "EXPIRED" + ] + } + }, + { + "name": "approval_type", + "in": "query", + "description": "This filters approval instances based on type", + "schema": { + "type": "string", + "enum": [ + "HarnessApproval", + "JiraApproval", + "CustomApproval", + "ServiceNowApproval" + ] + } + }, + { + "name": "node_execution_id", + "in": "query", + "description": "This filters approval instances based on runtime identifier of the step", + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Approvals" + ], + "x-stoplight": { + "id": "wb59o71f1bds4" + } + }, + "post": { + "summary": "Approve or Reject an Execution by Pipeline Execution ID", + "operationId": "addHarnessApprovalActivityByPipelineExecutionId", + "responses": { + "200": { + "$ref": "#/components/responses/ApprovalInstanceResponseBody" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + } + } + } + } + }, + "x-stoplight": { + "id": "vea4t933wijxl" + }, + "description": "Approve or Reject an Execution by Pipeline Execution ID [Beta]", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "callback_id", + "description": "This filters approval instances based on callback id given in the step parameters" + } + ], + "tags": [ + "Approvals" + ], + "requestBody": { + "$ref": "#/components/requestBodies/HarnessApprovalActivityRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/git-metadata": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ], + "put": { + "summary": "Update GitMetadata for Remote Pipelines", + "operationId": "update-pipeline-git-metadata", + "responses": { + "200": { + "$ref": "#/components/responses/GitMetadataUpdateResponseBody" + } + }, + "requestBody": { + "$ref": "#/components/requestBodies/GitMetadataUpdateRequestBody" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + } + ], + "tags": [ + "Pipelines" + ], + "description": "Update git-metadata in remote pipeline", + "x-stoplight": { + "id": "i92x28iwkosxx" + } + } + }, + "/v1/orgs/{org}/projects/{project}/input-sets/{input-set}/git-metadata": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/InputSetParam" + } + ], + "put": { + "summary": "Update GitMetadata for Remote InputSet", + "operationId": "update-input-set-git-metadata", + "responses": { + "200": { + "$ref": "#/components/responses/GitMetadataUpdateResponseBody" + } + }, + "requestBody": { + "$ref": "#/components/requestBodies/GitMetadataUpdateRequestBody" + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Input Sets" + ], + "description": "Update git-metadata in remote inputSet and return the updated inputSet", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/PipelineInputSetParam" + } + ], + "x-stoplight": { + "id": "27vwjxn4ddjd9" + } + } + }, + "/v1/pipeline-schema/individual-schema": { + "parameters": [] + }, + "/v1/pipeline-schema/inputs-schema": { + "parameters": [] + }, + "/v1/step-pallete": { + "parameters": [] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ], + "post": { + "summary": "Execute Pipeline", + "operationId": "execute-pipeline", + "responses": { + "200": { + "$ref": "#/components/responses/PipelineExecuteResponseBody" + } + }, + "x-stoplight": { + "id": "1afpa0a08cfyg" + }, + "requestBody": { + "$ref": "#/components/requestBodies/PipelineExecuteRequestBody" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "module", + "description": "Module type for the entity. If its from deployments,type will be CD , if its from build type will be CI" + }, + { + "schema": { + "type": "boolean", + "default": "false" + }, + "in": "query", + "name": "use_fqn_if_error_response", + "description": "Use FQN in error response." + }, + { + "schema": { + "type": "boolean", + "default": "false" + }, + "in": "query", + "name": "notify_only_user" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "notes", + "description": "Notes of a pipeline execution" + }, + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/Branch" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "connector_ref", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "repo_name", + "description": "Name of the repository (for Git Experience)." + } + ], + "description": "Pipeline Execution API", + "tags": [ + "Pipeline Execution" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/inputs-schema": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/input-sets/merge": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/rerun/{execution-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + }, + { + "$ref": "#/components/parameters/ExecutionIdParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/retry/{execution-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + }, + { + "$ref": "#/components/parameters/ExecutionIdParam" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/stages-execution-list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ], + "get": { + "summary": "Get Stages execution List for a given Pipeline execution.", + "tags": [ + "Pipeline Execution" + ], + "responses": { + "200": { + "$ref": "#/components/responses/StageExecutionResponseList" + } + }, + "operationId": "get-stages-execution-list", + "x-stoplight": { + "id": "aixvxgt5qd21j" + }, + "description": "Returns list of Stage identifiers with their names and stage dependencies", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "schema": { + "type": "string", + "default": "false" + }, + "in": "header", + "name": "Load-From-Cache", + "description": "Flag to enable loading the remote Pipeline from git or git cache" + }, + { + "$ref": "#/components/parameters/Branch" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "connector_ref", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "repo_name", + "description": "Name of the repository (for Git Experience)." + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/rerun/{execution-id}/stages": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + }, + { + "$ref": "#/components/parameters/ExecutionIdParam" + } + ], + "post": { + "summary": "Re-run Stages Execution of a Pipeline", + "tags": [ + "Pipeline Execution" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PipelineExecuteResponseBody" + } + }, + "operationId": "rerun-stages-execution-of-pipeline", + "x-stoplight": { + "id": "fiduvh2471by2" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "$ref": "#/components/parameters/Branch" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "connector_ref", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "repo_name", + "description": "Name of the repository (for Git Experience)" + }, + { + "schema": { + "type": "boolean", + "default": false + }, + "in": "query", + "name": "use_fqn_if_error", + "description": "Use FQN in error response" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "module", + "description": "Module type for the entity. If its from deployments,type will be CD , if its from build type will be CI." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "notes", + "description": "Notes of a pipeline execution" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RunStageRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/stages": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/PipelineParam" + } + ], + "post": { + "summary": "Execute given Stages of a Pipeline", + "tags": [ + "Pipeline Execution" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PipelineExecuteResponseBody" + } + }, + "operationId": "execute-stages-with-input-yaml", + "x-stoplight": { + "id": "gp30uxkm66ijj" + }, + "description": "Execute given Stages of a Pipeline with Input Yaml", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader4" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "module", + "description": "Module type for the entity. If its from deployments,type will be CD , if its from build type will be CI." + }, + { + "schema": { + "type": "string", + "default": "false" + }, + "in": "query", + "name": "use_fqn_if_error", + "description": "Use FQN in error response." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "notes", + "description": "Notes of a Pipeline execution." + }, + { + "$ref": "#/components/parameters/Branch" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "connector_ref", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "repo_name", + "description": "Name of the repository (for Git Experience)." + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RunStageRequestBody" + } + } + }, + "/v1/templates": { + "post": { + "summary": "Create Template", + "operationId": "create-templates-acc", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TemplateCreateBody" + }, + "responses": { + "201": { + "$ref": "#/components/responses/TemplateResponse" + } + }, + "tags": [ + "Account Template" + ], + "description": "Creates a Template in the Account scope." + }, + "get": { + "summary": "Get Templates List", + "operationId": "get-templates-list-acc", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateMetaDataList" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit4" + }, + { + "$ref": "#/components/parameters/Sort5" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "$ref": "#/components/parameters/SearchTerm4" + }, + { + "$ref": "#/components/parameters/TemplateListType" + }, + { + "$ref": "#/components/parameters/IncludeAllTemplatesAccessibleAtScope" + }, + { + "$ref": "#/components/parameters/TemplateNames" + }, + { + "$ref": "#/components/parameters/TemplateIds" + }, + { + "$ref": "#/components/parameters/Description" + }, + { + "$ref": "#/components/parameters/EntityType" + }, + { + "$ref": "#/components/parameters/TemplateChildTypes" + } + ], + "tags": [ + "Account Template" + ], + "description": "Retrieves list of Template with meta-data at Account scope." + }, + "parameters": [] + }, + "/v1/templates/git-metadata/{template}": { + "put": { + "summary": "Update Git details", + "operationId": "update-git-metadata-details", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TemplateUpdateGitMetadataRequestBody" + }, + "responses": { + "200": { + "$ref": "#/components/responses/TemplateUpdateGitMetadataResponse" + } + }, + "tags": [ + "Account Template" + ], + "description": "Update Git details for multiple version.", + "x-stoplight": { + "id": "tog1x9p2m2dy5" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/Template" + } + ] + }, + "/v1/templates/{template}": { + "parameters": [ + { + "$ref": "#/components/parameters/Template" + } + ], + "get": { + "summary": "Get Stable Template", + "tags": [ + "Account Template" + ], + "responses": { + "200": { + "$ref": "#/components/responses/TemplateWithInputsResponse" + } + }, + "operationId": "get-template-stable-acc", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/GetTemplateInputYaml" + }, + { + "$ref": "#/components/parameters/Branch1" + }, + { + "$ref": "#/components/parameters/ParentConnectorRef" + }, + { + "$ref": "#/components/parameters/ParentRepoName" + }, + { + "$ref": "#/components/parameters/ParentAccountId" + }, + { + "$ref": "#/components/parameters/ParentOrgId" + }, + { + "$ref": "#/components/parameters/ParentProjectId" + } + ], + "description": "Retrieves stable version of Template at Account scope." + } + }, + "/v1/templates/{template}/versions/{version}": { + "parameters": [ + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "get": { + "summary": "Retrieve a Template", + "tags": [ + "Account Template" + ], + "responses": { + "200": { + "$ref": "#/components/responses/TemplateWithInputsResponse" + } + }, + "operationId": "get-template-acc", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/GetTemplateInputYaml" + }, + { + "$ref": "#/components/parameters/Branch1" + }, + { + "$ref": "#/components/parameters/ParentConnectorRef" + }, + { + "$ref": "#/components/parameters/ParentRepoName" + }, + { + "$ref": "#/components/parameters/ParentAccountId" + }, + { + "$ref": "#/components/parameters/ParentOrgId" + }, + { + "$ref": "#/components/parameters/ParentProjectId" + } + ], + "description": "Retrieves particular version of Template at Account scope." + }, + "put": { + "summary": "Update Template", + "operationId": "update-template-acc", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Account Template" + ], + "description": "Updates particular version of Template at Account scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateUpdateBody" + } + }, + "delete": { + "summary": "Delete Template", + "operationId": "delete-template-acc", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/Comments" + }, + { + "$ref": "#/components/parameters/ForceDelete1" + } + ], + "tags": [ + "Account Template" + ], + "description": "Deletes particular version of Template at Account scope.", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + } + } + }, + "/v1/templates/{template}/versions/{version}/stable": { + "parameters": [ + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "put": { + "summary": "Update Stable Template", + "operationId": "update-template-stable-acc", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateUpdateStableResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Account Template" + ], + "description": "Updates the stable version of Template at Account scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateFetchBody" + } + } + }, + "/v1/orgs/{org}/templates/git-metadata/{template}": { + "put": { + "summary": "Update Git details", + "operationId": "update-git-metadata-details-org", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TemplateUpdateGitMetadataRequestBody" + }, + "responses": { + "200": { + "$ref": "#/components/responses/TemplateUpdateGitMetadataResponse" + } + }, + "tags": [ + "Org Template" + ], + "description": "Update Git details for multiple version.", + "x-stoplight": { + "id": "xu5qlm73hydwx" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Org" + } + ] + }, + "/v1/orgs/{org}/templates": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + } + ], + "post": { + "summary": "Create Template", + "operationId": "create-templates-org", + "responses": { + "201": { + "$ref": "#/components/responses/TemplateResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Org Template" + ], + "description": "Creates a Template in the Organization scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateCreateBody" + } + }, + "get": { + "summary": "Get Templates List", + "operationId": "get-templates-list-org", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateMetaDataList" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit4" + }, + { + "$ref": "#/components/parameters/Sort5" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "$ref": "#/components/parameters/SearchTerm4" + }, + { + "$ref": "#/components/parameters/TemplateListType" + }, + { + "$ref": "#/components/parameters/IncludeAllTemplatesAccessibleAtScope" + }, + { + "$ref": "#/components/parameters/TemplateNames" + }, + { + "$ref": "#/components/parameters/TemplateIds" + }, + { + "$ref": "#/components/parameters/Description" + }, + { + "$ref": "#/components/parameters/EntityType" + }, + { + "$ref": "#/components/parameters/TemplateChildTypes" + } + ], + "tags": [ + "Org Template" + ], + "description": "Retrieves list of Template with meta-data at Organization scope." + } + }, + "/v1/orgs/{org}/templates/{template}": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Template" + } + ], + "get": { + "summary": "Get Stable Template", + "operationId": "get-template-stable-org", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateWithInputsResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/GetTemplateInputYaml" + }, + { + "$ref": "#/components/parameters/Branch1" + }, + { + "$ref": "#/components/parameters/ParentConnectorRef" + }, + { + "$ref": "#/components/parameters/ParentRepoName" + }, + { + "$ref": "#/components/parameters/ParentAccountId" + }, + { + "$ref": "#/components/parameters/ParentOrgId" + }, + { + "$ref": "#/components/parameters/ParentProjectId" + } + ], + "tags": [ + "Org Template" + ], + "description": "Retrieves stable version of Template at Organization scope." + } + }, + "/v1/orgs/{org}/templates/{template}/versions/{version}": { + "parameters": [ + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "get": { + "summary": "Retrieve a Template", + "operationId": "get-template-org", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateWithInputsResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/GetTemplateInputYaml" + }, + { + "$ref": "#/components/parameters/Branch1" + }, + { + "$ref": "#/components/parameters/ParentConnectorRef" + }, + { + "$ref": "#/components/parameters/ParentRepoName" + }, + { + "$ref": "#/components/parameters/ParentAccountId" + }, + { + "$ref": "#/components/parameters/ParentOrgId" + }, + { + "$ref": "#/components/parameters/ParentProjectId" + } + ], + "tags": [ + "Org Template" + ], + "description": "Retrieves particular version of Template at Organization scope." + }, + "put": { + "summary": "Update Template", + "operationId": "update-template-org", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Org Template" + ], + "description": "Updates particular version of Template at Organization scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateUpdateBody" + } + }, + "delete": { + "summary": "Delete Template", + "operationId": "delete-template-org", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/Comments" + }, + { + "$ref": "#/components/parameters/ForceDelete1" + } + ], + "tags": [ + "Org Template" + ], + "description": "Deletes particular version of Template at Organization scope.", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + } + } + }, + "/v1/orgs/{org}/templates/{template}/versions/{version}/stable": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "put": { + "summary": "Update Stable Template", + "operationId": "update-template-stable-org", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateUpdateStableResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Org Template" + ], + "description": "Updates the stable version of Template at Organization scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateFetchBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/templates/git-metadata/{template}": { + "put": { + "summary": "Update Git details", + "operationId": "update-git-metadata-details-project", + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Project" + }, + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TemplateUpdateGitMetadataRequestBody" + }, + "responses": { + "200": { + "$ref": "#/components/responses/TemplateUpdateGitMetadataResponse" + } + }, + "tags": [ + "Project Template" + ], + "description": "Update Git details for multiple version.", + "x-stoplight": { + "id": "9ta5osrcrp83u" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Project" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/templates": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Project" + } + ], + "post": { + "summary": "Create Template", + "operationId": "create-templates-project", + "responses": { + "201": { + "$ref": "#/components/responses/TemplateResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Project Template" + ], + "description": "Creates a Template in the Project scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateCreateBody" + } + }, + "get": { + "summary": "Get Templates List", + "operationId": "get-templates-list-project", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateMetaDataList" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/Page" + }, + { + "$ref": "#/components/parameters/Limit4" + }, + { + "$ref": "#/components/parameters/Sort5" + }, + { + "$ref": "#/components/parameters/Order" + }, + { + "$ref": "#/components/parameters/SearchTerm4" + }, + { + "$ref": "#/components/parameters/TemplateListType" + }, + { + "$ref": "#/components/parameters/IncludeAllTemplatesAccessibleAtScope" + }, + { + "$ref": "#/components/parameters/TemplateNames" + }, + { + "$ref": "#/components/parameters/TemplateIds" + }, + { + "$ref": "#/components/parameters/Description" + }, + { + "$ref": "#/components/parameters/EntityType" + }, + { + "$ref": "#/components/parameters/TemplateChildTypes" + } + ], + "tags": [ + "Project Template" + ], + "description": "Retrieves list of Template with meta-data at Project scope." + } + }, + "/v1/orgs/{org}/projects/{project}/templates/{template}": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Project" + }, + { + "$ref": "#/components/parameters/Template" + } + ], + "get": { + "summary": "Get Stable Template", + "tags": [ + "Project Template" + ], + "responses": { + "200": { + "$ref": "#/components/responses/TemplateWithInputsResponse" + } + }, + "operationId": "get-template-stable-project", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/GetTemplateInputYaml" + }, + { + "$ref": "#/components/parameters/Branch1" + }, + { + "$ref": "#/components/parameters/ParentConnectorRef" + }, + { + "$ref": "#/components/parameters/ParentRepoName" + }, + { + "$ref": "#/components/parameters/ParentAccountId" + }, + { + "$ref": "#/components/parameters/ParentOrgId" + }, + { + "$ref": "#/components/parameters/ParentProjectId" + } + ], + "description": "Retrieves stable version of Template at Project scope." + } + }, + "/v1/orgs/{org}/projects/{project}/templates/{template}/versions/{version}": { + "parameters": [ + { + "$ref": "#/components/parameters/Project" + }, + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "get": { + "summary": "Retrieve a Template", + "tags": [ + "Project Template" + ], + "responses": { + "200": { + "$ref": "#/components/responses/TemplateWithInputsResponse" + } + }, + "operationId": "get-template-project", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/GetTemplateInputYaml" + }, + { + "$ref": "#/components/parameters/Branch1" + }, + { + "$ref": "#/components/parameters/ParentConnectorRef" + }, + { + "$ref": "#/components/parameters/ParentRepoName" + }, + { + "$ref": "#/components/parameters/ParentAccountId" + }, + { + "$ref": "#/components/parameters/ParentOrgId" + }, + { + "$ref": "#/components/parameters/ParentProjectId" + } + ], + "description": "Retrieves particular version of Template at Project scope." + }, + "put": { + "summary": "Update Template", + "operationId": "update-template-project", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Project Template" + ], + "description": "Updates particular version of Template at Project scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateUpdateBody" + } + }, + "delete": { + "summary": "Delete Template", + "operationId": "delete-template-project", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + }, + { + "$ref": "#/components/parameters/Comments" + }, + { + "$ref": "#/components/parameters/ForceDelete1" + } + ], + "tags": [ + "Project Template" + ], + "description": "Deletes particular version of Template at Project scope.", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": {} + } + } + }, + "application/yaml": { + "schema": { + "type": "object", + "properties": {} + }, + "examples": { + "example-resp": { + "value": "{}\n" + } + } + } + } + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/templates/{template}/versions/{version}/stable": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Project" + }, + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Version" + } + ], + "put": { + "summary": "Update Stable Template", + "operationId": "update-template-stable-project", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateUpdateStableResponse" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "tags": [ + "Project Template" + ], + "description": "Updates the stable version of Template at Project scope.", + "requestBody": { + "$ref": "#/components/requestBodies/TemplateFetchBody" + } + } + }, + "/v1/templates/{template}/import": { + "post": { + "summary": "Import Template", + "operationId": "import-template-acc", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateImportResponseBody" + } + }, + "requestBody": { + "$ref": "#/components/requestBodies/TemplateImportRequestBody" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "description": "Import template at account level", + "tags": [ + "Account Template" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/Template" + } + ] + }, + "/v1/orgs/{org}/templates/{template}/import": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Template" + } + ], + "post": { + "summary": "Import template", + "operationId": "import-template-org", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateImportResponseBody" + } + }, + "description": "Import template at org level", + "tags": [ + "Org Template" + ], + "requestBody": { + "$ref": "#/components/requestBodies/TemplateImportRequestBody" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/templates/{template}/import": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Project" + }, + { + "$ref": "#/components/parameters/Template" + } + ], + "post": { + "summary": "Import Template", + "operationId": "import-template-project", + "responses": { + "200": { + "$ref": "#/components/responses/TemplateImportResponseBody" + } + }, + "description": "Import template at a project level", + "tags": [ + "Project Template" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeaderParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TemplateImportRequestBody" + } + } + }, + "/v1/template-schema/individual-schema": { + "parameters": [] + }, + "/v1/templates/{template}/versions/{version}/inputs-schema": { + "parameters": [ + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Version" + } + ] + }, + "/v1/orgs/{org}/templates/{template}/versions/{version}/inputs-schema": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Version" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/templates/{template}/versions/{version}/inputs-schema": { + "parameters": [ + { + "$ref": "#/components/parameters/Org" + }, + { + "$ref": "#/components/parameters/Project" + }, + { + "$ref": "#/components/parameters/Template" + }, + { + "$ref": "#/components/parameters/Version" + } + ] + }, + "/v1/backstage-env-variables/{backstage-env-variable}": { + "parameters": [ + { + "$ref": "#/components/parameters/BackstageEnvVariable" + } + ] + }, + "/v1/backstage-env-variables/reload/{namespace}": { + "parameters": [ + { + "$ref": "#/components/parameters/NamespacePathParam" + } + ] + }, + "/v1/status-info/{type}": { + "parameters": [ + { + "$ref": "#/components/parameters/StatusType" + } + ] + }, + "/v1/account-info/{namespace}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "namespace", + "description": "Backstage Namespace", + "in": "path", + "required": true + } + ] + }, + "/v1/layout/{layout-identifier}": { + "parameters": [ + { + "$ref": "#/components/parameters/LayoutIdentifier" + } + ] + }, + "/v1/plugin-toggle/{plugin-id}": { + "post": { + "summary": "Toggle Plugin", + "operationId": "toggle-plugin-for-account", + "description": "Toggle Backstage Plugin", + "responses": { + "200": { + "$ref": "#/components/responses/AppConfigResponse" + } + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "in": "header", + "name": "Harness-Account", + "description": "Identifier field of the account the resource is scoped to." + }, + { + "$ref": "#/components/parameters/PluginName" + }, + { + "$ref": "#/components/parameters/Enabled" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "AppConfig" + ], + "x-internal": false + }, + "parameters": [ + { + "$ref": "#/components/parameters/PluginId" + } + ] + }, + "/v1/plugins-info": { + "get": { + "summary": "List Available Plugins", + "tags": [ + "PluginInfo" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PluginInfoResponseList" + } + }, + "operationId": "get-plugins", + "description": "Get all plugins available", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "x-internal": false + } + }, + "/v1/plugins-info/{plugin-id}": { + "get": { + "summary": "Get Plugin", + "tags": [ + "PluginInfo" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PluginDetailedInfoResponse" + } + }, + "operationId": "get-plugins-info-plugin-id", + "description": "Get plugin details for given pluginId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/Meta" + } + ], + "x-internal": false + }, + "parameters": [ + { + "$ref": "#/components/parameters/PluginId" + } + ] + }, + "/v1/app-config": { + "post": { + "summary": "Save Or Update Plugin Config", + "operationId": "save-or-update-plugin-app-config", + "description": "Save or Update Plugin Config", + "responses": { + "200": { + "$ref": "#/components/responses/AppConfigResponse" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/AppConfigRequest" + }, + "x-internal": false, + "tags": [ + "AppConfig" + ] + } + }, + "/v1/connector-info": { + "get": { + "summary": "Get Connector Info", + "tags": [ + "ConnectorInfo" + ], + "operationId": "get-connector-info", + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorInfoResponse" + } + }, + "description": "Get Connector Info", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "x-internal": false + }, + "post": { + "summary": "Create or Update Connector Info", + "tags": [ + "ConnectorInfo" + ], + "operationId": "save-connector-info", + "responses": { + "201": { + "$ref": "#/components/responses/ConnectorInfoResponse" + } + }, + "description": "Create or update connector info", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConnectorInfoRequest" + }, + "x-internal": false + } + }, + "/v1/connector-info/{provider-type}": { + "get": { + "summary": "Get Connector Info by Provider Type", + "tags": [ + "ConnectorInfo" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ConnectorInfoResponse" + } + }, + "operationId": "get-connector-info-by-providerType", + "description": "Get connector info by connector provider type", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/ProviderType" + } + ], + "x-internal": false + } + }, + "/v1/plugin/request": { + "post": { + "summary": "Request for a Plugin", + "operationId": "post-plugin-request", + "responses": { + "201": { + "description": "Created" + } + }, + "tags": [ + "PluginInfo" + ], + "description": "Request for a Plugin", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RequestPluginRequest" + } + }, + "get": { + "summary": "Get all plugin requests for an account", + "operationId": "get-plugin-request", + "responses": { + "200": { + "$ref": "#/components/responses/PluginRequestResponseList" + } + }, + "tags": [ + "PluginInfo" + ], + "x-internal": false, + "description": "Get all plugin requests for an account", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/Page1" + }, + { + "$ref": "#/components/parameters/Limit5" + } + ] + } + }, + "/v1/layout/ingest": { + "post": { + "summary": "Ingest plugin layout", + "operationId": "layout-ingest", + "responses": { + "200": { + "$ref": "#/components/responses/LayoutResponse" + } + }, + "tags": [ + "LayoutProxy" + ], + "description": "Ingest plugin layout", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LayoutIngestRequest" + } + } + } + } + } + }, + "/v1/data-sources": { + "get": { + "summary": "Get Datasources Present In Account", + "tags": [ + "DataSource" + ], + "responses": { + "200": { + "$ref": "#/components/responses/DataSourcesResponse" + } + }, + "operationId": "get-all-datasources-for-account", + "x-stoplight": { + "id": "vdsu1dzt8t3tz" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "description": "API for getting all the datasources present in account.", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/data-sources/{data-source}/datapoints": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "data-source", + "in": "path", + "required": true, + "description": "Identifier for datasource" + } + ], + "get": { + "summary": "Get DataPoints present in DataSources for an account", + "tags": [ + "DataSource" + ], + "responses": { + "200": { + "$ref": "#/components/responses/DatapointResponse" + } + }, + "operationId": "get-data-points-for-data-source", + "x-stoplight": { + "id": "aogrjef7pusxj" + }, + "description": "Get DataPoints Present in DataSources", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + } + }, + "/v1/scores/summary": { + "get": { + "summary": "Get Score Summary for Scorecards", + "responses": { + "200": { + "$ref": "#/components/responses/ScorecardSummaryInfoResponse" + } + }, + "operationId": "get-all-scorecard-summary", + "x-stoplight": { + "id": "6hoo6kwpvy1p8" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/EntityIdentifier" + } + ], + "x-internal": false, + "tags": [ + "Scores" + ] + }, + "parameters": [] + }, + "/v1/scores": { + "get": { + "summary": "Get Scores for Scorecards", + "responses": { + "200": { + "$ref": "#/components/responses/ScorecardScoreResponse" + } + }, + "operationId": "get-scorecards-scores-overview", + "x-stoplight": { + "id": "lpnl6xzlj655z" + }, + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/EntityIdentifier" + } + ], + "tags": [ + "Scores" + ] + }, + "parameters": [] + }, + "/v1/scores/aggregate": { + "post": { + "summary": "Get Aggregated Scores for backstage entities", + "responses": { + "200": { + "$ref": "#/components/responses/EntityScoresResponseList" + } + }, + "operationId": "get-aggregated-scores", + "x-stoplight": { + "id": "i14tbedz1cc8u" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardFilter" + } + } + } + }, + "x-internal": false, + "tags": [ + "Scores" + ] + } + }, + "/v1/scores/graph": { + "parameters": [] + }, + "/v1/scores/recalibrate": { + "parameters": [] + }, + "/v1/checks": { + "get": { + "summary": "Get all checks available", + "parameters": [ + { + "$ref": "#/components/parameters/CheckType" + }, + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/Page1" + }, + { + "$ref": "#/components/parameters/Limit5" + }, + { + "$ref": "#/components/parameters/Sort6" + }, + { + "$ref": "#/components/parameters/SearchTerm" + } + ], + "tags": [ + "Checks" + ], + "x-stoplight": { + "id": "fybtgv0otf34d" + }, + "operationId": "get-checks", + "description": "Get all checks available", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/CheckResponseList" + } + } + }, + "post": { + "summary": "Create a custom check", + "tags": [ + "Checks" + ], + "operationId": "create-check", + "responses": { + "201": { + "$ref": "#/components/responses/DefaultSaveResponse" + } + }, + "x-stoplight": { + "id": "pzk9h0n0suta2" + }, + "description": "Create a custom check", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CheckDetailsRequest" + } + } + } + }, + "x-internal": false + } + }, + "/v1/checks/{check-id}": { + "get": { + "summary": "Get check details for given checkId", + "tags": [ + "Checks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CheckDetailsResponse" + } + }, + "operationId": "get-check", + "x-stoplight": { + "id": "7n0j23984d2ep" + }, + "description": "Get check details for given checkId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/CheckIdentifier" + }, + { + "$ref": "#/components/parameters/CheckType" + } + ], + "x-internal": false + }, + "put": { + "summary": "Update check details for given checkId", + "tags": [ + "Checks" + ], + "operationId": "update-check", + "responses": { + "200": { + "$ref": "#/components/responses/DefaultSaveResponse" + } + }, + "x-stoplight": { + "id": "e6w24mxeru0p6" + }, + "description": "Update check details for given checkId", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/CheckIdentifier" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CheckDetailsRequest" + } + } + } + } + }, + "delete": { + "summary": "Delete check details for given checkId", + "operationId": "delete-check", + "description": "Delete check details for given checkId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/CheckIdentifier" + }, + { + "$ref": "#/components/parameters/ForceDelete2" + } + ], + "x-internal": false, + "responses": { + "204": { + "description": "No Content" + } + }, + "tags": [ + "Checks" + ], + "x-stoplight": { + "id": "pgtm5cqq7zqmt" + } + } + }, + "/v1/checks/{check-id}/stats": { + "get": { + "summary": "Get check stats for given checkId", + "tags": [ + "Checks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CheckStatsResponse" + } + }, + "operationId": "get-check-stats", + "x-stoplight": { + "id": "x6f6yi2hkheeh" + }, + "description": "Get check stats for given checkId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/CheckIdentifier" + }, + { + "$ref": "#/components/parameters/CheckType" + } + ] + } + }, + "/v1/checks/{check-id}/graph": { + "get": { + "summary": "Get check graph data for given checkId", + "tags": [ + "Checks" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CheckGraphResponse" + } + }, + "operationId": "get-check-graph", + "x-stoplight": { + "id": "x6f6yi2hkheeh" + }, + "description": "Get check graph data for given checkId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/CheckIdentifier" + }, + { + "$ref": "#/components/parameters/CheckType" + } + ] + } + }, + "/v1/scorecards": { + "get": { + "summary": "Get all scorecards available", + "tags": [ + "Scorecards" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ScorecardResponseList" + } + }, + "operationId": "get-scorecards", + "x-stoplight": { + "id": "sd1pqx1g9pu0o" + }, + "description": "Get all scorecards available", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + }, + "post": { + "summary": "Create scorecard", + "tags": [ + "Scorecards" + ], + "operationId": "create-scorecard", + "responses": { + "201": { + "$ref": "#/components/responses/DefaultSaveResponse" + } + }, + "x-stoplight": { + "id": "7ky7v205witp4" + }, + "description": "Create scorecard", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardDetailsRequest" + } + } + } + }, + "x-internal": false + } + }, + "/v1/scorecards/{scorecard-id}": { + "get": { + "summary": "Get scorecard details for given scorecardId", + "tags": [ + "Scorecards" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ScorecardDetailsResponse" + } + }, + "operationId": "get-scorecard", + "description": "Get scorecard details for given scorecardId", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/ScorecardIdentifier" + } + ], + "x-stoplight": { + "id": "7q992jg8e5lre" + } + }, + "put": { + "summary": "Update scorecard details for given scorecardId", + "tags": [ + "Scorecards" + ], + "operationId": "update-scorecard", + "responses": { + "200": { + "$ref": "#/components/responses/DefaultSaveResponse" + } + }, + "x-stoplight": { + "id": "zfrmn6vx8zk2x" + }, + "description": "Update scorecard details for given scorecardId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/ScorecardIdentifier" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardDetailsRequest" + } + } + } + }, + "x-internal": false + }, + "delete": { + "summary": "Delete scorecard details for given scorecardId", + "operationId": "delete-scorecard", + "description": "Delete scorecard details for given scorecardId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/ScorecardIdentifier" + } + ], + "x-internal": false, + "responses": { + "204": { + "description": "No Content" + } + }, + "tags": [ + "Scorecards" + ], + "x-stoplight": { + "id": "t4gtsw95rgoh8" + } + } + }, + "/v1/scorecards/{scorecard-id}/stats": { + "get": { + "summary": "Get scorecard stats for given scorecardId", + "tags": [ + "Scorecards" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ScorecardStatsResponse" + } + }, + "operationId": "get-scorecard-stats", + "x-stoplight": { + "id": "y6e6yo2hkheeh" + }, + "description": "Get scorecard stats for given scorecardId", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/ScorecardIdentifier" + } + ] + } + }, + "/v1/entity-facets": { + "get": { + "summary": "Get all entity facets for given kind", + "tags": [ + "Scorecards" + ], + "responses": { + "200": { + "$ref": "#/components/responses/FacetsResponse" + } + }, + "operationId": "get-entity-facets", + "x-stoplight": { + "id": "8fjdnw2gtfpr7" + }, + "description": "Get all entity facets for given kind", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/CatalogKind" + } + ] + } + }, + "/v1/data-sources/harness/data-point/values": { + "parameters": [] + }, + "/v1/data-sources/data-points/map": { + "get": { + "summary": "Get Data Sources and Data Points Map for Account", + "tags": [ + "DataSource" + ], + "responses": { + "200": { + "$ref": "#/components/responses/DataSourceDataPointsMapResponse" + } + }, + "operationId": "get-data-sources-data-points-map", + "x-stoplight": { + "id": "hxskmevkt524r" + }, + "description": "API for getting the map of data sources and data points for account", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + } + }, + "/v1/data-sources/kubernetes/data-point/values": { + "post": { + "summary": "Get data points data for kubernetes data source", + "operationId": "get-k8s-data-point-values", + "tags": [ + "KubernetesDataPoints" + ], + "responses": { + "200": { + "$ref": "#/components/responses/DataSourceDataPointInfoResponse" + } + }, + "x-stoplight": { + "id": "9fg71j8suvpxn" + }, + "requestBody": { + "$ref": "#/components/requestBodies/KubernetesConfigRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/data-sources/scm/data-point/values": { + "post": { + "summary": "Get data points data for scm data source", + "operationId": "get-scm-data-point-values", + "tags": [ + "ScmDataPoints" + ], + "responses": { + "200": { + "$ref": "#/components/responses/DataSourceDataPointInfoResponse" + } + }, + "x-stoplight": { + "id": "9fi72j8suwpyn" + }, + "requestBody": { + "$ref": "#/components/requestBodies/ScmConfigRequest" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/scores/recalibrate/status": { + "parameters": [] + }, + "/v1/catalog/custom-properties": { + "post": { + "summary": "Ingest catalog custom properties", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyByFieldResponse" + } + }, + "operationId": "ingest-catalog-custom-properties", + "x-stoplight": { + "id": "3eczjage6lz9a" + }, + "x-internal": false, + "description": "Ingest catalog custom properties", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/DryRunCatalogCustomProperties" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyFilterRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyFilterRequest" + } + } + } + } + }, + "parameters": [], + "delete": { + "summary": "Delete catalog custom properties", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyDeleteByFieldResponse" + } + }, + "operationId": "delete-catalog-custom-properties", + "x-stoplight": { + "id": "vb71p39cmv358" + }, + "description": "Delete catalog custom properties", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/DryRunCatalogCustomProperties" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyFilterDeleteRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyFilterDeleteRequest" + } + } + } + } + } + }, + "/v1/catalog/custom-properties/entity": { + "get": { + "summary": "Get catalog custom properties for given entity", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyByEntityGetResponse" + } + }, + "operationId": "get-catalog-custom-properties-by-entity", + "x-stoplight": { + "id": "3edqlaqe8lz9b" + }, + "x-internal": false, + "description": "Get catalog custom properties for given entity", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/EntityRef" + } + ] + }, + "post": { + "summary": "Ingest catalog custom properties for given entity", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyResponse" + } + }, + "operationId": "ingest-catalog-custom-properties-by-entity", + "x-stoplight": { + "id": "3eczoaje6lz0g" + }, + "x-internal": false, + "description": "Ingest catalog custom properties for given entity", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/DryRunCatalogCustomProperties" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByEntityRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByEntityRequest" + } + } + } + } + }, + "delete": { + "summary": "Delete catalog custom properties for given entity", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyResponse" + } + }, + "operationId": "delete-catalog-custom-properties-by-entity", + "x-stoplight": { + "id": "vb71p39dmz358" + }, + "description": "Delete catalog custom properties for given entity", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/DryRunCatalogCustomProperties" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByEntityDeleteRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByEntityDeleteRequest" + } + } + } + } + } + }, + "/v1/catalog/custom-properties/property": { + "get": { + "summary": "Get entities for given custom property", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyByFieldGetResponse" + } + }, + "operationId": "get-entities-by-catalog-custom-property", + "x-stoplight": { + "id": "3edljble6lz9a" + }, + "x-internal": false, + "description": "Get entities for given custom property", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/Property" + } + ] + }, + "post": { + "summary": "Ingest entities for given custom property", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyResponse" + } + }, + "operationId": "ingest-entities-by-catalog-custom-property", + "x-stoplight": { + "id": "3eczoaje6lz0g" + }, + "x-internal": false, + "description": "Ingest entities for given custom property", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/DryRunCatalogCustomProperties" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldRequest" + } + } + } + } + }, + "delete": { + "summary": "Delete entities for given custom property", + "tags": [ + "CatalogCustomProperties" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CustomPropertyResponse" + } + }, + "operationId": "delete-entities-by-catalog-custom-property", + "x-stoplight": { + "id": "vb71p39dmz358" + }, + "description": "Delete entities for given custom property", + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/DryRunCatalogCustomProperties" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldDeleteRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldDeleteRequest" + } + } + } + } + } + }, + "/v1/groups/{group-identifier}": { + "get": { + "summary": "Get Group Details", + "responses": { + "200": { + "$ref": "#/components/responses/GroupResponse" + } + }, + "operationId": "get-group-details", + "x-stoplight": { + "id": "nby8lq3g0vg27" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "x-internal": false, + "tags": [ + "Groups" + ] + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "group-identifier", + "in": "path", + "required": true + } + ], + "delete": { + "summary": "Delete a group", + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-group", + "x-stoplight": { + "id": "up9xj9134iolf" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "x-internal": false, + "tags": [ + "Groups" + ] + } + }, + "/v1/groups": { + "get": { + "summary": "Get all groups for account", + "responses": { + "200": { + "$ref": "#/components/responses/GroupResponseList" + } + }, + "operationId": "get-all-groups-for-account", + "x-stoplight": { + "id": "qi2aylcdl7t09" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "tags": [ + "Groups" + ] + }, + "post": { + "summary": "Save a group", + "responses": { + "200": { + "$ref": "#/components/responses/GroupResponse" + } + }, + "operationId": "save-group", + "x-stoplight": { + "id": "c6hf0g9o84pnc" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/GroupRequest" + }, + "x-internal": false, + "tags": [ + "Groups" + ] + }, + "put": { + "summary": "Update Groups", + "responses": { + "200": { + "$ref": "#/components/responses/GroupResponseList" + } + }, + "operationId": "update-groups", + "x-stoplight": { + "id": "eaxiri07lz2kj" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/GroupRequestList" + }, + "tags": [ + "Groups" + ] + }, + "parameters": [] + }, + "/v1/groups/yaml": { + "get": { + "summary": "Get Groups Yaml", + "responses": { + "200": { + "$ref": "#/components/responses/GroupsYamlResponse" + } + }, + "operationId": "get-groups-yaml", + "x-stoplight": { + "id": "wbu7fk4liwa52" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "tags": [ + "Groups" + ] + }, + "parameters": [] + }, + "/v1/groups/workflows": { + "get": { + "summary": "Get workflows for account", + "tags": [ + "Groups" + ], + "responses": { + "200": { + "$ref": "#/components/responses/WorkflowsInfoResponse" + } + }, + "operationId": "get-workflows-for-account", + "x-stoplight": { + "id": "czv3pmqlvtng4" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/Page1" + }, + { + "$ref": "#/components/parameters/Limit5" + } + ] + }, + "parameters": [] + }, + "/v1/home-page-layout": { + "get": { + "summary": "Get Home Page Layout Details", + "tags": [ + "HomePageLayout" + ], + "responses": { + "200": { + "$ref": "#/components/responses/HomePageLayoutResponse" + } + }, + "operationId": "get-home-page-layout-info", + "x-stoplight": { + "id": "5qz0to5vb79zr" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + }, + "post": { + "summary": "Save Home Page Layout Details", + "responses": { + "200": { + "$ref": "#/components/responses/HomePageLayoutResponse" + } + }, + "operationId": "save-home-page-layout-info", + "x-stoplight": { + "id": "n3iaiocyjv0kh" + }, + "x-internal": false, + "requestBody": { + "$ref": "#/components/requestBodies/HomePageLayoutRequest" + }, + "tags": [ + "HomePageLayout" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + } + }, + "/v1/home-page-layout/yaml": { + "get": { + "summary": "Get yaml for home page layout", + "tags": [ + "HomePageLayout" + ], + "responses": { + "200": { + "$ref": "#/components/responses/HomePageLayoutYamlResponse" + } + }, + "operationId": "get-yaml-for-home-page-layout", + "x-stoplight": { + "id": "1zne0xmh0mj6o" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + } + }, + "/v1/home-page-layout/custom-card/{card-identifier}/quick-links/{quick-link-identifier}/icon": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "card-identifier", + "in": "path", + "required": true + }, + { + "schema": { + "type": "string" + }, + "name": "quick-link-identifier", + "in": "path", + "required": true + } + ], + "delete": { + "summary": "Delete custom link card quick links icon", + "tags": [ + "HomePageLayout" + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-custom-link-card-quick-links", + "x-stoplight": { + "id": "hovwmpqwogep9" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + } + }, + "/v1/home-page-layout/header/quick-links/{quick-link-identifier}/icon": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "quick-link-identifier", + "in": "path", + "required": true + } + ], + "delete": { + "summary": "Delete header quick links icon", + "tags": [ + "HomePageLayout" + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-headers-quick-links-icon", + "x-stoplight": { + "id": "12si1vwf5qnvv" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + } + }, + "/v1/home-page-layout/card/{card-identifier}/icon": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "card-identifier", + "in": "path", + "required": true + } + ], + "delete": { + "summary": "Delete card icon", + "tags": [ + "HomePageLayout" + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-home-page-layout-cards-icon", + "x-stoplight": { + "id": "wgvh8oyencivj" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ] + } + }, + "/v1/home-page-layout/icon": { + "delete": { + "summary": "Delete homepage layout icon", + "tags": [ + "HomePageLayout" + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "operationId": "delete-home-page-layout-icon", + "x-stoplight": { + "id": "f7kbixtn6dju0" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/DeleteHomePageLayoutIconRequest" + } + } + }, + "/v1/entities": { + "post": { + "operationId": "create-entity", + "summary": "Create an Entity", + "description": "Creates a new Entity in the specified scope (Account, Organization, or Project). Entities are the core components of the catalog system and can represent various resources such as services, APIs, user groups, and more. Each entity has a specific kind and type that defines its purpose in the system.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/OrgIdentifierQueryParam" + }, + { + "$ref": "#/components/parameters/ProjectIdentifierQueryParam" + }, + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "name": "convert", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + }, + "description": "When set to true, converts Backstage style YAML to Harness entity YAML format" + }, + { + "name": "dry_run", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + }, + "description": "When set to true, validates the entity creation without actually creating it" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EntityRequestBody" + }, + "responses": { + "201": { + "$ref": "#/components/responses/EntityResponseBody", + "description": "Entity successfully created" + } + } + }, + "get": { + "operationId": "get-entities", + "summary": "Get Entities", + "description": "Retrieves a paginated list of Entities based on the provided filters. This endpoint supports comprehensive filtering options to help you find specific entities across different scopes, kinds, and other properties. The response includes pagination metadata and counts for owned and favorite entities.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "$ref": "#/components/parameters/Page1" + }, + { + "$ref": "#/components/parameters/LimitWithRestriction" + }, + { + "$ref": "#/components/parameters/Sort6" + }, + { + "$ref": "#/components/parameters/SearchTerm" + }, + { + "name": "scopes", + "description": "Filter entities by specific scopes (account.\\*, account, account.org, account.org.project, account.orgId, account.orgId.projectId, account.orgId.\\*)", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "entity_refs", + "description": "Filter entities by their entity references (comma-separated list in the format of kind:scope/identifier)", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "owned_by_me", + "description": "When true, returns only entities owned by the current user or their groups", + "in": "query", + "schema": { + "type": "boolean" + } + }, + { + "name": "favorites", + "description": "When true, returns only entities marked as favorites by the current user", + "in": "query", + "schema": { + "type": "boolean" + } + }, + { + "$ref": "#/components/parameters/KindQueryParam" + }, + { + "name": "type", + "description": "Filter entities by their type (e.g., Service, Website)", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "owner", + "description": "Filter entities by their owner references", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "lifecycle", + "description": "Filter entities by their lifecycle stage (e.g., experimental, production)", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "tags", + "description": "Filter entities by their associated tags (comma-separated list)", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EntityResponseBodyList", + "description": "List of entities matching the filter criteria" + } + } + } + }, + "/v1/entities/convert/{option}": { + "post": { + "operationId": "convert-entity", + "summary": "Convert Entity Format", + "description": "Converts entity YAML between Backstage and Harness formats. This is useful when migrating entities between systems or when standardizing entity definitions across different platforms. The conversion preserves all semantic information while adapting to the target format conventions.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + }, + { + "name": "option", + "in": "path", + "required": true, + "schema": { + "type": "string", + "enum": [ + "backstage-to-harness", + "harness-to-backstage" + ] + }, + "description": "Conversion direction - either convert from Backstage to Harness format or vice versa" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EntityRequestBody" + }, + "responses": { + "200": { + "$ref": "#/components/responses/EntityConvertResponseBody", + "description": "Entity YAML successfully converted to the target format" + } + } + } + }, + "/v1/entities/{scope}/{kind}/{identifier}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgIdentifierQueryParam" + }, + { + "$ref": "#/components/parameters/ProjectIdentifierQueryParam" + }, + { + "$ref": "#/components/parameters/ScopeParam" + }, + { + "$ref": "#/components/parameters/KindParam" + }, + { + "$ref": "#/components/parameters/IdentifierParam" + } + ], + "put": { + "operationId": "update-entity", + "summary": "Update an Entity", + "description": "Updates an existing Entity identified by its scope, kind, and identifier. All fields in the entity definition will be replaced with the new values provided in the request. This operation is idempotent and will create the entity if it doesn't already exist.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EntityRequestBody" + }, + "responses": { + "200": { + "$ref": "#/components/responses/EntityResponseBody", + "description": "Entity successfully updated" + } + } + }, + "delete": { + "operationId": "delete-entity", + "summary": "Delete an Entity", + "description": "Permanently removes an Entity identified by its scope, kind, and identifier from the system. This operation cannot be undone, so use it with caution. Any references to the deleted entity from other entities will become invalid.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "responses": { + "204": { + "description": "Entity successfully deleted with no content returned" + } + } + }, + "get": { + "operationId": "get-entity", + "summary": "Get Entity Details", + "description": "Retrieves the complete details of an Entity identified by its scope, kind, and identifier, including its YAML definition, metadata, and relationships with other entities. This endpoint provides the most comprehensive view of a specific entity.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EntityResponseBody", + "description": "Complete entity details successfully retrieved" + } + } + } + }, + "/v1/entities/kinds": { + "parameters": [ + { + "$ref": "#/components/parameters/AccountIdentifierQueryParam" + }, + { + "$ref": "#/components/parameters/OrgIdentifierQueryParam" + }, + { + "$ref": "#/components/parameters/ProjectIdentifierQueryParam" + } + ], + "get": { + "operationId": "get-entities-kinds", + "summary": "Get Entity Kinds", + "description": "Returns a list of all supported Entity Kinds along with their display names, descriptions, and counts. This is useful for populating filter dropdowns in UIs and for understanding what kinds of entities are available in the system.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EntityKindsResponseBody", + "description": "List of available entity kinds with their metadata and counts" + } + } + } + }, + "/v1/entities/filters": { + "parameters": [ + { + "$ref": "#/components/parameters/AccountIdentifierQueryParam" + }, + { + "$ref": "#/components/parameters/KindQueryParam" + }, + { + "name": "scopes", + "description": "Filter entities by specific scopes (account.\\*, account, account.org, account.org.project, account.orgId, account.orgId.projectId, account.orgId.\\*)", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "get": { + "operationId": "get-entities-filters", + "summary": "Get Entity Filter Options", + "description": "Returns the available filter options that can be used when querying entities. This helps in building dynamic filter UIs for entity exploration and discovery. The response includes filter names and their possible values based on the current entities in the system.", + "tags": [ + "Entities" + ], + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader5" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/EntityFiltersResponseBodyList", + "description": "List of available filter options and their possible values" + } + } + } + }, + "/v1/entities/json-schema": { + "parameters": [ + { + "$ref": "#/components/parameters/KindQueryParam" + } + ], + "get": { + "operationId": "get-json-schema", + "summary": "Get Entity JSON Schema", + "description": "Returns the JSON Schema for validating Entity definitions. This is useful for client-side validation before submitting entity creation or update requests. The schema can be filtered by entity kind to get specific validation rules.", + "tags": [ + "Entities" + ], + "responses": { + "200": { + "$ref": "#/components/responses/EntityJsonSchemaResponseBody", + "description": "JSON Schema for entity validation successfully retrieved" + } + } + } + }, + "/ng/api/accounts/{accountIdentifier}": { + "get": { + "tags": [ + "Accounts" + ], + "summary": "Gets an account", + "operationId": "getAccountNG", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccount" + } + } + } + } + } + } + }, + "/ng/api/accounts/{accountIdentifier}/immutable-delegate-enabled": { + "get": { + "tags": [ + "Accounts" + ], + "summary": "Checks if immutable delegate is enabled for account", + "operationId": "isImmutableDelegateEnabled", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if immutable delegate is enabled for account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/accounts/license/update/{accountIdentifier}": { + "put": { + "tags": [ + "Accounts" + ], + "summary": "License update from UI", + "operationId": "licenseUpdateFromUING", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountStatus", + "in": "query", + "description": "Account License Status for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountType", + "in": "query", + "description": "Account License Type for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns an boolean", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/accounts/{accountIdentifier}/name": { + "put": { + "tags": [ + "Accounts" + ], + "summary": "Update Account Name", + "operationId": "updateAccountNameNG", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is details of the Account. Name is mandatory.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Account" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccount" + } + } + } + } + } + } + }, + "/ng/api/accounts/{accountIdentifier}/default-experience": { + "put": { + "tags": [ + "Accounts" + ], + "summary": "Update Default Experience", + "operationId": "updateAccountDefaultExperienceNG", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is details of the Account. DefaultExperience is mandatory", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Account" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccount" + } + } + } + } + } + } + }, + "/ng/api/environmentGroup": { + "post": { + "tags": [ + "EnvironmentGroup" + ], + "summary": "Create an Environment Group", + "operationId": "postEnvironmentGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Details of the Environment Group to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentGroupRequest" + }, + "examples": { + "Create": { + "summary": "Sample Environment Group create payload", + "description": "Sample Environment Group payload", + "value": { + "name": "environmentGroup", + "identifier": "environmentGroupId", + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "yaml": "environmentGroup:\n name: environmentGroup\n identifier: environmentGroupId\n description: \"\"\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n envIdentifiers:\n - EnvironmentId1\n - EnvironmentId2\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentGroupRequest" + }, + "examples": { + "Create": { + "summary": "Sample Environment Group create payload", + "description": "Sample Environment Group payload", + "value": { + "name": "environmentGroup", + "identifier": "environmentGroupId", + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "yaml": "environmentGroup:\n name: environmentGroup\n identifier: environmentGroupId\n description: \"\"\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n envIdentifiers:\n - EnvironmentId1\n - EnvironmentId2\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "If the YAML is valid, returns created Environment Group. If not, it sends what is wrong with the YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroup" + } + } + } + } + } + } + }, + "/ng/api/environmentGroup/{envGroupIdentifier}": { + "get": { + "tags": [ + "EnvironmentGroup" + ], + "summary": "Gets an Environment Group by identifier", + "operationId": "getEnvironmentGroup", + "parameters": [ + { + "name": "envGroupIdentifier", + "in": "path", + "description": "Environment Group Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "deleted", + "in": "query", + "description": "Specify whether environment group is deleted or not", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The saved Environment Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroup" + } + } + } + } + } + }, + "put": { + "tags": [ + "EnvironmentGroup" + ], + "summary": "Update an Environment Group by Identifier", + "operationId": "updateEnvironmentGroup", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "envGroupIdentifier", + "in": "path", + "description": "Environment Group Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Details of the Environment Group to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentGroupRequest" + }, + "examples": { + "Update": { + "summary": "Sample Environment Group update payload", + "description": "Sample Environment Group payload", + "value": { + "name": "environmentGroup", + "identifier": "environmentGroupId", + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "yaml": "environmentGroup:\n name: environmentGroup\n identifier: environmentGroupId\n description: \"\"\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n envIdentifiers:\n - EnvironmentId1\n - EnvironmentId2\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentGroupRequest" + }, + "examples": { + "Update": { + "summary": "Sample Environment Group update payload", + "description": "Sample Environment Group payload", + "value": { + "name": "environmentGroup", + "identifier": "environmentGroupId", + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "yaml": "environmentGroup:\n name: environmentGroup\n identifier: environmentGroupId\n description: \"\"\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n envIdentifiers:\n - EnvironmentId1\n - EnvironmentId2\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Environment Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroup" + } + } + } + } + } + }, + "delete": { + "tags": [ + "EnvironmentGroup" + ], + "summary": "Delete en Environment Group by Identifier", + "operationId": "deleteEnvironmentGroup", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "envGroupIdentifier", + "in": "path", + "description": "Environment Group Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Last Object Id", + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Environment Group is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroupDelete" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGroupDelete" + } + } + } + } + } + } + }, + "/ng/api/environmentGroup/list": { + "post": { + "tags": [ + "EnvironmentGroup" + ], + "summary": "Gets Environment Group list", + "operationId": "getEnvironmentGroupList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "envGroupIdentifiers", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 25 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "filterIdentifier", + "in": "query", + "description": "Filter identifier", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "includeAllEnvGroupsAccessibleAtScope", + "in": "query", + "description": "Specify true if all accessible environment groups are to be included", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "This is the body for the filter properties for listing Environment Groups", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FilterProperties" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/FilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Environment Groups", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseEnvironmentGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseEnvironmentGroup" + } + } + } + } + } + } + }, + "/ng/api/license-usage-cd/v2/{usageType}/csv/download": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Download CD Usage CSV report", + "operationId": "downloadCDUsageCSVReport", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "usageType", + "in": "path", + "required": true, + "schema": { + "type": "string", + "enum": [ + "ServiceDeployment", + "Gitops", + "PipelineExecution" + ] + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64", + "default": 0 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Download CSV Active Services report" + } + } + } + }, + "/ng/api/connectors/ccmK8sList": { + "post": { + "tags": [ + "Connectors" + ], + "summary": "Fetches the list of CMC K8S Connectors corresponding to the request's filter criteria.", + "operationId": "getCCMK8SConnectorList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Connectors. Any Connector having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "filterIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "includeAllConnectorsAvailableAtScope", + "in": "query", + "description": "Specify whether or not to include all the Connectors accessible at the scope. For eg if set as true, at the Project scope we will get org and account Connector also in the response", + "schema": { + "type": "boolean" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "getDistinctFromBranches", + "in": "query", + "description": "This when set to true along with GitSync enabled for the Connector, you can get one connector entity from each identifier. The connector entity can belong to any branch", + "schema": { + "type": "boolean" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the filters applied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Connectors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseCcmK8sConnectorResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseCcmK8sConnectorResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseCcmK8sConnectorResponse" + } + } + } + } + } + } + }, + "/ng/api/connectors": { + "get": { + "tags": [ + "Connectors" + ], + "summary": "List all Connectors using filters", + "description": "Lists all the Connectors matching the specified filters.", + "operationId": "getConnectorList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page number of navigation. By default, it is set to 0.", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of entries per page.The default number of entries per page is 100, while the maximum number allowed is 1000.", + "schema": { + "maximum": 1000, + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Connectors. Any Connector having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Filter Connectors by type", + "schema": { + "type": "string", + "enum": [ + "K8sCluster", + "Git", + "Splunk", + "AppDynamics", + "Prometheus", + "Dynatrace", + "Vault", + "AzureKeyVault", + "DockerRegistry", + "Local", + "AwsKms", + "GcpKms", + "AwsSecretManager", + "Gcp", + "Aws", + "Azure", + "Artifactory", + "Jira", + "Nexus", + "Github", + "Gitlab", + "Bitbucket", + "Codecommit", + "CEAws", + "CEAzure", + "GcpCloudCost", + "CEK8sCluster", + "HttpHelmRepo", + "NewRelic", + "Datadog", + "SumoLogic", + "PagerDuty", + "CustomHealth", + "ServiceNow", + "ErrorTracking", + "Pdc", + "AzureRepo", + "Jenkins", + "OciHelmRepo", + "CustomSecretManager", + "ElasticSearch", + "GcpSecretManager", + "AzureArtifacts", + "Tas", + "Spot", + "Bamboo", + "TerraformCloud", + "SignalFX", + "Harness", + "Rancher", + "JDBC", + "Zoom", + "MsTeams", + "Confluence", + "Slack" + ] + } + }, + { + "name": "category", + "in": "query", + "description": "Filter Connectors by category", + "schema": { + "type": "string", + "enum": [ + "CLOUD_PROVIDER", + "SECRET_MANAGER", + "CLOUD_COST", + "ARTIFACTORY", + "CODE_REPO", + "MONITORING", + "TICKETING", + "DATABASE", + "COMMUNICATION", + "DOCUMENTATION" + ] + } + }, + { + "name": "source_category", + "in": "query", + "description": "Filter Connectors by Source Category. Available Source Categories are CLOUD_PROVIDER, SECRET_MANAGER, CLOUD_COST, ARTIFACTORY, CODE_REPO, MONITORING and TICKETING", + "schema": { + "type": "string", + "enum": [ + "CLOUD_PROVIDER", + "SECRET_MANAGER", + "CLOUD_COST", + "ARTIFACTORY", + "CODE_REPO", + "MONITORING", + "TICKETING", + "DATABASE", + "COMMUNICATION", + "DOCUMENTATION" + ] + } + }, + { + "name": "version", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Connectors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseConnectorResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseConnectorResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseConnectorResponse" + } + } + } + } + }, + "deprecated": true + }, + "put": { + "tags": [ + "Connectors" + ], + "summary": "Update a Connector", + "description": "Updates a Connector for the given ID.", + "operationId": "updateConnector", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "This is the updated Connector. Please provide values for all fields, not just the fields you are updating", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Connector", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Connectors" + ], + "summary": "Create a Connector", + "description": "Creates a new Harness Connector.", + "operationId": "createConnector", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "storeType", + "in": "query", + "description": "Tells whether the Entity is to be saved on Git or not", + "schema": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Details of the Connector to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Connector2" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created Connector", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + } + } + } + } + } + }, + "/ng/api/connectors/{identifier}": { + "get": { + "tags": [ + "Connectors" + ], + "summary": "Return Connector details", + "description": "Returns the Connector's details for the given Account and Connector ID.", + "operationId": "getConnector", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Connector Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the connector with the requested accountIdentifier and connectorIdentifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Connectors" + ], + "summary": "Delete a Connector", + "description": "Deletes a Connector for the given ID.", + "operationId": "deleteConnector", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Connector ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Last Object Id", + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Connector is deleted successfully and false if the Connector is not deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/connectors/fieldValues": { + "get": { + "tags": [ + "Connectors" + ], + "summary": "List all the configured field values for the given Connector type.", + "description": "Returns all the configured field values for the given Connector type, which can be used during connector creation.", + "operationId": "getAllAllowedFieldValues", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorType", + "in": "query", + "description": "Connector type", + "required": true, + "schema": { + "type": "string", + "enum": [ + "K8sCluster", + "Git", + "Splunk", + "AppDynamics", + "Prometheus", + "Dynatrace", + "Vault", + "AzureKeyVault", + "DockerRegistry", + "Local", + "AwsKms", + "GcpKms", + "AwsSecretManager", + "Gcp", + "Aws", + "Azure", + "Artifactory", + "Jira", + "Nexus", + "Github", + "Gitlab", + "Bitbucket", + "Codecommit", + "CEAws", + "CEAzure", + "GcpCloudCost", + "CEK8sCluster", + "HttpHelmRepo", + "NewRelic", + "Datadog", + "SumoLogic", + "PagerDuty", + "CustomHealth", + "ServiceNow", + "ErrorTracking", + "Pdc", + "AzureRepo", + "Jenkins", + "OciHelmRepo", + "CustomSecretManager", + "ElasticSearch", + "GcpSecretManager", + "AzureArtifacts", + "Tas", + "Spot", + "Bamboo", + "TerraformCloud", + "SignalFX", + "Harness", + "Rancher", + "JDBC", + "Zoom", + "MsTeams", + "Confluence", + "Slack" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns all the configured field values for the given Connector type, which can be used during connector creation.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFieldValues" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFieldValues" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFieldValues" + } + } + } + } + } + } + }, + "/ng/api/connectors/getceawstemplateurl": { + "post": { + "tags": [ + "Connectors" + ], + "summary": "Get the Template URL of connector", + "operationId": "getCEAwsTemplate", + "parameters": [ + { + "name": "eventsEnabled", + "in": "query", + "description": "Specify whether or not to enable events", + "schema": { + "type": "boolean" + } + }, + { + "name": "curEnabled", + "in": "query", + "description": "Specify whether or not to enable CUR", + "schema": { + "type": "boolean" + } + }, + { + "name": "optimizationEnabled", + "in": "query", + "description": "Specify whether or not to enable optimization", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the cloud formation template URL to configure the Cloud Cost AWS Connector", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + }, + "deprecated": true + } + }, + "/ng/api/connectors/catalogue": { + "get": { + "tags": [ + "Connectors" + ], + "summary": "Lists all Connectors for an account", + "description": "Lists all the Connectors for the given Account ID.", + "operationId": "getConnectorCatalogue", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Connector catalogue response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorCatalogueResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorCatalogueResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorCatalogueResponse" + } + } + } + } + } + } + }, + "/ng/api/connectors/stats": { + "get": { + "tags": [ + "Connectors" + ], + "summary": "Gets the connector's statistics by Account Identifier, Project Identifier and Organization Identifier", + "operationId": "getConnectorStatistics", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Connector's statistics", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorStatistics" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorStatistics" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorStatistics" + } + } + } + } + } + } + }, + "/ng/api/connectors/listV2": { + "post": { + "tags": [ + "Connectors" + ], + "summary": "Fetches the list of Connectors corresponding to the request's filter criteria.", + "operationId": "getConnectorListV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Connectors. Any Connector having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "filterIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "includeAllConnectorsAvailableAtScope", + "in": "query", + "description": "Specify whether or not to include all the Connectors accessible at the scope. For eg if set as true, at the Project scope we will get org and account Connector also in the response", + "schema": { + "type": "boolean" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "getDistinctFromBranches", + "in": "query", + "description": "This when set to true along with GitSync enabled for the Connector, you can get one connector entity from each identifier. The connector entity can belong to any branch", + "schema": { + "type": "boolean" + } + }, + { + "name": "version", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "onlyFavorites", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the filters applied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ConnectorFilterProperties" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Connectors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseConnectorResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseConnectorResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseConnectorResponse" + } + } + } + } + } + } + }, + "/ng/api/connectors/listbyfqn": { + "post": { + "tags": [ + "Connectors" + ], + "summary": "Get list of Connectors by FQN", + "description": "Lists all Connectors for an Account by Fully Qualified Name (FQN) with a limit of max 1000 FQNs per request.", + "operationId": "listConnectorByFQN", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "A list of connectors' FQNs as strings. A maximum of 1000 FQNs are allowed.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "text/yaml": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "text/html": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "text/plain": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Connectors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListConnectorResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListConnectorResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListConnectorResponse" + } + } + } + } + } + } + }, + "/ng/api/connectors/testConnection/{identifier}": { + "post": { + "tags": [ + "Connectors" + ], + "summary": "Test Harness Connector connection with third-party tool", + "description": "Tests if a Harness Connector can successfully connect Harness to a third-party tool.", + "operationId": "getTestConnectionResult", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Connector ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Connector validation result", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorValidationResult" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorValidationResult" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorValidationResult" + } + } + } + } + } + } + }, + "/ng/api/connectors/testGitRepoConnection/{identifier}": { + "post": { + "tags": [ + "Connectors" + ], + "summary": "Test Git Connector sync with repo", + "description": "Tests if a Git Repo Connector can successfully connect Harness to a Git provider.", + "operationId": "getTestGitRepoConnectionResult", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "repoURL", + "in": "query", + "description": "URL of the repository, specify only in the case of Account Type Git Connector", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Connector ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Connector validation result", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorValidationResult" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorValidationResult" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOConnectorValidationResult" + } + } + } + } + } + } + }, + "/ng/api/connectors/validateUniqueIdentifier": { + "get": { + "tags": [ + "Connectors" + ], + "summary": "Test a Harness Connector", + "description": "Tests if a Connector can successfully connect Harness to a third-party tool using the an Account and Connector ID.", + "operationId": "validateTheIdentifierIsUnique", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "description": "Connector ID", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Identifier is unique and false if the Identifier is not unique", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/google-secret-manager-connector/gcp-regions": { + "get": { + "tags": [ + "GoogleSecretManagerConnector" + ], + "summary": "Get list of GCP Regions", + "description": "Lists all GCP Regions", + "operationId": "getGcpRegions", + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of GCP Regions", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ng/api/file-store": { + "get": { + "tags": [ + "File Store" + ], + "summary": "List Files and Folders metadata", + "operationId": "listFilesAndFolders", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of File IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This will be used to filter files or folders. Any file or folder having the specified search term in its Name or Identifier will be filtered", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "List Files and Folders metadata", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageFile" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageFile" + } + } + } + } + } + }, + "post": { + "tags": [ + "File Store" + ], + "summary": "Create Folder or File including content", + "operationId": "create", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "name", + "parentIdentifier", + "type" + ], + "type": "object", + "properties": { + "tags": { + "type": "string", + "description": "The File or Folder tags. (See example for expected format)" + }, + "content": { + "type": "object", + "description": "The content of the File as InputStream" + }, + "identifier": { + "type": "string", + "description": "Identifier of the File or Folder" + }, + "name": { + "type": "string", + "description": "Name of the File or Folder" + }, + "fileUsage": { + "type": "string", + "description": "This specifies the file usage" + }, + "type": { + "type": "string", + "description": "This specifies the type of the File", + "enum": [ + "FILE", + "FOLDER" + ] + }, + "parentIdentifier": { + "type": "string", + "description": "This specifies parent directory identifier. The value of Root directory identifier is Root." + }, + "description": { + "type": "string", + "description": "Description of the File or Folder" + }, + "mimeType": { + "type": "string", + "description": "Mime type of the File" + }, + "path": { + "type": "string", + "description": "The path of the File or Folder" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "lastModifiedBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Last modified time for the File or Folder", + "format": "int64" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns create response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + } + } + } + } + } + }, + "/ng/api/file-store/yaml": { + "post": { + "tags": [ + "File Store" + ], + "summary": "Creates File or Folder metadata via YAML", + "operationId": "createViaYAML", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "YAML definition of File or Folder", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/FileStoreRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns create response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + } + } + } + } + } + }, + "/ng/api/file-store/{identifier}": { + "get": { + "tags": [ + "File Store" + ], + "summary": "Get the Folder or File metadata", + "operationId": "getFile", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "The file identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Get the Folder or File metadata", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + } + } + } + } + }, + "put": { + "tags": [ + "File Store" + ], + "summary": "Update Folder or File including content", + "operationId": "update", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "The file identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "name", + "parentIdentifier", + "type" + ], + "type": "object", + "properties": { + "tags": { + "type": "string", + "description": "The File or Folder tags. (See example for expected format)" + }, + "identifier": { + "type": "string", + "description": "Identifier of the File or Folder" + }, + "name": { + "type": "string", + "description": "Name of the File or Folder" + }, + "fileUsage": { + "type": "string", + "description": "This specifies the file usage" + }, + "type": { + "type": "string", + "description": "This specifies the type of the File", + "enum": [ + "FILE", + "FOLDER" + ] + }, + "parentIdentifier": { + "type": "string", + "description": "This specifies parent directory identifier. The value of Root directory identifier is Root." + }, + "description": { + "type": "string", + "description": "Description of the File or Folder" + }, + "mimeType": { + "type": "string", + "description": "Mime type of the File" + }, + "path": { + "type": "string", + "description": "The path of the File or Folder" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "lastModifiedBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Last modified time for the File or Folder", + "format": "int64" + }, + "content": { + "type": "object", + "description": "The content of the File as InputStream" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns update response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + } + } + } + } + }, + "delete": { + "tags": [ + "File Store" + ], + "summary": "Delete File or Folder by identifier", + "operationId": "deleteFile", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "The file identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if deletion was successful.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/file-store/files/{identifier}/download": { + "get": { + "tags": [ + "File Store" + ], + "summary": "Download File", + "operationId": "downloadFile", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "The file identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Download File content" + } + } + } + }, + "/ng/api/file-store/files/createdBy": { + "get": { + "tags": [ + "File Store" + ], + "summary": "Get list of created by user details", + "operationId": "getCreatedByList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of created by user details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetEmbeddedUserDetailsDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetEmbeddedUserDetailsDTO" + } + } + } + } + } + } + }, + "/ng/api/file-store/files/{scopedFilePath}/content": { + "get": { + "tags": [ + "File Store" + ], + "summary": "Get file content of scopedFilePath", + "operationId": "getFileContentUsingScopedFilePath", + "parameters": [ + { + "name": "scopedFilePath", + "in": "path", + "description": "The scoped file path reference", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the file content of scopedFilePath", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + }, + "deprecated": true + } + }, + "/ng/api/file-store/files/content": { + "post": { + "tags": [ + "File Store" + ], + "summary": "Get file content of scopedFilePathV2", + "operationId": "getFileContentUsingScopedFilePathV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "The scoped file path reference", + "content": { + "application/json": { + "schema": { + "type": "string" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the file content of scopedFilePath", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/file-store/{identifier}/referenced-by": { + "get": { + "tags": [ + "File Store" + ], + "summary": "Get list of entities where file is referenced by queried entity type", + "operationId": "getReferencedBy", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page number of navigation. The default value is 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of entries per page. The default value is 100", + "schema": { + "maximum": 1000, + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "The file identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "entityType", + "in": "query", + "description": "Entity type", + "schema": { + "type": "string", + "enum": [ + "CreatePR", + "MergePR", + "Projects", + "Pipelines", + "PipelineSteps", + "Http", + "Email", + "JiraCreate", + "JiraUpdate", + "JiraApproval", + "HarnessApproval", + "CustomApproval", + "Barrier", + "Queue", + "FlagConfiguration", + "ShellScript", + "K8sCanaryDeploy", + "K8sApply", + "K8sBlueGreenDeploy", + "K8sRollingDeploy", + "K8sRollingRollback", + "K8sScale", + "K8sDelete", + "K8sBGSwapServices", + "K8sCanaryDelete", + "TerraformApply", + "TerraformPlan", + "TerraformDestroy", + "TerraformRollback", + "HelmDeploy", + "HelmRollback", + "Connectors", + "Secrets", + "Files", + "Service", + "Environment", + "EnvironmentGroup", + "InputSets", + "CvConfig", + "Verify", + "Delegates", + "DelegateConfigurations", + "CvVerificationJob", + "IntegrationStage", + "IntegrationSteps", + "SecurityStage", + "SecuritySteps", + "CvKubernetesActivitySource", + "DeploymentSteps", + "DeploymentStage", + "ApprovalStage", + "PipelineStage", + "FeatureFlagStage", + "Template", + "TemplateStage", + "CustomDeployment", + "Triggers", + "MonitoredService", + "GitRepositories", + "FeatureFlags", + "ServiceNowApproval", + "ServiceNowCreate", + "ServiceNowUpdate", + "ServiceNowImportSet", + "GovernancePolicies", + "Policy", + "Run", + "RunTests", + "Plugin", + "RestoreCacheGCS", + "RestoreCacheS3", + "SaveCacheGCS", + "SaveCacheS3", + "Security", + "AquaTrivy", + "AWSECR", + "Bandit", + "BlackDuck", + "Brakeman", + "Burp", + "Checkmarx", + "Clair", + "DataTheorem", + "DockerContentTrust", + "External", + "FortifyOnDemand", + "Grype", + "JfrogXray", + "Mend", + "Metasploit", + "Nessus", + "NexusIQ", + "Nikto", + "Nmap", + "Openvas", + "Owasp", + "PrismaCloud", + "Prowler", + "Qualys", + "Reapsaw", + "ShiftLeft", + "Sniper", + "Snyk", + "Sonarqube", + "Sysdig", + "Tenable", + "Veracode", + "Zap", + "GitClone", + "ArtifactoryUpload", + "GCSUpload", + "S3Upload", + "BuildAndPushGCR", + "BuildAndPushGAR", + "BuildAndPushECR", + "BuildAndPushDockerRegistry", + "CreateStack", + "DeleteStack", + "ServerlessAwsLambdaDeploy", + "ServerlessAwsLambdaRollback", + "CustomStage", + "RollbackStack", + "Infrastructure", + "Command", + "StrategyNode", + "AzureSlotDeployment", + "AzureTrafficShift", + "FetchInstanceScript", + "AzureSwapSlot", + "AzureWebAppRollback", + "JenkinsBuild", + "EcsRollingDeploy", + "EcsRollingRollback", + "EcsCanaryDeploy", + "EcsCanaryDelete", + "AzureCreateARMResource", + "BuildAndPushACR", + "AzureCreateBPResource", + "AzureARMRollback", + "Background", + "Wait", + "ArtifactSource", + "EcsBlueGreenCreateService", + "EcsBlueGreenSwapTargetGroups", + "EcsBlueGreenRollback", + "ShellScriptProvision", + "Freeze", + "GitOpsUpdateReleaseRepo", + "GitOpsFetchLinkedApps", + "EcsRunTask", + "Chaos", + "ElastigroupDeploy", + "ElastigroupRollback", + "Action", + "ElastigroupSetup", + "Bitrise", + "TerragruntPlan", + "TerragruntApply", + "TerragruntDestroy", + "TerragruntRollback", + "IACMStage", + "IACMStep", + "IACM", + "Container", + "IACMTerraformPlugin", + "IACMApproval", + "ElastigroupBGStageSetup", + "ElastigroupSwapRoute", + "AsgCanaryDeploy", + "AsgCanaryDelete", + "SwapRoutes", + "SwapRollback", + "AppResize", + "AppRollback", + "CanaryAppSetup", + "BGAppSetup", + "BasicAppSetup", + "TanzuCommand", + "AsgRollingDeploy", + "AsgRollingRollback", + "GovernanceRuleAWS", + "TasRollingDeploy", + "TasRollingRollback", + "K8sDryRun", + "AsgBlueGreenSwapService", + "AsgBlueGreenDeploy", + "AsgBlueGreenRollback", + "TerraformCloudRun", + "TerraformCloudRollback", + "DeployCloudFunction", + "DeployCloudFunctionWithNoTraffic", + "CloudFunctionTrafficShift", + "CloudFunctionRollback", + "AwsLambdaDeploy", + "AwsSamDeploy", + "AwsSamRollback", + "SscaOrchestration", + "AwsLambdaRollback", + "GitOpsSync", + "BambooBuild", + "CdSscaOrchestration", + "RouteMapping", + "AWSSecurityHub", + "CustomIngest", + "BackstageEnvironmentVariable", + "Fossa", + "CodeQL", + "Gitleaks", + "DeployCloudFunctionGenOne", + "RollbackCloudFunctionGenOne", + "K8sBlueGreenStageScaleDown", + "AwsSamBuild", + "Semgrep", + "SscaEnforcement", + "IdpConnector", + "CdSscaEnforcement", + "DownloadManifests", + "ServerlessAwsLambdaPrepareRollbackV2", + "ServerlessAwsLambdaRollbackV2", + "Coverity", + "ServerlessAwsLambdaDeployV2", + "AnalyzeDeploymentImpact", + "ServerlessAwsLambdaPackageV2", + "RevertPR", + "AwsCdkBootstrap", + "AwsCdkSynth", + "AwsCdkDiff", + "AwsCdkDeploy", + "AwsCdkDestroy", + "IdpScorecard", + "IdpCheck", + "AwsCdkRollback", + "SlsaVerification", + "UpdateGitOpsApp", + "EcsServiceSetup", + "EcsUpgradeContainer", + "EcsBasicRollback", + "ChaosInfrastructure", + "Anchore", + "Overrides", + "AsgShiftTraffic", + "AquaSecurity", + "IDPStage", + "ChaosHub", + "CookieCutter", + "CreateRepo", + "DownloadAwsS3", + "DirectPush", + "RegisterCatalog", + "K8sTrafficRouting", + "DownloadHarnessStore", + "CreateCatalog", + "SlackNotify", + "OsvScaner", + "IACMOpenTofuPlugin", + "AsgPhasedDeploy", + "AsgSetup", + "AsgRollback", + "Test", + "Wiz", + "Certificates", + "IACMCheckov", + "IACMTFCompliance", + "IACMTFLint", + "IACMTFSec", + "NotificationRule", + "NotificationChannel", + "K8sPatch", + "CreateOrganisation", + "CreateProject", + "DBSchemaApply", + "IACMPrepareExecution", + "DBSchemaRollback", + "K8sRollout", + "CreateResource", + "Checkov", + "ServiceDiscoveryAgent", + "ChaosInfrastructureV2", + "Traceable", + "AzureFunctionDeploy", + "AzureFunctionRollback", + "GoogleCloudRunDeploy", + "GoogleCloudRunPrepareRollbackData", + "GoogleCloudRunTrafficShift", + "GoogleCloudRunRollback", + "GoogleCloudRunJob", + "UpdateCatalogProperty", + "IACMWorkspace", + "IACMModuleTestPlugin", + "CheckmarxOne", + "AsgSteadyState", + "SscaArtifactVerification", + "GitOpsApplication", + "HelmDelete", + "EcsBlueGreenTrafficShift", + "StandAloneTrafficShiftRollback", + "ElastigroupBlueGreenTrafficShift", + "IdpCatalog", + "IACMTerragruntPlugin" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of entities where file is referenced by", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseEntitySetupUsage" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseEntitySetupUsage" + } + } + } + } + } + } + }, + "/ng/api/file-store/supported-entity-types": { + "get": { + "tags": [ + "File Store" + ], + "summary": "Get the list of supported entity types for files", + "operationId": "getEntityTypes", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of supported entity types for file", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListEntityType" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListEntityType" + } + } + } + } + } + } + }, + "/ng/api/file-store/files/filter": { + "post": { + "tags": [ + "File Store" + ], + "summary": "Get filtered list of Files or Folders", + "operationId": "listFilesWithFilter", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "filterIdentifier", + "in": "query", + "description": "Filter identifier", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This will be used to filter files or folders. Any file or folder having the specified search term in its Name or Identifier will be filtered", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the File filter properties to be applied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FilesFilterPropertiesDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns filtered list of Files or Folder", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageFile" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageFile" + } + } + } + } + } + } + }, + "/ng/api/file-store/folder": { + "post": { + "tags": [ + "File Store" + ], + "summary": "Get folder nodes at first level, not including sub-nodes", + "operationId": "getFolderNodes", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "fileUsage", + "in": "query", + "description": "The file usage", + "schema": { + "type": "string", + "enum": [ + "MANIFEST_FILE", + "CONFIG", + "SCRIPT" + ] + } + } + ], + "requestBody": { + "description": "Folder node for which to return the list of nodes", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FolderNode" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the folder populated with file store nodes as children", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFolderNode" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFolderNode" + } + } + } + } + } + } + }, + "/ng/api/file-store/yaml/{identifier}": { + "put": { + "tags": [ + "File Store" + ], + "summary": "Update File or Folder metadata via YAML", + "operationId": "updateViaYAML", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "The file identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "YAML definition of File or Folder", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/FileStoreRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns update response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFile" + } + } + } + } + } + } + }, + "/ng/api/filters": { + "get": { + "tags": [ + "Filter" + ], + "summary": "List Filters", + "description": "Lists Filters for the given criteria.", + "operationId": "getFilterList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page number of navigation. If left empty, default value of 0 is assumed.", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of entries per page. If left empty, default value of 100 is assumed", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Text to search/filter the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + } + } + } + } + }, + "put": { + "tags": [ + "Filter" + ], + "summary": "Update a Filter", + "description": "Updates the filter for the given ID.", + "operationId": "updateFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated Filter. This should have all the fields not just the updated ones", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "post": { + "tags": [ + "Filter" + ], + "summary": "Create a Filter", + "description": "Creates a Filter.", + "operationId": "postFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Connector to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + } + }, + "/ng/api/filters/{identifier}": { + "get": { + "tags": [ + "Filter" + ], + "summary": "Return Filter Details", + "description": "Returns the settings of a filter for the given ID.", + "operationId": "getFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns Filter having filterIdentifier as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Filter" + ], + "summary": "Delete a Filter", + "description": "Deletes a filter for the given ID.", + "operationId": "deleteFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/git-sync-branch/sync": { + "post": { + "tags": [ + "Git Branches" + ], + "summary": "Sync the content of new Git Branch into harness with Git Sync Config Id", + "operationId": "syncGitBranch", + "parameters": [ + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns True if the new Git Branch is successfully synced into Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/git-sync-branch/listBranchesWithStatus": { + "get": { + "tags": [ + "Git Branches" + ], + "summary": "Lists branches with their status(Synced, Unsynced) by Git Sync Config Id for the given scope", + "operationId": "getListOfBranchesWithStatus", + "parameters": [ + { + "name": "yamlGitConfigIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search Term.", + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "branchSyncStatus", + "in": "query", + "description": "Used to filter out Synced and Unsynced branches", + "schema": { + "type": "string", + "enum": [ + "SYNCED", + "SYNCING", + "UNSYNCED" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns a list of branches along with their status within the given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitBranchList" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitBranchList" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitBranchList" + } + } + } + } + } + } + }, + "/ng/api/git-full-sync/config": { + "get": { + "tags": [ + "Git Full Sync" + ], + "summary": "Fetch Configuration for Git Full Sync for the provided scope", + "operationId": "getGitFullSyncConfig", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the saved Git Full Sync Configuration for the provided scope.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + } + } + } + } + }, + "put": { + "tags": [ + "Git Full Sync" + ], + "summary": "Update Configuration for Git Full Sync for the provided scope", + "operationId": "updateGitFullSyncConfig", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Git Full sync Configuration", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncConfigRequest" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncConfigRequest" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncConfigRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Git Full Sync Configuration for the provided scope.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + } + } + } + } + }, + "post": { + "tags": [ + "Git Full Sync" + ], + "summary": "Create Configuration for Git Full Sync for the provided scope", + "operationId": "createGitFullSyncConfig", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Git Full sync Configuration", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncConfigRequest" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncConfigRequest" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncConfigRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the saved Configuration details for Git Full Sync.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitFullSyncConfig" + } + } + } + } + } + } + }, + "/ng/api/git-full-sync/files": { + "post": { + "tags": [ + "Git Full Sync" + ], + "summary": "List files in full sync along with their status", + "operationId": "listFullSyncFiles", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search Term.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Entity Type and Sync Status", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncEntityInfoFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncEntityInfoFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitFullSyncEntityInfoFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the List of Files for Git Full sync.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitFullSyncEntityInfo" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitFullSyncEntityInfo" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitFullSyncEntityInfo" + } + } + } + } + } + } + }, + "/ng/api/git-full-sync": { + "post": { + "tags": [ + "Git Full Sync" + ], + "summary": "Trigger Full Sync", + "operationId": "triggerFullSync", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully Triggered Full Sync.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTriggerGitFullSyncResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTriggerGitFullSyncResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTriggerGitFullSyncResponse" + } + } + } + } + } + } + }, + "/ng/api/git-sync-settings": { + "get": { + "tags": [ + "Git Sync Settings" + ], + "summary": "Get Git Sync Setting for the given scope", + "operationId": "getGitSyncSettings", + "parameters": [ + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Git Sync Setting of the given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + } + } + } + } + }, + "put": { + "tags": [ + "Git Sync Settings" + ], + "summary": "This updates the existing Git Sync settings within the scope. Only changing Connectivity Mode is allowed", + "operationId": "updateGitSyncSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains details of Git Sync Settings", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitSyncSettings" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitSyncSettings" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitSyncSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Updated Git Sync Setting", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + } + } + } + } + }, + "post": { + "tags": [ + "Git Sync Settings" + ], + "summary": "Creates Git Sync Setting in a scope", + "operationId": "createGitSyncSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains details of Git Sync settings like - (scope, executionOnDelegate)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitSyncSettings" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitSyncSettings" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitSyncSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully created Git Sync Setting", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncSettings" + } + } + } + } + } + } + }, + "/ng/api/git-sync": { + "get": { + "tags": [ + "Git Sync" + ], + "summary": "Lists Git Sync Config for the given scope", + "operationId": "getGitSyncConfigList", + "parameters": [ + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "List of Git Sync Config for the given scope", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + }, + "text/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + }, + "text/html": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + } + } + } + } + }, + "put": { + "tags": [ + "Git Sync" + ], + "summary": "Update existing Git Sync Config by Identifier", + "operationId": "updateGitSyncConfig", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of Git Sync Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Updated Git Sync Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + } + } + } + }, + "post": { + "tags": [ + "Git Sync" + ], + "summary": "Creates Git Sync Config in given scope", + "operationId": "createGitSyncConfig", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of Git Sync Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully created Git Sync Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + } + } + } + } + }, + "/ng/api/git-sync/git-sync-enabled": { + "get": { + "tags": [ + "Git Sync" + ], + "summary": "Check whether Git Sync is enabled for given scope or not", + "operationId": "isGitSyncEnabled", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Result of whether Git Sync is enabled for the scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitEnabled" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitEnabled" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitEnabled" + } + } + } + } + } + } + }, + "/ng/api/git-sync/{identifier}/folder/{folderIdentifier}/default": { + "put": { + "tags": [ + "Git Sync" + ], + "summary": "Update existing Git Sync Config default root folder by Identifier", + "operationId": "updateDefaultFolder", + "parameters": [ + { + "name": "projectId", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "organizationId", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "folderIdentifier", + "in": "path", + "description": "Folder Id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Updated Git Sync Config default root folder", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/GitSyncConfig" + } + } + } + } + } + } + }, + "/ng/api/git-sync-errors/count": { + "get": { + "tags": [ + "Git Sync Errors" + ], + "summary": "Get Errors Count for the given scope, Repo and Branch", + "operationId": "getGitSyncErrorsCount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search Term.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Count of both Git to Harness Errors and Connectivity Errors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncErrorCount" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncErrorCount" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGitSyncErrorCount" + } + } + } + } + } + } + }, + "/ng/api/git-sync-errors": { + "get": { + "tags": [ + "Git Sync Errors" + ], + "summary": "Lists Git to Harness Errors by file or connectivity errors for the given scope, Repo and Branch", + "operationId": "listGitSyncErrors", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search Term.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "gitToHarness", + "in": "query", + "description": "This specifies which errors to show - (Git to Harness or Connectivity), Put true to show Git to Harness Errors", + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Git to Harness Errors by file or connectivity errors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncError" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncError" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncError" + } + } + } + } + } + } + }, + "/ng/api/git-sync-errors/commits/{commitId}": { + "get": { + "tags": [ + "Git Sync Errors" + ], + "summary": "Lists Git to Harness Errors for the given Commit Id", + "operationId": "listGitToHarnessErrorForCommit", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "commitId", + "in": "path", + "description": "Commit Id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Git to Harness Errors for given Commit Id", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncError" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncError" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncError" + } + } + } + } + } + } + }, + "/ng/api/git-sync-errors/aggregate": { + "get": { + "tags": [ + "Git Sync Errors" + ], + "summary": "Lists Git to Harness Errors grouped by Commits for the given scope, Repo and Branch", + "operationId": "listGitToHarnessErrorsGroupedByCommits", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search Term.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "numberOfErrorsInSummary", + "in": "query", + "description": "Number of errors that will be displayed in the summary", + "schema": { + "maximum": 5, + "type": "integer", + "format": "int32", + "default": 5 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Git to Harness Errors grouped by Commit", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncErrorAggregateByCommit" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncErrorAggregateByCommit" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseGitSyncErrorAggregateByCommit" + } + } + } + } + } + } + }, + "/ng/api/ldap/ngLdapSettings": { + "get": { + "tags": [ + "Nextgen Ldap" + ], + "summary": "Get the NgLdap Setting", + "description": "For the given accountId fetch and return the ng ldap settings", + "operationId": "getNgLdapSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Get the NgLdap Setting", + "content": { + "application/x-kryo": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGLdapSettingsWithEncryptedDataDetails" + } + } + } + } + } + } + }, + "/ng/api/ldap/ldap-login-test": { + "post": { + "tags": [ + "Nextgen Ldap" + ], + "summary": "Test LDAP authentication", + "description": "Tests LDAP authentication for the given Account ID, with a valid test email and password", + "operationId": "postLdapAuthenticationTest", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "email": { + "type": "string", + "description": "This should be a valid test email" + }, + "password": { + "type": "string", + "description": "This should be a valid password for the test email" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns authentication status", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseLdapResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseLdapResponse" + } + } + } + } + } + } + }, + "/ng/api/ldap/{ldapId}/search/group": { + "get": { + "tags": [ + "Nextgen Ldap" + ], + "summary": "Return Ldap groups matching name", + "description": "Returns all userGroups for the configured Ldap in the account matching a given name.", + "operationId": "searchLdapGroups", + "parameters": [ + { + "name": "ldapId", + "in": "path", + "description": "Ldap setting id", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns ldap groups matching a given name", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseCollectionLdapGroupResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseCollectionLdapGroupResponse" + } + } + } + } + } + } + }, + "/ng/api/usage/cd/active-services/csv/download": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Download CSV Active Services report", + "operationId": "downloadActiveServiceCSVReport", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64", + "default": 0 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Download CSV Active Services report" + } + } + } + }, + "/ng/api/usage/CD/serviceInstancesLicense": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Gets License Usage By Module, Timestamp, and Account Identifier", + "operationId": "getCDLicenseUsageForServiceInstances", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account id to get the license usage.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns a license usage object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceInstanceUsageDTO" + } + } + } + } + } + } + }, + "/ng/api/usage/CD/servicesLicense": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Gets License Usage By Module, Timestamp, and Account Identifier", + "operationId": "getCDLicenseUsageForServices", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account id to get the license usage.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns a license usage object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceUsageDTO" + } + } + } + } + } + } + }, + "/ng/api/usage/{module}": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Gets License Usage By Module, Timestamp, and Account Identifier", + "operationId": "getLicenseUsage", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account id to get the license usage.", + "schema": { + "type": "string" + } + }, + { + "name": "module", + "in": "path", + "description": "A Harness platform module.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "CDLicenseType", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns a license usage object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOLicenseUsage" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/ldap/settings": { + "get": { + "tags": [ + "Authentication Settings" + ], + "summary": "Return configured Ldap settings for the account", + "description": "Returns configured Ldap settings and its details for the account.", + "operationId": "getLdapSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns ldap setting", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseLDAPSettings" + } + } + } + } + } + }, + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Updates Ldap setting", + "description": "Updates configured Ldap settings along with the user, group queries.", + "operationId": "updateLdapSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated LdapSettings. Values for all fields is needed, not just the fields you are updating", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LDAPSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Updated Ldap settings along with the user, group settings", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseLDAPSettings" + } + } + } + } + } + }, + "post": { + "tags": [ + "Authentication Settings" + ], + "summary": "Create Ldap setting", + "description": "Creates Ldap settings along with the user, group queries.", + "operationId": "createLdapSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Create LdapSettings request body. Values for connection settings are needed, user and group settings can also be provided", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LDAPSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Creates Ldap settings along with the user, group queries", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseLDAPSettings" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Authentication Settings" + ], + "summary": "Delete Ldap settings", + "description": "Delete configured Ldap settings on this account.", + "operationId": "deleteLdapSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully deleted Ldap settings configured on account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/delete-saml-metadata": { + "delete": { + "tags": [ + "Authentication Settings" + ], + "summary": "Delete SAML meta data", + "description": "Deletes SAML metadata for the given Account ID.", + "operationId": "deleteSamlMetaData", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully deleted SAML meta associated with a SAML setting", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseSSOConfig" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/saml-metadata/{samlSSOId}/delete": { + "delete": { + "tags": [ + "Authentication Settings" + ], + "summary": "Delete SAML meta data for given SAML sso id", + "description": "Deletes SAML metadata for the given Account and SAML sso id", + "operationId": "deleteSamlMetaDataForSamlSSOId", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "samlSSOId", + "in": "path", + "description": "Saml Settings Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully deleted SAML meta associated with a SAML SSO setting id", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseSSOConfig" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/saml-metadata-upload/{samlSSOId}/authentication": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Update authentication enabled or not for given SAML setting", + "description": "Updates if authentication is enabled or not for given SAML setting in Account ID.", + "operationId": "enableDisableAuthenticationForSAMLSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enable", + "in": "query", + "required": true, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "samlSSOId", + "in": "path", + "description": "Saml Settings Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully updated login allowed status for SAML setting in account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings": { + "get": { + "tags": [ + "Authentication Settings" + ], + "summary": "Gets authentication settings for the given Account ID", + "description": "Gets authentication settings for the given Account ID.", + "operationId": "getAuthenticationSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully returns authentication settings of an Account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseAuthenticationSettingsResponse" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/v2": { + "get": { + "tags": [ + "Authentication Settings" + ], + "summary": "Gets authentication settings version 2 for the given Account ID", + "description": "Gets authentication settings version 2 for the given Account ID.", + "operationId": "getAuthenticationSettingsV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully returns authentication settings of an Account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseAuthenticationSettingsResponse" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/login-settings/password-strength": { + "get": { + "tags": [ + "Authentication Settings" + ], + "summary": "Get password strength", + "description": "Gets password strength for the given Account ID.", + "operationId": "getPasswordStrengthSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns password strength of an Account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponsePasswordStrengthPolicy" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/saml-login-test": { + "get": { + "tags": [ + "Authentication Settings" + ], + "summary": "Test SAML connectivity", + "description": "Tests SAML connectivity for the given Account ID.", + "operationId": "getSamlLoginTest", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns connectivity status", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseLoginTypeResponse" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/saml-login-test/{samlSSOId}": { + "get": { + "tags": [ + "Authentication Settings" + ], + "summary": "Test SAML connectivity", + "description": "Tests SAML connectivity for the given Account ID and SAML setting.", + "operationId": "getSamlLoginTestV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "samlSSOId", + "in": "path", + "description": "Saml Settings Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns connectivity status", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseLoginTypeResponse" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/oauth/remove-mechanism": { + "delete": { + "tags": [ + "Authentication Settings" + ], + "summary": "Delete OAuth Setting", + "description": "Deletes OAuth settings for a given Account ID.", + "operationId": "removeOauthMechanism", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully removed OAuth settings configured to an account.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/public-access": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Enable/disable public access at account level", + "description": "Enable/disable public access for the given Account ID.", + "operationId": "setPublicAccess", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Information about the session timeout for all users of this account in minutes.", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully configured public access for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/session-timeout-account-level": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Set session timeout at account level", + "description": "Sets session timeout of all users for the given Account ID.", + "operationId": "setSessionTimeoutAtAccountLevel", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Information about the session timeout for all users of this account in minutes.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SessionTimeoutSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully configured session timeout for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/two-factor-admin-override-settings": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Set two factor authorization", + "description": "Sets Two-Factor authorization for the given Account ID.", + "operationId": "setTwoFactorAuthAtAccountLevel", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Boolean that specify whether or not to override two factor enabled setting", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/TwoFactorAdminOverrideSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully configured two factor authorization for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/update-auth-mechanism": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Update Auth mechanism", + "description": "Updates the authentication mechanism for the given Account ID.", + "operationId": "updateAuthMechanism", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "authenticationMechanism", + "in": "query", + "description": "Type of Authentication Mechanism SSO or NON_SSO", + "schema": { + "type": "string", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully updated Auth mechanism for an account.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/oauth/update-providers": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Update Oauth providers", + "description": "Updates OAuth providers for the given Account ID.", + "operationId": "updateOauthProviders", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated OAuthSettings. Please provide values for all fields, not just the fields you are updating", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/OAuthSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully updated the Oauth providers for the account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/saml-metadata-upload": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Update SAML metadata", + "description": "Updates SAML metadata of the SAML configuration configured for an account", + "operationId": "updateSamlMetaData", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "object", + "description": "SAML Metadata input file" + }, + "fileMetadata": { + "$ref": "#/components/schemas/FormDataContentDisposition" + }, + "displayName": { + "type": "string", + "description": "Display Name of the SAML" + }, + "groupMembershipAttr": { + "type": "string", + "description": "Group membership attribute" + }, + "authorizationEnabled": { + "type": "boolean", + "description": "Specify whether or not to enable authorization" + }, + "logoutUrl": { + "type": "string", + "description": "Logout URL" + }, + "entityIdentifier": { + "type": "string", + "description": "SAML metadata Identifier" + }, + "samlProviderType": { + "type": "string", + "description": "SAML provider type" + }, + "clientId": { + "type": "string", + "description": "Optional SAML clientId for Azure SSO" + }, + "clientSecret": { + "type": "string", + "description": "Optional SAML clientSecret reference string for Azure SSO" + }, + "jitEnabled": { + "type": "boolean", + "description": "Enable Just in time user provision", + "default": false + }, + "jitValidationKey": { + "type": "string", + "description": "Optional Key to match in SAML assertion for Just in time user provision" + }, + "jitValidationValue": { + "type": "string", + "description": "Optional Value to match in SAML assertion for Just in time user provision" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully updated SAML metadata of SAML setting configured for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseSSOConfig" + } + } + } + } + } + }, + "post": { + "tags": [ + "Authentication Settings" + ], + "summary": "Upload SAML metadata", + "description": "Updates the SAML metadata for the given Account ID.", + "operationId": "uploadSamlMetaData", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "object", + "description": "Saml Metadata input file" + }, + "fileMetadata": { + "$ref": "#/components/schemas/FormDataContentDisposition" + }, + "displayName": { + "type": "string", + "description": "Display Name of the SAML" + }, + "groupMembershipAttr": { + "type": "string", + "description": "Group membership attribute" + }, + "authorizationEnabled": { + "type": "boolean", + "description": "Specify whether or not to enable authorization" + }, + "logoutUrl": { + "type": "string", + "description": "Logout URL" + }, + "entityIdentifier": { + "type": "string", + "description": "SAML metadata Identifier" + }, + "samlProviderType": { + "type": "string", + "description": "SAML provider type" + }, + "clientId": { + "type": "string", + "description": "Optional SAML clientId for Azure SSO" + }, + "clientSecret": { + "type": "string", + "description": "Optional SAML clientSecret reference string for Azure SSO" + }, + "friendlySamlName": { + "type": "string", + "description": "Friendly name of the app on SAML SSO provider end in Harness" + }, + "jitEnabled": { + "type": "boolean", + "description": "Enable Just in time user provision", + "default": false + }, + "jitValidationKey": { + "type": "string", + "description": "Optional Key to match in SAML assertion for Just in time user provision" + }, + "jitValidationValue": { + "type": "string", + "description": "Optional Value to match in SAML assertion for Just in time user provision" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully uploads SAML metadata to the SAML setting configured for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseSSOConfig" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/saml-metadata-upload/{samlSSOId}": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Update SAML metadata for a given SAML SSO Id", + "description": "Updates SAML metadata of the SAML configuration with given SSO Id, configured for an account", + "operationId": "updateSamlMetaDataForSamlSSOId", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "samlSSOId", + "in": "path", + "description": "Saml Settings Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "object", + "description": "SAML Metadata input file" + }, + "fileMetadata": { + "$ref": "#/components/schemas/FormDataContentDisposition" + }, + "displayName": { + "type": "string", + "description": "Display Name of the SAML" + }, + "groupMembershipAttr": { + "type": "string", + "description": "Group membership attribute" + }, + "authorizationEnabled": { + "type": "boolean", + "description": "Specify whether or not to enable authorization" + }, + "logoutUrl": { + "type": "string", + "description": "Logout URL" + }, + "entityIdentifier": { + "type": "string", + "description": "SAML metadata Identifier" + }, + "samlProviderType": { + "type": "string", + "description": "SAML provider type" + }, + "clientId": { + "type": "string", + "description": "Optional SAML clientId for Azure SSO" + }, + "clientSecret": { + "type": "string", + "description": "Optional SAML clientSecret reference string for Azure SSO" + }, + "friendlySamlName": { + "type": "string", + "description": "Friendly name of the app on SAML SSO provider end in Harness" + }, + "jitEnabled": { + "type": "boolean", + "description": "Enable Just in time user provision", + "default": false + }, + "jitValidationKey": { + "type": "string", + "description": "Optional Key to match in SAML assertion for Just in time user provision" + }, + "jitValidationValue": { + "type": "string", + "description": "Optional Value to match in SAML assertion for Just in time user provision" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully updated SAML metadata of SAML setting configured for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseSSOConfig" + } + } + } + } + } + } + }, + "/ng/api/authentication-settings/whitelisted-domains": { + "put": { + "tags": [ + "Authentication Settings" + ], + "summary": "Updates the whitelisted domains", + "description": "Updates whitelisted domains configured for an account.", + "operationId": "updateWhitelistedDomains", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Set of whitelisted domains and IPs for the account", + "content": { + "*/*": { + "schema": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully updated whitelisted domains configured with an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/account-setting": { + "get": { + "tags": [ + "AccountSetting" + ], + "summary": "Get the AccountSetting by accountIdentifier", + "operationId": "getAccountSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the AccountSetting with the requested accountIdentifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccountSettingResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccountSettingResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccountSettingResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "AccountSetting" + ], + "summary": "Updates account settings", + "operationId": "updateAccountSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the AccountSetting to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccountSettings" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/AccountSettings" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/AccountSettings" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AccountSettings" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created account setting", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccountSettingResponse" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccountSettingResponse" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccountSettingResponse" + } + } + } + } + } + } + }, + "/ng/api/account-setting/list": { + "get": { + "tags": [ + "AccountSetting" + ], + "summary": "Get the AccountSetting by accountIdentifier", + "operationId": "listAccountSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Connector" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of AccountSettings with requested accountIdentifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAccountSettings" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAccountSettings" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAccountSettings" + } + } + } + } + } + } + }, + "/ng/api/agent/mtls/endpoint": { + "get": { + "tags": [ + "Agent mTLS Endpoint Management" + ], + "summary": "Gets the agent mTLS endpoint for an account.", + "operationId": "getAgentMtlsEndpointForAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The mTLS endpoint for the account.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseAgentMtlsEndpointDetails" + } + } + } + } + } + }, + "put": { + "tags": [ + "Agent mTLS Endpoint Management" + ], + "summary": "Updates the existing agent mTLS endpoint for an account.", + "operationId": "updateAgentMtlsEndpointForAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "The details to update for the agent mTLS endpoint.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AgentMtlsEndpointRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The details of the updated mTLS endpoint.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseAgentMtlsEndpointDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Agent mTLS Endpoint Management" + ], + "summary": "Creates the agent mTLS endpoint for an account.", + "operationId": "createAgentMtlsEndpointForAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "The details of the agent mTLS endpoint to create.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AgentMtlsEndpointRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The details of the newly created mTLS endpoint.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseAgentMtlsEndpointDetails" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Agent mTLS Endpoint Management" + ], + "summary": "Removes the agent mTLS endpoint for an account.", + "operationId": "deleteAgentMtlsEndpointForAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "True if and only if the endpoint existed and got removed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + }, + "patch": { + "tags": [ + "Agent mTLS Endpoint Management" + ], + "summary": "Updates selected properties of the existing agent mTLS endpoint for an account.", + "operationId": "patchAgentMtlsEndpointForAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "A subset of the details to update for the agent mTLS endpoint.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AgentMtlsEndpointRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The details of the updated mTLS endpoint.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseAgentMtlsEndpointDetails" + } + } + } + } + } + } + }, + "/ng/api/agent/mtls/check-availability": { + "get": { + "tags": [ + "Agent mTLS Endpoint Management" + ], + "summary": "Checks whether a given agent mTLS endpoint domain prefix is available.", + "operationId": "checkAgentMtlsEndpointDomainPrefixAvailability", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "domainPrefix", + "in": "query", + "description": "The domain prefix to check.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "True if and only if the domain prefix is currently not in use by any existing mTLS endpoint.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/customDeployment/get-references": { + "post": { + "tags": [ + "CustomDeployment" + ], + "summary": "Gets Custom Deployment Entity References", + "operationId": "getCustomDeploymentEntityReferences", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Custom Deployment Yaml Request DTO containing entityYaml", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomDeploymentYamlRequestDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomDeploymentYamlRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns all entity references in the custom deployment template.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListEntityDetailProtoDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListEntityDetailProtoDTO" + } + } + } + } + } + } + }, + "/ng/api/customDeployment/expression-variables": { + "post": { + "tags": [ + "CustomDeployment" + ], + "summary": "Gets Custom Deployment Expression Variables", + "operationId": "getCustomDeploymentExpressionVariables", + "requestBody": { + "description": "Custom Deployment Yaml Request DTO containing entityYaml", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomDeploymentYamlRequestDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomDeploymentYamlRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns all Variables used that are valid to be used as expression in template.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomDeploymentVariableResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomDeploymentVariableResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/customDeployment/variables/{templateIdentifier}": { + "get": { + "tags": [ + "CustomDeployment" + ], + "summary": "Gets Infra Variables from a Custom Deployment Template by identifier", + "operationId": "getCustomDeploymentInfraVariables", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Custom Deployment Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Version Label", + "schema": { + "type": "string" + } + }, + { + "name": "deleted", + "in": "query", + "description": "Specifies whether Template is deleted or not", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The saved Custom Deployment Infra Variables", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/customDeployment/get-updated-Yaml/{infraIdentifier}": { + "post": { + "tags": [ + "CustomDeployment" + ], + "summary": "Return the updated yaml for infrastructure based on Deployment template", + "operationId": "getUpdatedYamlForInfrastructure", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "path", + "description": "Infrastructure Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomDeploymentYamlDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomDeploymentYamlDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Return the updated yaml for infrastructure based on Deployment template", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomDeploymentRefreshYamlDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomDeploymentRefreshYamlDTO" + } + } + } + } + } + } + }, + "/ng/api/customDeployment/validate-infrastructure/{infraIdentifier}": { + "get": { + "tags": [ + "CustomDeployment" + ], + "summary": "This validates whether Infrastructure is valid or not", + "operationId": "validateInfrastructureForDeploymentTemplate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "envIdentifier", + "in": "query", + "description": "Environment Identifier for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "path", + "description": "Infrastructure Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns if the infra is valid or not.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomDeploymentInfraResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomDeploymentInfraResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/download-delegates/docker": { + "post": { + "tags": [ + "Delegate Download Resource" + ], + "summary": "Downloads a docker delegate yaml file.", + "operationId": "downloadDockerDelegateYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Parameters needed for downloading docker delegate yaml", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DelegateDownloadRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delegate Yaml File." + } + } + } + }, + "/ng/api/download-delegates/kubernetes": { + "post": { + "tags": [ + "Delegate Download Resource" + ], + "summary": "Downloads a kubernetes delegate yaml file.", + "operationId": "downloadKubernetesDelegateYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Parameters needed for downloading kubernetes delegate yaml", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DelegateDownloadRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delegate Yaml File." + } + } + } + }, + "/ng/api/delegate-group-tags/{groupIdentifier}": { + "get": { + "tags": [ + "Delegate Group Tags Resource" + ], + "summary": "Retrieves list of tags attached with Delegate group", + "operationId": "listTagsForDelegateGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "groupIdentifier", + "in": "path", + "description": "Delegate Group Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delegate group details along with tags.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateGroupDTO" + } + } + } + } + } + }, + "put": { + "tags": [ + "Delegate Group Tags Resource" + ], + "summary": "Clears all existing tags with delegate group and attach given set of tags to delegate group.", + "operationId": "updateTagsOfDelegateGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "groupIdentifier", + "in": "path", + "description": "Delegate Group Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Set of tags", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DelegateGroupTags" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delegate Group details for updated group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateGroupDTO" + } + } + } + } + } + }, + "post": { + "tags": [ + "Delegate Group Tags Resource" + ], + "summary": "Add given list of tags to the Delegate group", + "operationId": "addTagsToDelegateGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "groupIdentifier", + "in": "path", + "description": "Delegate Group Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Set of tags", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DelegateGroupTags" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delegate Group details for updated group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateGroupDTO" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Delegate Group Tags Resource" + ], + "summary": "Deletes all tags from the Delegate group", + "operationId": "deleteTagsFromDelegateGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "groupIdentifier", + "in": "path", + "description": "Delegate Group Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delegate Group details for updated group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateGroupDTO" + } + } + } + } + } + } + }, + "/ng/api/delegate-group-tags/delegate-groups": { + "post": { + "tags": [ + "Delegate Group Tags Resource" + ], + "summary": "List delegate groups that are having mentioned tags.", + "operationId": "listDelegateGroupsUsingTags", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Set of tags", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DelegateGroupTags" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "List of Delegate Group details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseListDelegateGroupDTO" + } + } + } + } + } + } + }, + "/ng/api/delegate-setup/delegate/{delegateIdentifier}": { + "delete": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Deletes a Delegate by its identifier.", + "operationId": "deleteDelegate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "delegateIdentifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "200 Ok response if everything successfully deleted delegate", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateDeleteResponse" + } + } + } + } + } + } + }, + "/ng/api/delegate-setup/delete-delegate-override": { + "delete": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Delete delegate image tag override", + "operationId": "overrideDelegateImageTag", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "tags", + "in": "query", + "schema": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delete delegate image tag override" + } + } + } + }, + "/ng/api/delegate-setup/delegate-terraform-module-file": { + "get": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Generates delegate terraform example module file from the account", + "operationId": "generateTerraformModule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Generated terraform module file." + } + } + } + }, + "/ng/api/delegate-setup/generate-helm-values": { + "post": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Generates helm values yaml file from the data specified in request body (Delegate setup details).", + "operationId": "generateNgHelmValuesYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Delegate setup details, containing data to populate yaml file values.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DelegateSetupDetails" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Generated yaml file." + } + } + } + }, + "/ng/api/delegate-setup/override-delegate-tag": { + "get": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Lists all delegates overrides in NG filtered by provided conditions", + "operationId": "listOverrideDelegateImageTag", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Lists all delegate overrides in NG", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseVersionOverridesResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Overrides delegate image tag for account", + "operationId": "overrideDelegateImageTag_1", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "tags", + "in": "query", + "description": "if provided, will override the image for all delegates which have all the provided tags", + "schema": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "delegateTag", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "validTillNextRelease", + "in": "query", + "description": "If set to true, harness will override your custom tag when new delegate is released", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "validForDays", + "in": "query", + "description": "days after which harness will override your custom tag", + "schema": { + "type": "integer", + "format": "int32", + "default": 180 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Delegate Image Tag", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseString" + } + } + } + } + } + } + }, + "/ng/api/delegate-setup/listDelegates": { + "post": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Lists all delegates in NG filtered by provided conditions", + "operationId": "listDelegates", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "all", + "in": "query", + "description": "Filter delegates based on the scope (query param: all), if true will return delegates of underlying orgs/projects and ignore the filters provided as part of the request body", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Details of the Delegate filter properties to be applied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DelegateFilterPropertiesDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Lists all delegates in NG", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseListDelegateListResponse" + } + } + } + } + } + } + }, + "/ng/api/delegate-setup/latest-supported-version": { + "get": { + "tags": [ + "Delegate Setup Resource" + ], + "summary": "Gets the latest supported delegate version. The version has YY.MM.XXXXX format. You can use any version lower than the returned results(upto 3 months old)", + "operationId": "publishedDelegateVersion", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Gets the latest supported delegate version", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseSupportedDelegateVersion" + } + } + } + } + } + } + }, + "/ng/api/delegate-token-ng": { + "get": { + "tags": [ + "Delegate Token Resource" + ], + "summary": "Retrieves Delegate Tokens by Account, Organization, Project and status.", + "operationId": "getCgDelegateTokens", + "parameters": [ + { + "name": "name", + "in": "query", + "description": "Name of Delegate Token (ACTIVE or REVOKED).", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "status", + "in": "query", + "description": "Status of Delegate Token (ACTIVE or REVOKED). If left empty both active and revoked tokens will be retrieved", + "schema": { + "type": "string", + "enum": [ + "ACTIVE", + "REVOKED" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "A list of Delegate Tokens", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseListDelegateTokenDetails" + } + } + } + } + } + }, + "put": { + "tags": [ + "Delegate Token Resource" + ], + "summary": "Revokes Delegate Token.", + "operationId": "revokeCgDelegateToken", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "tokenName", + "in": "query", + "description": "Delegate Token name", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "200 Ok response if everything successfully revoked token", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateTokenDetails" + } + } + } + } + } + }, + "post": { + "tags": [ + "Delegate Token Resource" + ], + "summary": "Creates Delegate Token.", + "operationId": "createDelegateToken", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "tokenName", + "in": "query", + "description": "Delegate Token name", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "revokeAfter", + "in": "query", + "description": "Epoch time in milliseconds after which the token will be marked as revoked. There can be a delay of upto one hour from the epoch value provided and actual revoking of the token.", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "A created Token.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateTokenDetails" + } + } + } + } + } + } + }, + "/ng/api/delegate-token-ng/delegate-groups": { + "get": { + "tags": [ + "Delegate Token Resource" + ], + "summary": "Lists delegate groups that are using the specified delegate token.", + "operationId": "getDelegateGroupsUsingToken", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "delegateTokenName", + "in": "query", + "description": "Delegate Token name", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "A list of delegate groups that are usign the specified token.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseDelegateGroupListing" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/check-allowed-values": { + "post": { + "tags": [ + "Environments" + ], + "summary": "Check for allowed-values in the Environments", + "operationId": "checkAllowedValuesInEnvs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Environments using allowed-values", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2": { + "get": { + "tags": [ + "Environments" + ], + "summary": "Gets Environment list for a project", + "operationId": "getEnvironmentList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "envIdentifiers", + "in": "query", + "description": "List of EnvironmentIds", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies sorting criteria of the list. Like sorting based on the last updated entity, alphabetical sorting in an ascending or descending order", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Environments for a Project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseEnvironmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseEnvironmentResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Environments" + ], + "summary": "Update an Environment by identifier", + "operationId": "updateEnvironmentV2", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Environment to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Environment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Environments" + ], + "summary": "Create an Environment", + "operationId": "createEnvironmentV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Environment to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Environment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/{environmentIdentifier}": { + "get": { + "tags": [ + "Environments" + ], + "summary": "Gets an Environment by identifier", + "operationId": "getEnvironmentV2", + "parameters": [ + { + "name": "environmentIdentifier", + "in": "path", + "description": "Environment Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "deleted", + "in": "query", + "description": "Specify whether Environment is deleted or not", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The saved Environment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Environments" + ], + "summary": "Delete an Environment by identifier", + "operationId": "deleteEnvironmentV2", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "path", + "description": "Environment Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Environment is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/serviceOverrides": { + "get": { + "tags": [ + "Environments" + ], + "summary": "Gets Service Overrides list", + "operationId": "getServiceOverridesList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 500 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "Environment Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "description": "Service Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies the sorting criteria of the list. Like sorting based on the last updated entity, alphabetical sorting in an ascending or descending order", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Service Overrides for an Environment.serviceIdentifier, if passed, can be used to get the overrides for that particular Service in the Environment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceOverrideResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceOverrideResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Environments" + ], + "summary": "upsert a Service Override for an Environment", + "operationId": "upsertServiceOverride", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Service Override to be upserted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceOverrideRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceOverrideRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Upsert ( Create/Update ) a Service Override in an Environment.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Environments" + ], + "summary": "Delete a ServiceOverride entity", + "operationId": "deleteServiceOverride", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "Environment Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "description": "Service Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Service Override is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/import": { + "post": { + "tags": [ + "Environments" + ], + "summary": "Import and Create Environment from Git Repository", + "operationId": "importEnvironment", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "Environment Identifier for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "isForceImport", + "in": "query", + "description": "isForceImport", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Import and Create Environment from Git Repository and saves a record for it in Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentImportResponseDetails" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentImportResponseDetails" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/list/access": { + "get": { + "tags": [ + "Environments" + ], + "summary": "Gets Environment Access list", + "operationId": "getEnvironmentAccessList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "page", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "size", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "envIdentifiers", + "in": "query", + "description": "List of EnvironmentIds", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "envGroupIdentifier", + "in": "query", + "description": "Environment group identifier", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Environment type for the entity", + "schema": { + "type": "string", + "enum": [ + "PreProduction", + "Production" + ] + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies sorting criteria of the list. Like sorting based on the last updated entity, alphabetical sorting in an ascending or descending order", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Environments that are accessible", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListEnvironmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListEnvironmentResponse" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/move-config/{environmentIdentifier}": { + "post": { + "tags": [ + "Environments" + ], + "summary": "Move environment YAML from inline to remote", + "operationId": "moveEnvironmentConfigs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "path", + "description": "Environment Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveConfigType", + "in": "query", + "description": "Tells weather the entity has to be moved from inline to remote or remote to inline", + "required": true, + "schema": { + "type": "string", + "enum": [ + "INLINE_TO_REMOTE", + "REMOTE_TO_INLINE" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Move environment YAML from inline to remote", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentMoveConfigResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentMoveConfigResponse" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/{environmentIdentifier}/update-git-metadata": { + "put": { + "tags": [ + "Environments" + ], + "summary": "Update git-metadata in remote environment Entity", + "description": "Update git-metadata in remote environment and returns the identifier of updated environment", + "operationId": "updateEnvironmentGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "path", + "description": "Environment Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns identifier of updated environment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGitUpdateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentGitUpdateResponse" + } + } + } + } + } + } + }, + "/ng/api/environmentsV2/upsert": { + "put": { + "tags": [ + "Environments" + ], + "summary": "Upsert an Environment by identifier", + "operationId": "upsertEnvironmentV2", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Environment to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Environment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnvironmentResponse" + } + } + } + } + } + } + }, + "/ng/api/infrastructures": { + "get": { + "tags": [ + "Infrastructures" + ], + "summary": "Gets Infrastructure list", + "operationId": "getInfrastructureList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "Environment Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifiers", + "in": "query", + "description": "List of InfrastructureIds", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "deploymentType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Kubernetes", + "NativeHelm", + "Ssh", + "WinRm", + "ServerlessAwsLambda", + "AzureWebApp", + "AzureFunction", + "CustomDeployment", + "ECS", + "Elastigroup", + "TAS", + "Asg", + "GoogleCloudFunctions", + "AwsLambda", + "AWS_SAM", + "SERVICE_YAML_V1_TYPE", + "GoogleCloudRun" + ] + } + }, + { + "name": "deploymentTemplateIdentifier", + "in": "query", + "description": "The Identifier of deployment template if infrastructure is of type custom deployment", + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "The version label of deployment template if infrastructure is of type custom deployment", + "schema": { + "type": "string" + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies the sorting criteria of the list. Elements in the list should be of the format \"property,order\" or \"property\". Order can take values ASC or DESC for alphabetical ascending and descending orders respectively. If the order is not specified, it takes ASC by default", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "serviceRefs", + "in": "query", + "description": "list of service refs required to fetch infrastructures scoped to these service refs", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Infrastructure for an Environment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInfrastructureResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInfrastructureResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Infrastructures" + ], + "summary": "Update an Infrastructure by identifier", + "operationId": "updateInfrastructure", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Infrastructure to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InfrastructureRequest" + }, + "examples": { + "Update": { + "summary": "Sample Infrastructure update payload", + "description": "Sample Infrastructure payload", + "value": { + "name": "infrastructure", + "identifier": "infrastructureId", + "description": "infrastructure description", + "tags": {}, + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "environmentRef": "environmentId", + "deploymentType": "Kubernetes", + "type": "KubernetesDirect", + "yaml": "infrastructureDefinition:\n name: infrastructure\n identifier: infrastructure\n description: infrastructure description\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n environmentRef: environmentId\n deploymentType: Kubernetes\n type: KubernetesDirect\n spec:\n connectorRef: connectorId\n namespace: namespace\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InfrastructureRequest" + }, + "examples": { + "Update": { + "summary": "Sample Infrastructure update payload", + "description": "Sample Infrastructure payload", + "value": { + "name": "infrastructure", + "identifier": "infrastructureId", + "description": "infrastructure description", + "tags": {}, + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "environmentRef": "environmentId", + "deploymentType": "Kubernetes", + "type": "KubernetesDirect", + "yaml": "infrastructureDefinition:\n name: infrastructure\n identifier: infrastructure\n description: infrastructure description\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n environmentRef: environmentId\n deploymentType: Kubernetes\n type: KubernetesDirect\n spec:\n connectorRef: connectorId\n namespace: namespace\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Infrastructure", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Infrastructures" + ], + "summary": "Create an Infrastructure in an Environment", + "operationId": "createInfrastructure", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Infrastructure to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InfrastructureRequest" + }, + "examples": { + "Create": { + "summary": "Sample Infrastructure create payload", + "description": "Sample Infrastructure payload", + "value": { + "name": "infrastructure", + "identifier": "infrastructureId", + "description": "infrastructure description", + "tags": {}, + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "environmentRef": "environmentId", + "deploymentType": "Kubernetes", + "type": "KubernetesDirect", + "yaml": "infrastructureDefinition:\n name: infrastructure\n identifier: infrastructure\n description: infrastructure description\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n environmentRef: environmentId\n deploymentType: Kubernetes\n type: KubernetesDirect\n spec:\n connectorRef: connectorId\n namespace: namespace\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InfrastructureRequest" + }, + "examples": { + "Create": { + "summary": "Sample Infrastructure create payload", + "description": "Sample Infrastructure payload", + "value": { + "name": "infrastructure", + "identifier": "infrastructureId", + "description": "infrastructure description", + "tags": {}, + "orgIdentifier": "default", + "projectIdentifier": "projectIdentifier", + "environmentRef": "environmentId", + "deploymentType": "Kubernetes", + "type": "KubernetesDirect", + "yaml": "infrastructureDefinition:\n name: infrastructure\n identifier: infrastructure\n description: infrastructure description\n tags: {}\n orgIdentifier: default\n projectIdentifier: projectIdentifier\n environmentRef: environmentId\n deploymentType: Kubernetes\n type: KubernetesDirect\n spec:\n connectorRef: connectorId\n namespace: namespace\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Infrastructure", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureResponse" + } + } + } + } + } + } + }, + "/ng/api/infrastructures/{infraIdentifier}": { + "get": { + "tags": [ + "Infrastructures" + ], + "summary": "Gets an Infrastructure by identifier", + "operationId": "getInfrastructure", + "parameters": [ + { + "name": "infraIdentifier", + "in": "path", + "description": "Infrastructure Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "envId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "deleted", + "in": "query", + "description": "Specify whether Infrastructure is deleted or not", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The saved Infrastructure", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Infrastructures" + ], + "summary": "Delete an Infrastructure by identifier", + "operationId": "deleteInfrastructure", + "parameters": [ + { + "name": "infraIdentifier", + "in": "path", + "description": "Infrastructure Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "Environment Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Infrastructure is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/infrastructures/import": { + "post": { + "tags": [ + "Infrastructures" + ], + "summary": "Import and Create Infrastructure from Git Repository", + "operationId": "importInfrastructure", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "Environment Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "query", + "description": "Infrastructure Identifier for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "isForceImport", + "in": "query", + "description": "isForceImport", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Import and Create Infrastructure from Git Repository and saves a record for it in Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureImportResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureImportResponse" + } + } + } + } + } + } + }, + "/ng/api/infrastructures/move-config/{infraIdentifier}": { + "post": { + "tags": [ + "Infrastructures" + ], + "summary": "Move infra YAML from inline to remote", + "operationId": "moveInfraConfigs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "envId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "path", + "description": "Infrastructure Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveConfigType", + "in": "query", + "description": "Tells weather the entity has to be moved from inline to remote or remote to inline", + "required": true, + "schema": { + "type": "string", + "enum": [ + "INLINE_TO_REMOTE", + "REMOTE_TO_INLINE" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Move infra YAML from inline to remote", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfraMoveConfigResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfraMoveConfigResponse" + } + } + } + } + } + } + }, + "/ng/api/infrastructures/{infraIdentifier}/update-git-metadata": { + "put": { + "tags": [ + "Infrastructures" + ], + "summary": "Update git-metadata in remote infrastructure Entity", + "description": "Update git-metadata in remote infrastructure and returns the identifier of updated infrastructure", + "operationId": "updateInfrastructureGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "envId", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "path", + "description": "Infrastructure Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns identifier of updated infrastructure", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureGitUpdateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInfrastructureGitUpdateResponse" + } + } + } + } + } + } + }, + "/ng/api/invites/{inviteId}": { + "put": { + "tags": [ + "Invite" + ], + "summary": "Resend invite", + "description": "Resend the invite email", + "operationId": "updateInvite", + "parameters": [ + { + "name": "inviteId", + "in": "path", + "description": "Invite id", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Updated Invite", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Invite" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Invite" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Invite", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOptionalInvite" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOptionalInvite" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Invite" + ], + "summary": "Delete Invite", + "description": "Delete an Invite by Identifier", + "operationId": "deleteInvite", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inviteId", + "in": "path", + "description": "Invite Id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns either empty value of Deleted Invite", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOptionalInvite" + } + } + } + } + } + } + }, + "/ng/api/invites/invite": { + "get": { + "tags": [ + "Invite" + ], + "summary": "Get Invite", + "description": "Gets an Invite by either Invite Id or JwtToken", + "operationId": "getInvite", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inviteId", + "in": "query", + "description": "Invitation Id", + "schema": { + "type": "string" + } + }, + { + "name": "jwttoken", + "in": "query", + "description": "JWT Token", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Invite having either InviteId or JwtToken as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInvite" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInvite" + } + } + } + } + } + } + }, + "/ng/api/invites": { + "get": { + "tags": [ + "Invite" + ], + "summary": "List Invites", + "description": "List all the Invites for a Project or Organization", + "operationId": "getInvites", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Invites", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInvite" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInvite" + } + } + } + } + } + } + }, + "/ng/api/invites/aggregate": { + "post": { + "tags": [ + "Invite" + ], + "summary": "Get pending users", + "description": "List of all the pending users in a scope", + "operationId": "getPendingUsersAggregated", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ACLAggregateFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ACLAggregateFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Pending Invites", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInvite" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInvite" + } + } + } + } + } + } + }, + "/ng/api/oidc/access-token/aws/webidentity-session-access": { + "post": { + "tags": [ + "Oidc-Access-Token" + ], + "summary": "Generate an OIDC IAM Role Credential for AWS", + "operationId": "generateOidcIAMRoleCredentialForAws", + "requestBody": { + "description": "Details of AWS WebIdentity credential", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AwsOidcCredentialsRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AwsOidcCredentialsRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Generate an OIDC IAM Role Credential for AWS", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAwsOidcCredentialResponseDto" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAwsOidcCredentialResponseDto" + } + } + } + } + } + } + }, + "/ng/api/oidc/access-token/gcp/service-account-access": { + "post": { + "tags": [ + "Oidc-Access-Token" + ], + "summary": "Generates an OIDC Service Account Access Token for GCP", + "operationId": "getOidcServiceAccountAccessTokenForGcp", + "requestBody": { + "description": "Details of GCP Workload Identity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GcpOidcAccessTokenRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/GcpOidcAccessTokenRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns OIDC Service Account Access Token response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGcpOidcServiceAccountAccessTokenResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGcpOidcServiceAccountAccessTokenResponse" + } + } + } + } + } + } + }, + "/ng/api/oidc/access-token/gcp/workload-access": { + "post": { + "tags": [ + "Oidc-Access-Token" + ], + "summary": "Generates an OIDC Workload Access Token for GCP", + "operationId": "OidcWorkloadAccessTokenResponse", + "requestBody": { + "description": "Details of GCP Workload Identity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GcpOidcAccessTokenRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/GcpOidcAccessTokenRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns OIDC Workload Access Token response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOidcWorkloadAccessTokenResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOidcWorkloadAccessTokenResponse" + } + } + } + } + } + } + }, + "/ng/api/oidc/id-token/gcp": { + "post": { + "tags": [ + "Oidc-ID-Token" + ], + "summary": "Generates an OIDC ID Token for GCP", + "operationId": "generateOidcIdTokenForGcp", + "requestBody": { + "description": "Details of GCP Workload Identity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GcpOidcTokenRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/GcpOidcTokenRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns OIDC ID Token as a JWT", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/oidc/id-token/gcp-v2": { + "post": { + "tags": [ + "Oidc-ID-Token" + ], + "summary": "Generates an OIDC ID Token for GCP", + "operationId": "generateOidcIdTokenForGcp_1", + "requestBody": { + "description": "Details of GCP Workload Identity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GcpOidcTokenRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/GcpOidcTokenRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns OIDC ID Token as a JWT", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/oidc/id-token/custom": { + "post": { + "tags": [ + "Oidc-ID-Token" + ], + "summary": "Generate a custom OIDC ID Token", + "operationId": "generateCustomOidcIdToken", + "requestBody": { + "description": "contains oidc fields for custom token", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomOidcIdTokenRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomOidcIdTokenRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns OIDC ID Token as a JWT", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/oidc/id-token/aws": { + "post": { + "tags": [ + "Oidc-ID-Token" + ], + "summary": "Generates an OIDC ID Token for AWS", + "operationId": "generateOidcIdTokenForAws", + "requestBody": { + "description": "contains oidc fields for aws", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AwsOidcTokenRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AwsOidcTokenRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns OIDC ID Token as a JWT", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/oidc/account/{accountId}/.wellknown/jwks": { + "get": { + "tags": [ + "OIDC" + ], + "summary": "Get the openid configuration for Harness", + "operationId": "getHarnessOpenIdConfig", + "parameters": [ + { + "name": "accountId", + "in": "path", + "description": "This is the accountIdentifier for the account for which the JWKS public key needs to be exposed.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This gets the openid configuration for Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/JwksPublicKeysDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/JwksPublicKeysDTO" + } + } + } + } + } + } + }, + "/ng/api/oidc/account/{accountId}/.well-known/openid-configuration": { + "get": { + "tags": [ + "OIDC" + ], + "summary": "Get the openid configuration for Harness", + "operationId": "getHarnessOpenIdConfig_1", + "parameters": [ + { + "name": "accountId", + "in": "path", + "description": "This is the accountIdentifier for the account for which the JWKS public key needs to be exposed.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This gets the openid configuration for Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OidcConfiguration" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/OidcConfiguration" + } + } + } + } + } + } + }, + "/ng/api/provider": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Gets Provider list", + "operationId": "getProviderList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Services for a Project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListGetProviderResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Provider" + ], + "summary": "Create a Provider", + "operationId": "createProvider", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Provider to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateProviderRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Provider", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCreateProviderResponse" + } + } + } + } + } + } + }, + "/ng/api/provider/{providerIdentifier}": { + "get": { + "tags": [ + "Provider" + ], + "summary": "Gets a Provider by identifier", + "operationId": "getProvider", + "parameters": [ + { + "name": "providerIdentifier", + "in": "path", + "description": "Provider Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The saved Provider", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGetProviderResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Provider" + ], + "summary": "Update a Provider by identifier", + "operationId": "updateProvider", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "providerIdentifier", + "in": "path", + "description": "Provider Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Provider to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateProviderRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Provider", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUpdateProviderResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Provider" + ], + "summary": "Delete a Provider by identifier", + "operationId": "deleteProvider", + "parameters": [ + { + "name": "providerIdentifier", + "in": "path", + "description": "Provider Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Provider is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTODeleteProviderResponse" + } + } + } + } + } + } + }, + "/ng/api/apikey": { + "get": { + "tags": [ + "ApiKey" + ], + "summary": "Fetches the list of API Keys corresponding to the request's filter criteria.", + "operationId": "listApiKeys_1", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyType", + "in": "query", + "description": "This is the API Key type like Personal Access Key or Service Account Key.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + } + }, + { + "name": "parentIdentifier", + "in": "query", + "description": "ID of API key's Parent Service Account", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of API Key IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of API keys.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListApiKey" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListApiKey" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListApiKey" + } + } + } + } + } + }, + "post": { + "tags": [ + "ApiKey" + ], + "summary": "Creates an API key", + "operationId": "createApiKey", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiKey" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ApiKey" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ApiKey" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created API key", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKey" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKey" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKey" + } + } + } + } + } + } + }, + "/ng/api/apikey/{identifier}": { + "put": { + "tags": [ + "ApiKey" + ], + "summary": "Updates API Key for the provided ID", + "operationId": "updateApiKey", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "This is the API key ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiKey" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ApiKey" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ApiKey" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated API key", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKey" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKey" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKey" + } + } + } + } + } + }, + "delete": { + "tags": [ + "ApiKey" + ], + "summary": "Deletes the API Key corresponding to the provided ID.", + "operationId": "deleteApiKey", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyType", + "in": "query", + "description": "This is the API Key type like Personal Access Key or Service Account Key.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + } + }, + { + "name": "parentIdentifier", + "in": "query", + "description": "Id of API key's Parent Service Account", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "This is the API key ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns a boolean value. The value is True if the API Key is successfully deleted, else it is False.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/apikey/aggregate/{identifier}": { + "get": { + "tags": [ + "ApiKey" + ], + "summary": "Fetches the API Keys details corresponding to the provided ID and Scope.", + "operationId": "getAggregatedApiKey", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyType", + "in": "query", + "description": "This is the API Key type like Personal Access Key or Service Account Key.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + } + }, + { + "name": "parentIdentifier", + "in": "query", + "description": "ID of API key's Parent Service Account", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "This is the API key ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the API key", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKeyAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKeyAggregate" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApiKeyAggregate" + } + } + } + } + } + } + }, + "/ng/api/apikey/aggregate": { + "get": { + "tags": [ + "ApiKey" + ], + "summary": "Fetches the list of Aggregated API Keys corresponding to the request's filter criteria.", + "operationId": "listApiKeys", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyType", + "in": "query", + "description": "This is the API Key type like Personal Access Key or Service Account Key.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + } + }, + { + "name": "parentIdentifier", + "in": "query", + "description": "ID of API key's Parent Service Account", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of API Key IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter API keys. Any API key having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Paginated list of Aggregated API keys.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseApiKeyAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseApiKeyAggregate" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseApiKeyAggregate" + } + } + } + } + } + } + }, + "/ng/api/host-validation": { + "post": { + "tags": [ + "ValidateHost" + ], + "summary": "Validates hosts connectivity credentials", + "operationId": "validateHosts", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "description": "Secret Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of SSH or WinRm hosts to validate, and Delegate tags (optional)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HostValidationParams" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns validation response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListHostValidationDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListHostValidationDTO" + } + } + } + } + }, + "deprecated": true + } + }, + "/ng/api/hosts/filter": { + "post": { + "tags": [ + "Hosts" + ], + "summary": "Gets the list of hosts filtered by accountIdentifier and connectorIdentifier", + "operationId": "filterHostsByConnector", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "description": "Connector Identifier", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the filters applied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HostFilterDTO" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/HostFilterDTO" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/HostFilterDTO" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/HostFilterDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of hosts filtered by accountIdentifier and connectorIdentifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseHostDTO" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseHostDTO" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseHostDTO" + } + } + } + } + } + } + }, + "/ng/api/hosts/validate": { + "post": { + "tags": [ + "Hosts" + ], + "summary": "Validates hosts connectivity credentials", + "operationId": "validateHosts_1", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "description": "Secret Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of SSH or WinRm hosts to validate, and Delegate tags (optional)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HostValidationParams" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns validation response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListHostValidationDTO" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListHostValidationDTO" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListHostValidationDTO" + } + } + } + } + } + } + }, + "/ng/api/secret-managers/meta-data": { + "post": { + "tags": [ + "Secret Managers" + ], + "summary": "Gets the metadata of Secret Manager", + "operationId": "getMetadata", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details required for the creation of the Secret Manager", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretManagerMetadataRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretManagerMetadataRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the metadata of Secret Manager", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretManagerMetadataDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretManagerMetadataDTO" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets": { + "get": { + "tags": [ + "Secrets" + ], + "summary": "Fetches the list of Secrets corresponding to the request's filter criteria.", + "operationId": "listSecretsV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of Secret IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Secret whether it is SecretFile, SecretText or SSH key", + "schema": { + "type": "string", + "enum": [ + "SecretFile", + "SecretText", + "SSHKey", + "WinRmCredentials" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter Secrets based on name, Identifier and tags by this search term", + "schema": { + "type": "string" + } + }, + { + "name": "types", + "in": "query", + "description": "Add multiple secret types like SecretFile, SecretText or SSH key to criteria", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "SecretFile", + "SecretText", + "SSHKey", + "WinRmCredentials" + ] + } + } + }, + { + "name": "source_category", + "in": "query", + "description": "Source Category like CLOUD_PROVIDER, SECRET_MANAGER, CLOUD_COST, ARTIFACTORY, CODE_REPO, MONITORING or TICKETING", + "schema": { + "type": "string", + "enum": [ + "CLOUD_PROVIDER", + "SECRET_MANAGER", + "CLOUD_COST", + "ARTIFACTORY", + "CODE_REPO", + "MONITORING", + "TICKETING", + "DATABASE", + "COMMUNICATION", + "DOCUMENTATION" + ] + } + }, + { + "name": "includeSecretsFromEverySubScope", + "in": "query", + "description": "Specify whether or not to include secrets from all the sub-scopes of the given Scope", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "includeAllSecretsAccessibleAtScope", + "in": "query", + "description": "Specify whether or not to include all the Secrets accessible at the scope. For eg if set as true, at the Project scope we will get org and account Secrets also in the response", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "secretManagerIdentifiers", + "in": "query", + "description": "Specify the secret managers whose secrets should be listed", + "schema": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Secrets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSecretResponse" + } + } + } + } + }, + "deprecated": true + }, + "post": { + "tags": [ + "Secrets" + ], + "summary": "Creates a Secret at given Scope", + "operationId": "postSecret", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "privateSecret", + "in": "query", + "description": "This is a boolean value to specify if the Secret is Private. The default value is False.", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Details required to create the Secret", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretRequestWrapper" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretRequestWrapper" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Secret details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/files": { + "post": { + "tags": [ + "Secrets" + ], + "summary": "Creates a Secret File", + "operationId": "postSecretFileV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "privateSecret", + "in": "query", + "description": "This is a boolean value to specify if the Secret is Private. The default value is False.", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "required": [ + "file" + ], + "type": "object", + "properties": { + "file": { + "type": "object", + "description": "This is the encrypted Secret File that needs to be uploaded." + }, + "spec": { + "type": "string", + "description": "Specification of Secret file" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created Secret file", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/yaml": { + "post": { + "tags": [ + "Secrets" + ], + "summary": "Creates a secret via YAML", + "operationId": "postSecretViaYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "privateSecret", + "in": "query", + "description": "This is a boolean value to specify if the Secret is Private. The default value is False.", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Details required to create the Secret", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretRequestWrapper" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Secret details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + } + } + } + }, + "deprecated": true + } + }, + "/ng/api/v2/secrets/{identifier}": { + "get": { + "tags": [ + "Secrets" + ], + "summary": "Get the Secret by ID and Scope", + "operationId": "getSecretV2", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Secret ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Secret with the requested ID and Scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Secrets" + ], + "summary": "Updates the Secret by ID and Scope", + "operationId": "putSecret", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Secret ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretRequestWrapper" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Secret", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Secrets" + ], + "summary": "Deletes Secret by ID and Scope", + "operationId": "deleteSecretV2", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Secret ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the secret is successfully deleted and false if it is not deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/list/secrets": { + "post": { + "tags": [ + "Secrets" + ], + "summary": "Fetches the list of Secrets corresponding to the request's filter criteria.", + "operationId": "listSecretsV4", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretFilterProperties" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretFilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Secrets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSecretResponse" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/list": { + "post": { + "tags": [ + "Secrets" + ], + "summary": "Fetches the list of Secrets corresponding to the request's filter criteria.", + "operationId": "listSecretsV3", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "secretManagerIdentifiers", + "in": "query", + "schema": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretResourceFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretResourceFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Secrets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSecretResponse" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/files/{identifier}": { + "put": { + "tags": [ + "Secrets" + ], + "summary": "Updates the Secret file by ID and Scope", + "operationId": "putSecretFileV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Secret ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "object", + "description": "This is the encrypted Secret File that needs to be uploaded." + }, + "spec": { + "type": "string", + "description": "Specification of Secret file" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Secret file details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/{identifier}/yaml": { + "put": { + "tags": [ + "Secrets" + ], + "summary": "Updates the Secret by ID and Scope via YAML", + "operationId": "putSecretViaYaml", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Secret ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of Secret to create", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretRequestWrapper" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Secret details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretResponse" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/validate": { + "post": { + "tags": [ + "Secrets" + ], + "summary": "Validates Secret with the provided ID and Scope", + "operationId": "validateSecret", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "description": "Secret ID", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Secret type", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretValidationMetaData" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretValidationMetaData" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns validation response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretValidationResult" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSecretValidationResult" + } + } + } + } + } + } + }, + "/ng/api/v2/secrets/validateUniqueIdentifier/{identifier}": { + "get": { + "tags": [ + "Secrets" + ], + "summary": "Checks whether the identifier is unique or not", + "operationId": "validateSecretIdentifierIsUnique", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Secret Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Identifier is unique and false if the Identifier is not unique.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/organizations": { + "get": { + "tags": [ + "Organization" + ], + "summary": "List Organizations by filter", + "description": "List all Organizations matching the given search criteria.", + "operationId": "getOrganizationList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of Org Key IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Organizations. Any Organization having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns list of Organizations", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseOrganizationResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseOrganizationResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Organization" + ], + "summary": "Create an Organization", + "description": "Creates a new Organization.", + "operationId": "postOrganization", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Organization to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/OrganizationRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created Organization details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOrganizationResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOrganizationResponse" + } + } + } + } + } + } + }, + "/ng/api/organizations/{identifier}": { + "get": { + "tags": [ + "Organization" + ], + "summary": "List Organization details", + "description": "Lists Organization details using an Account and Organization ID.", + "operationId": "getOrganization", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Organization details with the passed Account Identifier and Org Identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOrganizationResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOrganizationResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Organization" + ], + "summary": "Update an Organization", + "description": "Updates Organization settings.", + "operationId": "putOrganization", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version number of the Organization", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated Organization. Please provide values for all fields, not just the fields you are updating", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/OrganizationRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Organization details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOrganizationResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOrganizationResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Organization" + ], + "summary": "Delete an Organization", + "description": "Deletes Organization for the given ID.", + "operationId": "deleteOrganization", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version number of the Organization", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Organization is deleted successfully and false if the Organization is not deleted.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/projects": { + "get": { + "tags": [ + "Project" + ], + "summary": "List all Projects for a user", + "description": "Lists all Projects the user is a member of by using the user's API key token.", + "operationId": "getProjectList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "hasModule", + "in": "query", + "description": "This boolean specifies whether to Filter Projects which has the Module of type passed in the module type parameter or to Filter Projects which does not has the Module of type passed in the module type parameter", + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of Project IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "moduleType", + "in": "query", + "description": "Filter Projects by module type", + "schema": { + "type": "string", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO", + "CHAOS", + "AI_TEST_AUTOMATION", + "SRM", + "IACM", + "CET", + "IDP", + "CODE", + "SSCA", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "PLATFORM", + "SEI", + "HAR", + "DevopsEssentials", + "FME", + "DBOPS" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Projects. Any Project having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "onlyFavorites", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Projects", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseProjectResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseProjectResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Project" + ], + "summary": "Create a Project", + "description": "Creates a new Harness Project.", + "operationId": "postProject", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization identifier for the Project. If left empty, the Project is created under Default Organization", + "schema": { + "type": "string", + "default": "default" + } + } + ], + "requestBody": { + "description": "Details of the Project to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectRequest1" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ProjectRequest1" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created Project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOProjectResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOProjectResponse" + } + } + } + } + } + } + }, + "/ng/api/projects/{identifier}": { + "get": { + "tags": [ + "Project" + ], + "summary": "List Project details", + "description": "Lists a Project's details for the given ID.", + "operationId": "getProject", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization identifier for the project. If left empty, Default Organization is assumed", + "schema": { + "type": "string", + "default": "default" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns Project having ID as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOProjectResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOProjectResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Project" + ], + "summary": "Update a Project", + "description": "Updates Project details for the given ID.", + "operationId": "putProject", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version number of Project", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization identifier for the Project. If left empty, Default Organization is assumed", + "schema": { + "type": "string", + "default": "default" + } + } + ], + "requestBody": { + "description": "This is the updated Project. Please provide values for all fields, not just the fields you are updating", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectRequest1" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ProjectRequest1" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns updated Project details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOProjectResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOProjectResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Project" + ], + "summary": "Delete a Project", + "description": "Deletes a Project corresponding to the given ID.", + "operationId": "deleteProject", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version number of Project", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "This is the Organization Identifier for the Project. By default, the Default Organization's Identifier is considered.", + "schema": { + "type": "string", + "default": "default" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Project is deleted successfully and false if the Project is not deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/projects/list": { + "get": { + "tags": [ + "Project" + ], + "summary": "List user's project with support to filter by multiple organizations", + "operationId": "getProjectListWithMultiOrgFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifiers", + "in": "query", + "description": "List of Organization Identifiers for the Entities.", + "schema": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "hasModule", + "in": "query", + "description": "This boolean specifies whether to Filter Projects which has the Module of type passed in the module type parameter or to Filter Projects which does not has the Module of type passed in the module type parameter", + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of Project Identifiers. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "moduleType", + "in": "query", + "description": "Filter Projects by module type", + "schema": { + "type": "string", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO", + "CHAOS", + "AI_TEST_AUTOMATION", + "SRM", + "IACM", + "CET", + "IDP", + "CODE", + "SSCA", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "PLATFORM", + "SEI", + "HAR", + "DevopsEssentials", + "FME", + "DBOPS" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter Projects by searching for this word in Name, Id, and Tag", + "schema": { + "type": "string" + } + }, + { + "name": "onlyFavorites", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Projects", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseProjectResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseProjectResponse" + } + } + } + } + } + } + }, + "/ng/api/token": { + "post": { + "tags": [ + "Token" + ], + "summary": "Create a Token", + "description": "Creates a Token for the given API Key Type.", + "operationId": "createToken", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Token" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Token" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Token" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created Token details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/token/{identifier}": { + "put": { + "tags": [ + "Token" + ], + "summary": "Update a Token", + "description": "Updates a Token for the given API Key Type.", + "operationId": "updateToken", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Token ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Token" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Token" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Token" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns updated Token details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOToken" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOToken" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOToken" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Token" + ], + "summary": "Delete a Token", + "description": "Deletes a Token for the given API Key Type.", + "operationId": "deleteToken", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Token ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyType", + "in": "query", + "description": "This is the API Key type like Personal Access Key or Service Account Key.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + } + }, + { + "name": "parentIdentifier", + "in": "query", + "description": "ID of API key's Parent Service Account", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyIdentifier", + "in": "query", + "description": "API key ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Token is deleted successfully and false if the Token is not deleted.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/token/aggregate": { + "get": { + "tags": [ + "Token" + ], + "summary": "List all Tokens", + "description": "Lists all the Tokens matching the given search criteria.", + "operationId": "listAggregatedTokens", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyType", + "in": "query", + "description": "This is the API Key type like Personal Access Key or Service Account Key.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + } + }, + { + "name": "parentIdentifier", + "in": "query", + "description": "ID of API key's Parent Service Account", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyIdentifier", + "in": "query", + "description": "API key ID", + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of Token IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Tokens. Any Token having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "includeOnlyActiveTokens", + "in": "query", + "description": "Boolean value to indicate whether to list only active tokens or all tokens. By default, all tokens will be listed.", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Aggregated Tokens.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseTokenAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseTokenAggregate" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseTokenAggregate" + } + } + } + } + } + } + }, + "/ng/api/token/rotate/{identifier}": { + "post": { + "tags": [ + "Token" + ], + "summary": "Rotate a Token", + "description": "Rotates a Token for the given API Key Type.", + "operationId": "rotateToken", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Token Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rotateTimestamp", + "in": "query", + "description": "Time stamp till when the old token will be valid post rotation.", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyType", + "in": "query", + "description": "This is the API Key type like Personal Access Key or Service Account Key.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + } + }, + { + "name": "parentIdentifier", + "in": "query", + "description": "ID of API key's Parent Service Account", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "apiKeyIdentifier", + "in": "query", + "description": "API key ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the rotated Token", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ng/api/token/validate": { + "post": { + "tags": [ + "Token" + ], + "summary": "Validate a Token", + "description": "Validate a Token for the given account.", + "operationId": "validateToken", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Validate a Token for the given account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOToken" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOToken" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOToken" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{identifier}/member/{userIdentifier}": { + "get": { + "tags": [ + "User Group" + ], + "summary": "Check user membership", + "description": "Check if the user is part of the user group in an account/org/project", + "operationId": "getMember", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "userIdentifier", + "in": "path", + "description": "Identifier of the user", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Return true/false based on whether the user is part of the user group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + }, + "put": { + "tags": [ + "User Group" + ], + "summary": "Add user to User Group", + "description": "Add a user to the user group in an account/org/project", + "operationId": "putMember", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "userIdentifier", + "in": "path", + "description": "Identifier of the user", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated user group after user addition", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + } + } + } + } + }, + "delete": { + "tags": [ + "User Group" + ], + "summary": "Remove user from User Group", + "description": "Remove a user from the user group in an account/org/project", + "operationId": "deleteMember", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "userIdentifier", + "in": "path", + "description": "Identifier of the user", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated user group after user removal", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/copy": { + "put": { + "tags": [ + "User Group" + ], + "summary": "Copy User Group", + "description": "Copy a User Group in an account/org/project", + "operationId": "copyUserGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "groupIdentifier", + "in": "query", + "description": "groupIdentifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of scopes", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Scope1" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Scope1" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns whether the copy was successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + }, + "deprecated": true + } + }, + "/ng/api/user-groups": { + "get": { + "tags": [ + "User Group" + ], + "summary": "List the User Groups in an account/org/project", + "description": "List User Groups", + "operationId": "getUserGroupList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search filter which matches by user group name/identifier", + "schema": { + "type": "string" + } + }, + { + "name": "filterType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "INCLUDE_INHERITED_GROUPS", + "EXCLUDE_INHERITED_GROUPS", + "INCLUDE_CHILD_SCOPE_GROUPS" + ], + "default": "EXCLUDE_INHERITED_GROUPS" + } + }, + { + "name": "ssoGroupId", + "in": "query", + "schema": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the paginated list of the User Groups.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserGroup" + } + } + } + } + } + }, + "put": { + "tags": [ + "User Group" + ], + "summary": "Update User Group", + "description": "Update a User Group in an account/org/project", + "operationId": "putUserGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "User Group entity with the updates", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserGroup" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the successfully updated User Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + } + } + } + } + }, + "post": { + "tags": [ + "User Group" + ], + "summary": "Create User Group", + "description": "Create a User Group in an account/org/project", + "operationId": "postUserGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "User Group entity to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserGroup" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the successfully created User Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{identifier}": { + "get": { + "tags": [ + "User Group" + ], + "summary": "Get User Group", + "description": "Get a User Group in an account/org/project", + "operationId": "getUserGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the successfully fetched User Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + } + } + } + } + }, + "delete": { + "tags": [ + "User Group" + ], + "summary": "Delete a User Group in an account/org/project", + "description": "Delete User Group", + "operationId": "deleteUserGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the successfully deleted User Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{identifier}/scopes": { + "get": { + "tags": [ + "User Group" + ], + "summary": "Get Inheriting Child Scopes", + "description": "List the Child Scopes inheriting this User Group", + "operationId": "getInheritingChildScopeList", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of the child scopes inheriting this User Group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListScopeName" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListScopeName" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{identifier}/users": { + "post": { + "tags": [ + "User Group" + ], + "summary": "List users in User Group", + "description": "List the users in a User Group in an account/org/project", + "operationId": "getUserListInUserGroup", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Filter users based on multiple parameters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the paginated list of the users in a User Group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserMetadata" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserMetadata" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{userGroupId}/link/ldap/{ldapId}": { + "put": { + "tags": [ + "User Group" + ], + "summary": "Link LDAP Group to the User Group to an account/org/project", + "operationId": "linkUserGroupToLDAP", + "parameters": [ + { + "name": "userGroupId", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ldapId", + "in": "path", + "description": "LDAP entity identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "LDAP Link Group Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapLinkGroupRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/LdapLinkGroupRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated User Group after linking LDAP Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{userGroupId}/link/oidc/{providerId}": { + "put": { + "tags": [ + "User Group" + ], + "summary": "Link OIDC Group to the User Group in an account/org/project", + "operationId": "linkUserGroupToOIDC", + "parameters": [ + { + "name": "userGroupId", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "providerId", + "in": "path", + "description": "OIDC Group entity identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "OIDC Link Group Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OidcLinkGroupRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/OidcLinkGroupRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated User Group after linking OIDC Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{userGroupId}/link/saml/{samlId}": { + "put": { + "tags": [ + "User Group" + ], + "summary": "Link SAML Group to the User Group in an account/org/project", + "operationId": "linkUserGroupToSAML", + "parameters": [ + { + "name": "userGroupId", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "samlId", + "in": "path", + "description": "Saml Group entity identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Saml Link Group Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SamlLinkGroupRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SamlLinkGroupRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated User Group after linking SAML Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/batch": { + "post": { + "tags": [ + "User Group" + ], + "summary": "List User Groups by filter", + "description": "List the User Groups selected by a filter in an account/org/project. This api supports maximum of 10K User Group in response.", + "operationId": "getBatchUsersGroupList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "User Group Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroupFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserGroupFilter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of the user groups selected by a filter in a User Group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/filter": { + "post": { + "tags": [ + "User Group" + ], + "summary": "Get filtered User Groups", + "description": "List the User Groups selected by a filter in an account/org/project", + "operationId": "getFilteredUserGroupsList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "User Group Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroupFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserGroupFilter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of the user groups selected by a filter in a User Group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserGroup" + } + } + } + } + } + } + }, + "/ng/api/user-groups/{userGroupId}/unlink": { + "put": { + "tags": [ + "User Group" + ], + "summary": "Unlink SSO Group from the User Group in an account/org/project", + "operationId": "unlinkUserGroupfromSSO", + "parameters": [ + { + "name": "userGroupId", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "retainMembers", + "in": "query", + "description": "Retain currently synced members of the user group", + "schema": { + "type": "boolean" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated User Group after unlinking SSO Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseUserGroup" + } + } + } + } + } + } + }, + "/ng/api/v2/user-groups": { + "put": { + "tags": [ + "User Group" + ], + "summary": "Update User Group", + "description": "Update a User Group in an account/org/project", + "operationId": "putUserGroupV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "User Group entity with the updates", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroupRequestV2" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserGroupRequestV2" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the successfully updated User Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroupResponseV2" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroupResponseV2" + } + } + } + } + } + }, + "post": { + "tags": [ + "User Group" + ], + "summary": "Create User Group", + "description": "Create a User Group in an account/org/project", + "operationId": "postUserGroupV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "User Group entity to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroupRequestV2" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserGroupRequestV2" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the successfully created User Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroupResponseV2" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroupResponseV2" + } + } + } + } + } + } + }, + "/ng/api/v2/user-groups/{identifier}": { + "get": { + "tags": [ + "User Group" + ], + "summary": "Get User Group", + "description": "Get a User Group in an account/org/project", + "operationId": "getUserGroupV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the user group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the successfully fetched User Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroupResponseV2" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserGroupResponseV2" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/check-allowed-values": { + "post": { + "tags": [ + "Services" + ], + "summary": "Check for allowed-values in the Services", + "operationId": "checkAllowedValuesInServices", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of services using allowed-values", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO" + } + } + } + } + } + } + }, + "/ng/api/servicesV2": { + "get": { + "tags": [ + "Services" + ], + "summary": "Gets Service list", + "operationId": "getServiceList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "maximum": 1000, + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifiers", + "in": "query", + "description": "List of ServicesIds", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies the sorting criteria of the list. Like sorting based on the last updated entity, alphabetical sorting in an ascending or descending order", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "type", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Kubernetes", + "NativeHelm", + "Ssh", + "WinRm", + "ServerlessAwsLambda", + "AzureWebApp", + "AzureFunction", + "CustomDeployment", + "ECS", + "Elastigroup", + "TAS", + "Asg", + "GoogleCloudFunctions", + "AwsLambda", + "AWS_SAM", + "SERVICE_YAML_V1_TYPE", + "GoogleCloudRun" + ] + } + }, + { + "name": "gitOpsEnabled", + "in": "query", + "schema": { + "type": "boolean" + } + }, + { + "name": "deploymentTemplateIdentifier", + "in": "query", + "description": "The Identifier of deployment template if infrastructure is of type custom deployment", + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "The version label of deployment template if infrastructure is of type custom deployment", + "schema": { + "type": "string" + } + }, + { + "name": "includeAllServicesAccessibleAtScope", + "in": "query", + "description": "Specify true if all accessible Services are to be included", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Services for a Project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Services" + ], + "summary": "Update a Service by identifier", + "operationId": "updateServiceV2", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Details of the Service to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceRequest" + }, + "examples": { + "Create": { + "summary": "Sample Service update payload", + "description": "Sample Service payload", + "value": { + "name": "serviceName", + "identifier": "serviceId", + "tags": {}, + "projectIdentifier": "s", + "orgIdentifier": "default", + "yaml": "service:\n name: serviceName\n identifier: serviceId\n tags: {}\n serviceDefinition:\n spec:\n artifacts:\n primary:\n primaryArtifactRef: artifactName\n sources:\n - spec:\n connectorRef: connectorId\n imagePath: imagePath\n tag: tagId\n identifier: artifactName\n type: DockerRegistry\n type: Kubernetes\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceRequest" + }, + "examples": { + "Create": { + "summary": "Sample Service update payload", + "description": "Sample Service payload", + "value": { + "name": "serviceName", + "identifier": "serviceId", + "tags": {}, + "projectIdentifier": "s", + "orgIdentifier": "default", + "yaml": "service:\n name: serviceName\n identifier: serviceId\n tags: {}\n serviceDefinition:\n spec:\n artifacts:\n primary:\n primaryArtifactRef: artifactName\n sources:\n - spec:\n connectorRef: connectorId\n imagePath: imagePath\n tag: tagId\n identifier: artifactName\n type: DockerRegistry\n type: Kubernetes\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Service", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Services" + ], + "summary": "Create a Service", + "operationId": "createServiceV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Service to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceRequest" + }, + "examples": { + "Create": { + "summary": "Sample Service create payload", + "description": "Sample Service payload", + "value": { + "name": "serviceName", + "identifier": "serviceId", + "tags": {}, + "projectIdentifier": "s", + "orgIdentifier": "default", + "yaml": "service:\n name: serviceName\n identifier: serviceId\n tags: {}\n serviceDefinition:\n spec:\n artifacts:\n primary:\n primaryArtifactRef: artifactName\n sources:\n - spec:\n connectorRef: connectorId\n imagePath: imagePath\n tag: tagId\n identifier: artifactName\n type: DockerRegistry\n type: Kubernetes\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceRequest" + }, + "examples": { + "Create": { + "summary": "Sample Service create payload", + "description": "Sample Service payload", + "value": { + "name": "serviceName", + "identifier": "serviceId", + "tags": {}, + "projectIdentifier": "s", + "orgIdentifier": "default", + "yaml": "service:\n name: serviceName\n identifier: serviceId\n tags: {}\n serviceDefinition:\n spec:\n artifacts:\n primary:\n primaryArtifactRef: artifactName\n sources:\n - spec:\n connectorRef: connectorId\n imagePath: imagePath\n tag: tagId\n identifier: artifactName\n type: DockerRegistry\n type: Kubernetes\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Service", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/batch": { + "post": { + "tags": [ + "Services" + ], + "summary": "Create Services", + "operationId": "createServicesV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Services to be created, maximum 1000 services can be created.", + "content": { + "application/json": { + "schema": { + "maxItems": 1000, + "minItems": 0, + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceRequest" + } + } + }, + "application/yaml": { + "schema": { + "maxItems": 1000, + "minItems": 0, + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceRequest" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Services", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceResponse" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/{serviceIdentifier}": { + "get": { + "tags": [ + "Services" + ], + "summary": "Gets a Service by identifier", + "operationId": "getServiceV2", + "parameters": [ + { + "name": "serviceIdentifier", + "in": "path", + "description": "Service Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "deleted", + "in": "query", + "description": "Specify whether Service is deleted or not", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The saved Service", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Services" + ], + "summary": "Delete a Service by identifier", + "operationId": "deleteServiceV2", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "path", + "description": "Service Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Service is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/k8s/command-flags": { + "get": { + "tags": [ + "Services" + ], + "summary": "Retrieving the list of Kubernetes Command Options", + "operationId": "k8sCmdFlags", + "parameters": [ + { + "name": "serviceSpecType", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stepType", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Kubernetes Command Options", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetK8sCommandFlagType" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetK8sCommandFlagType" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/kustomize/command-flags": { + "get": { + "tags": [ + "Services" + ], + "summary": "Retrieving the list of Kustomize Command Flags", + "operationId": "kustomizeCmdFlags", + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Kustomize Command Flags", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetKustomizeCommandFlagType" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetKustomizeCommandFlagType" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/plugin-info": { + "get": { + "tags": [ + "Services" + ], + "summary": "Get Plugin Info at Service", + "operationId": "getPluginInfo", + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Runtime and Serverless Version", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPluginInfoResponseDto" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPluginInfoResponseDto" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/hooks/actions": { + "get": { + "tags": [ + "Services" + ], + "summary": "Retrieving the list of actions available for service hooks", + "operationId": "hookActions", + "parameters": [ + { + "name": "serviceSpecType", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of actions available for service hooks", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetServiceHookAction" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetServiceHookAction" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/import": { + "post": { + "tags": [ + "Services" + ], + "summary": "Get Service YAML from Git Repository", + "operationId": "importService", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "description": "Service Identifier for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "isForceImport", + "in": "query", + "description": "isForceImport", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Fetches Service YAML from Git Repository and saves a record for it in Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceImportResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceImportResponse" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/list/access": { + "get": { + "tags": [ + "Services" + ], + "summary": "Gets Service Access list", + "operationId": "getServiceAccessList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifiers", + "in": "query", + "description": "List of ServicesIds", + "schema": { + "maxItems": 1000, + "minItems": 0, + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies the sorting criteria of the list. Like sorting based on the last updated entity, alphabetical sorting in an ascending or descending order", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "type", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Kubernetes", + "NativeHelm", + "Ssh", + "WinRm", + "ServerlessAwsLambda", + "AzureWebApp", + "AzureFunction", + "CustomDeployment", + "ECS", + "Elastigroup", + "TAS", + "Asg", + "GoogleCloudFunctions", + "AwsLambda", + "AWS_SAM", + "SERVICE_YAML_V1_TYPE", + "GoogleCloudRun" + ] + } + }, + { + "name": "gitOpsEnabled", + "in": "query", + "schema": { + "type": "boolean" + } + }, + { + "name": "deploymentTemplateIdentifier", + "in": "query", + "description": "The Identifier of deployment template if infrastructure is of type custom deployment", + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "The version label of deployment template if infrastructure is of type custom deployment", + "schema": { + "type": "string" + } + }, + { + "name": "deploymentMetadataYaml", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "includeAllServicesAccessibleAtScope", + "in": "query", + "description": "Specify true if all accessible Services are to be included", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Services for a Project that are accessible", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListServiceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListServiceResponse" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/move-config/{serviceIdentifier}": { + "post": { + "tags": [ + "Services" + ], + "summary": "Move Service YAML from inline to remote", + "operationId": "moveServiceConfigs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "path", + "description": "Service Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveConfigType", + "in": "query", + "description": "Tells weather the entity has to be moved from inline to remote or remote to inline", + "schema": { + "type": "string", + "enum": [ + "INLINE_TO_REMOTE", + "REMOTE_TO_INLINE" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Fetches Service YAML from Harness DB and creates a remote entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceMoveConfigResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceMoveConfigResponse" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/{serviceIdentifier}/update-git-metadata": { + "put": { + "tags": [ + "Services" + ], + "summary": "Update git-metadata in remote service Entity", + "description": "Update git-metadata in remote service and returns the identifier of updated service", + "operationId": "updateServiceGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "path", + "description": "Service Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns identifier of updated Service", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceGitUpdateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceGitUpdateResponse" + } + } + } + } + } + } + }, + "/ng/api/servicesV2/upsert": { + "put": { + "tags": [ + "Services" + ], + "summary": "Upsert a Service by identifier", + "operationId": "upsertServiceV2", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Service to be upserted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceRequest" + }, + "examples": { + "Create": { + "summary": "Sample Service upsert payload", + "description": "Sample Service payload", + "value": { + "name": "serviceName", + "identifier": "serviceId", + "tags": {}, + "projectIdentifier": "s", + "orgIdentifier": "default", + "yaml": "service:\n name: serviceName\n identifier: serviceId\n tags: {}\n serviceDefinition:\n spec:\n artifacts:\n primary:\n primaryArtifactRef: artifactName\n sources:\n - spec:\n connectorRef: connectorId\n imagePath: imagePath\n tag: tagId\n identifier: artifactName\n type: DockerRegistry\n type: Kubernetes\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceRequest" + }, + "examples": { + "Create": { + "summary": "Sample Service upsert payload", + "description": "Sample Service payload", + "value": { + "name": "serviceName", + "identifier": "serviceId", + "tags": {}, + "projectIdentifier": "s", + "orgIdentifier": "default", + "yaml": "service:\n name: serviceName\n identifier: serviceId\n tags: {}\n serviceDefinition:\n spec:\n artifacts:\n primary:\n primaryArtifactRef: artifactName\n sources:\n - spec:\n connectorRef: connectorId\n imagePath: imagePath\n tag: tagId\n identifier: artifactName\n type: DockerRegistry\n type: Kubernetes\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Service", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceResponse" + } + } + } + } + } + } + }, + "/ng/api/overrides": { + "put": { + "tags": [ + "Overrides" + ], + "summary": "Update an Override Entity", + "operationId": "updateOverride", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Override to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OverrideRequest" + }, + "examples": { + "Update": { + "summary": "Sample Override update request", + "description": "Sample Override Request", + "value": { + "orgIdentifier": "defaultOrgId", + "projectIdentifier": "defaultProjId", + "environmentRef": "defaultEnvRef", + "serviceRef": "defaultServiceRef", + "infraIdentifier": "defaultInfraId", + "type": "ENV_SERVICE_OVERRIDE", + "yaml": "overrides:\n variables:\n - name: v1\n type: String\n value: val1\n manifests:\n - manifest:\n identifier: manifest1\n type: K8sManifest\n spec:\n store:\n type: Github\n spec:\n connectorRef: abcdConnector\n gitFetchType: Branch\n paths:\n - files1\n repoName: abcd\n branch: master\n skipResourceVersioning: false\n configFiles:\n - configFile:\n identifier: configFile1\n spec:\n store:\n type: Harness\n spec:\n files:\n - /abcd\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Override", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverrideResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Overrides" + ], + "summary": "Create an Override Entity", + "operationId": "createOverride", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Override to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OverrideRequest" + }, + "examples": { + "Create": { + "summary": "Sample Override update request", + "description": "Sample Override Request", + "value": { + "orgIdentifier": "defaultOrgId", + "projectIdentifier": "defaultProjId", + "environmentRef": "defaultEnvRef", + "serviceRef": "defaultServiceRef", + "infraIdentifier": "defaultInfraId", + "type": "ENV_SERVICE_OVERRIDE", + "yaml": "overrides:\n variables:\n - name: v1\n type: String\n value: val1\n manifests:\n - manifest:\n identifier: manifest1\n type: K8sManifest\n spec:\n store:\n type: Github\n spec:\n connectorRef: abcdConnector\n gitFetchType: Branch\n paths:\n - files1\n repoName: abcd\n branch: master\n skipResourceVersioning: false\n configFiles:\n - configFile:\n identifier: configFile1\n spec:\n store:\n type: Harness\n spec:\n files:\n - /abcd\n" + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Override", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverrideResponse" + } + } + } + } + } + } + }, + "/ng/api/overrides/{identifier}": { + "get": { + "tags": [ + "Overrides" + ], + "summary": "Gets Overrides by Identifier", + "operationId": "getOverridesViaIdentifier", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier of the Override Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Override by the identifier and scope derived from accountId, org identifier and project identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverrideResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Overrides" + ], + "summary": "Delete a Override entity", + "operationId": "deleteOverride", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier of the Override Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Override is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/overrides/move-config": { + "post": { + "tags": [ + "Overrides" + ], + "summary": "Move Override YAML from inline to remote or remote to inline", + "operationId": "OverrideMoveConfigs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveConfigType", + "in": "query", + "description": "Tells weather the entity has to be moved from inline to remote or remote to inline", + "schema": { + "type": "string", + "enum": [ + "INLINE_TO_REMOTE", + "REMOTE_TO_INLINE" + ] + } + }, + { + "name": "environmentRef", + "in": "query", + "description": "Environment Reference for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceRef", + "in": "query", + "description": "Service Reference for Entity", + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "query", + "description": "infraIdentifier", + "schema": { + "type": "string" + } + }, + { + "name": "serviceOverridesType", + "in": "query", + "description": "Type of the override which is based on source of overrides", + "schema": { + "type": "string", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + } + }, + { + "name": "identifier", + "in": "query", + "description": "Service Overrides Identifier for Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Fetches Override YAML from Harness DB and creates a remote entity or Fetches Override YAML from remote repository and creates a inline entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideMoveConfigResponse" + } + } + } + } + } + } + }, + "/ng/api/overrides/update-git-metadata": { + "put": { + "tags": [ + "Overrides" + ], + "summary": "Update git-metadata in remote Override Entity", + "description": "Update git-metadata in remote Override and returns the identifier of updated Override", + "operationId": "updateOverrideGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "description": "Service Overrides Identifier for Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentRef", + "in": "query", + "description": "Environment Reference for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceRef", + "in": "query", + "description": "Service Reference for Entity", + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "query", + "description": "infraIdentifier", + "schema": { + "type": "string" + } + }, + { + "name": "serviceOverridesType", + "in": "query", + "description": "Type of the override which is based on source of overrides", + "schema": { + "type": "string", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateRequestInfo" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateRequestInfo" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateRequestInfo" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns identifier and associated environmentRef, serviceRef and infraIdentifier of updated Override", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideGitUpdateResponse" + } + } + } + } + } + } + }, + "/ng/api/serviceOverrides": { + "put": { + "tags": [ + "ServiceOverrides" + ], + "summary": "Update an ServiceOverride Entity", + "operationId": "updateServiceOverride", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Service Override to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceOverrideRequestV2" + }, + "examples": { + "Update": { + "summary": "Sample Service Override update request", + "description": "Sample Service Override Request", + "value": { + "orgIdentifier": "defaultOrgId", + "projectIdentifier": "defaultProjId", + "environmentRef": "defaultEnvRef", + "serviceRef": "defaultServiceRef", + "infraIdentifier": "defaultInfraId", + "type": "ENV_SERVICE_OVERRIDE", + "spec": { + "variables": [ + { + "name": "v1", + "type": "String", + "value": "val1" + } + ], + "manifests": [ + { + "manifest": { + "identifier": "manifest1", + "type": "K8sManifest", + "spec": { + "store": { + "type": "Github", + "spec": { + "connectorRef": "abcdConnector", + "gitFetchType": "Branch", + "paths": [ + "files1" + ], + "repoName": "abcd", + "branch": "master" + } + }, + "skipResourceVersioning": false + } + } + } + ], + "configFiles": [ + { + "configFile": { + "identifier": "configFile1", + "spec": { + "store": { + "type": "Harness", + "spec": { + "files": [ + "/abcd" + ] + } + } + } + } + } + ] + } + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated ServiceOverride", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideResponseV2" + } + } + } + } + } + }, + "post": { + "tags": [ + "ServiceOverrides" + ], + "summary": "Create an ServiceOverride Entity", + "operationId": "createServiceOverride", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Service Override to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceOverrideRequestV2" + }, + "examples": { + "Create": { + "summary": "Sample Service Override update request", + "description": "Sample Service Override Request", + "value": { + "orgIdentifier": "defaultOrgId", + "projectIdentifier": "defaultProjId", + "environmentRef": "defaultEnvRef", + "serviceRef": "defaultServiceRef", + "infraIdentifier": "defaultInfraId", + "type": "ENV_SERVICE_OVERRIDE", + "spec": { + "variables": [ + { + "name": "v1", + "type": "String", + "value": "val1" + } + ], + "manifests": [ + { + "manifest": { + "identifier": "manifest1", + "type": "K8sManifest", + "spec": { + "store": { + "type": "Github", + "spec": { + "connectorRef": "abcdConnector", + "gitFetchType": "Branch", + "paths": [ + "files1" + ], + "repoName": "abcd", + "branch": "master" + } + }, + "skipResourceVersioning": false + } + } + } + ], + "configFiles": [ + { + "configFile": { + "identifier": "configFile1", + "spec": { + "store": { + "type": "Harness", + "spec": { + "files": [ + "/abcd" + ] + } + } + } + } + } + ] + } + } + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created ServiceOverride", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideResponseV2" + } + } + } + } + } + } + }, + "/ng/api/serviceOverrides/{identifier}": { + "get": { + "tags": [ + "ServiceOverrides" + ], + "summary": "Gets Service Overrides by Identifier", + "operationId": "getServiceOverrides", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Service Overrides Identifier for Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Service Override by the identifier and scope derived from accountId, org identifier and project identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideResponseV2" + } + } + } + } + } + }, + "delete": { + "tags": [ + "ServiceOverrides" + ], + "summary": "Delete a ServiceOverride entity", + "operationId": "deleteServiceOverride_1", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Service Overrides Identifier for Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Service Override is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/serviceOverrides/move-config": { + "post": { + "tags": [ + "ServiceOverrides" + ], + "summary": "Move ServiceOverride YAML from inline to remote or remote to inline", + "operationId": "serviceOverrideMoveConfigs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "moveConfigType", + "in": "query", + "description": "Tells weather the entity has to be moved from inline to remote or remote to inline", + "schema": { + "type": "string", + "enum": [ + "INLINE_TO_REMOTE", + "REMOTE_TO_INLINE" + ] + } + }, + { + "name": "environmentRef", + "in": "query", + "description": "Environment Reference for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceRef", + "in": "query", + "description": "Service Reference for Entity", + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "query", + "description": "infraIdentifier", + "schema": { + "type": "string" + } + }, + { + "name": "serviceOverridesType", + "in": "query", + "description": "Type of the override which is based on source of overrides", + "schema": { + "type": "string", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + } + }, + { + "name": "identifier", + "in": "query", + "description": "Service Overrides Identifier for Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Fetches ServiceOverride YAML from Harness DB and creates a remote entity or Fetches ServiceOverride YAML from remote repository and creates a inline entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideMoveConfigResponse" + } + } + } + } + } + } + }, + "/ng/api/serviceOverrides/update-git-metadata": { + "put": { + "tags": [ + "ServiceOverrides" + ], + "summary": "Update git-metadata in remote ServiceOverride Entity", + "description": "Update git-metadata in remote ServiceOverride and returns the identifier of updated ServiceOverride", + "operationId": "updateServiceOverrideGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "description": "Service Overrides Identifier for Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentRef", + "in": "query", + "description": "Environment Reference for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceRef", + "in": "query", + "description": "Service Reference for Entity", + "schema": { + "type": "string" + } + }, + { + "name": "infraIdentifier", + "in": "query", + "description": "infraIdentifier", + "schema": { + "type": "string" + } + }, + { + "name": "serviceOverridesType", + "in": "query", + "description": "Type of the override which is based on source of overrides", + "schema": { + "type": "string", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateRequestInfo" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateRequestInfo" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateRequestInfo" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns identifier and associated environmentRef, serviceRef and infraIdentifier of updated ServiceOverride", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceOverrideGitUpdateResponse" + } + } + } + } + } + } + }, + "/ng/api/smtpConfig/{identifier}": { + "delete": { + "tags": [ + "SMTP" + ], + "summary": "Delete Smtp Config by identifier", + "operationId": "deleteSmtpConfig", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Config identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/smtpConfig": { + "get": { + "tags": [ + "SMTP" + ], + "summary": "Gets Smtp config by accountId", + "operationId": "getSmtpConfig", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "returns the SmtpConfig having accountId as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONgSmtp" + } + } + } + } + } + }, + "put": { + "tags": [ + "SMTP" + ], + "summary": "Updates the Smtp Config", + "operationId": "updateSmtp", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NgSmtp" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns updated config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONgSmtp" + } + } + } + } + } + }, + "post": { + "tags": [ + "SMTP" + ], + "summary": "Creates SMTP config", + "operationId": "createSmtpConfig", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NgSmtp" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns created config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONgSmtp" + } + } + } + } + } + } + }, + "/ng/api/smtpConfig/validate-connectivity": { + "post": { + "tags": [ + "SMTP" + ], + "summary": "Tests the config's connectivity by sending a test email", + "operationId": "validateConnectivity", + "parameters": [ + { + "name": "identifier", + "in": "query", + "description": "Attribute uuid", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "to", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "subject", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "body", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns validation Result", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOValidationResult" + } + } + } + } + } + } + }, + "/ng/api/smtpConfig/validateName": { + "post": { + "tags": [ + "SMTP" + ], + "summary": "Checks whether other connectors exist with the same name", + "operationId": "validateName", + "parameters": [ + { + "name": "name", + "in": "query", + "description": "The name of Config", + "schema": { + "type": "string" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns validation Result", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOValidationResult" + } + } + } + } + } + } + }, + "/ng/api/tas/organizations": { + "get": { + "tags": [ + "tas" + ], + "summary": "Return the Tas organizations", + "operationId": "getTasOrganizations", + "parameters": [ + { + "name": "connectorRef", + "in": "query", + "description": "Identifier for tas connector", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "envId", + "in": "query", + "description": "Environment Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "infraDefinitionId", + "in": "query", + "description": "Infrastructure Definition Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Return the Tas organizations", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ng/api/tas/space": { + "get": { + "tags": [ + "tas" + ], + "summary": "Return the Tas spaces", + "operationId": "getTasSpaces", + "parameters": [ + { + "name": "connectorRef", + "in": "query", + "description": "Identifier for tas connector", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "organization", + "in": "query", + "description": "organization for tas", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Return the Tas spaces", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ng/api/tas/v2/space": { + "get": { + "tags": [ + "tas" + ], + "summary": "Return the Tas spaces", + "operationId": "getTasSpacesV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "organization", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "envId", + "in": "query", + "description": "Environment Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "infraDefinitionId", + "in": "query", + "description": "Infrastructure Definition Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Return the Tas spaces", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ng/api/user/add-user-to-groups/{userId}": { + "put": { + "tags": [ + "User" + ], + "summary": "Add user to user groups", + "description": "Adds the user to the specified user group IDs passed in the body and removes all other user groups for user except harness managed user groups", + "operationId": "addUserToUserGroups", + "parameters": [ + { + "name": "userId", + "in": "path", + "description": "User Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserAddToUserGroupDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserAddToUserGroupDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Adds the user to specified user group IDs and removes all other user groups for user except harness managed user groups", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/user/users": { + "post": { + "tags": [ + "User" + ], + "summary": "Add user(s) to scope", + "operationId": "addUsers", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddUsersDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AddUsersDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns list of added users to a given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAddUsersResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAddUsersResponse" + } + } + } + } + } + } + }, + "/ng/api/user/password": { + "put": { + "tags": [ + "User" + ], + "summary": "Change user password", + "description": "Updates the User password", + "operationId": "changeUserPassword", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PasswordChange" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PasswordChange" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns whether the operation is successful or not with readable response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPasswordChangeResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPasswordChangeResponse" + } + } + } + } + } + } + }, + "/ng/api/user/last-admin": { + "get": { + "tags": [ + "User" + ], + "summary": "Check if user is last admin", + "description": "Check whether the user is last admin at scope or not", + "operationId": "checkIfLastAdmin", + "parameters": [ + { + "name": "userId", + "in": "query", + "description": "User identifier", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns Boolean status whether the user is last admin at scope or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/user/disable-two-factor-auth": { + "put": { + "tags": [ + "User" + ], + "summary": "Disable two factor authentication", + "description": "Disables two-factor-auth for an user in an account", + "operationId": "disableTTwoFactorAuth", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns user information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + } + } + } + } + } + }, + "/ng/api/user/endImpersonation/{userId}": { + "post": { + "tags": [ + "User" + ], + "summary": "end impersonation session for user", + "operationId": "endImpersonation", + "parameters": [ + { + "name": "userId", + "in": "path", + "description": "User ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "end impersonate User", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/user/aggregate/{userId}": { + "get": { + "tags": [ + "User" + ], + "summary": "Get detailed user information", + "description": "Returns the user metadata along with rolesAssignments by userId and scope", + "operationId": "getAggregatedUser", + "parameters": [ + { + "name": "userId", + "in": "path", + "description": "user Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the user metadata along with rolesAssignments by userId and scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserAggregate" + } + } + } + } + } + } + }, + "/ng/api/user/aggregate": { + "post": { + "tags": [ + "User" + ], + "summary": "Get list of users", + "description": "List of all the user's metadata along with rolesAssignments who have access to given scope", + "operationId": "getAggregatedUsers", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ACLAggregateFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ACLAggregateFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns list of all the user's metadata along with rolesAssignments who have access to given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserAggregate" + } + } + } + } + } + } + }, + "/ng/api/user/two-factor-auth/{authMechanism}": { + "get": { + "tags": [ + "User" + ], + "summary": "Gets Two Factor Auth Settings", + "description": "Gets two factor authentication settings information of the current logged in user", + "operationId": "getTwoFactorAuthSettings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "authMechanism", + "in": "path", + "description": "This is the authentication mechanism for the logged-in User. Two-Factor Authentication settings will be fetched for this mechanism.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "TOTP" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns current logged in user's two factor authentication info", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTwoFactorAuthSettingsInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTwoFactorAuthSettingsInfo" + } + } + } + } + } + } + }, + "/ng/api/user/currentUser": { + "get": { + "tags": [ + "User" + ], + "summary": "Get Current User Info", + "description": "Gets current logged in User information", + "operationId": "getCurrentUserInfo", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns current logged in user info", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + } + } + } + } + } + }, + "/ng/api/user/batch": { + "post": { + "tags": [ + "User" + ], + "summary": "Get users list", + "description": "Get list of user's for a given scope", + "operationId": "getUsers", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of user's Metadata for a given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserMetadata" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseUserMetadata" + } + } + } + } + } + } + }, + "/ng/api/user/impersonate/{userId}": { + "post": { + "tags": [ + "User" + ], + "summary": "impersonate User", + "operationId": "impersonateUser", + "parameters": [ + { + "name": "userId", + "in": "path", + "description": "User ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ImpersonateDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ImpersonateDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "impersonate User", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/user/{userId}": { + "put": { + "tags": [ + "User" + ], + "summary": "Update User", + "description": "Updates the User information", + "operationId": "updateUserInfo_1", + "parameters": [ + { + "name": "userId", + "in": "path", + "description": "User Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserInfoUpdateDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserInfoUpdateDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the update User information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + } + } + } + } + }, + "delete": { + "tags": [ + "User" + ], + "summary": "Remove user from scope", + "description": "Remove user as the collaborator from the scope", + "operationId": "removeUser", + "parameters": [ + { + "name": "userId", + "in": "path", + "description": "user Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/user/reset-two-factor-auth/{userId}": { + "get": { + "tags": [ + "User" + ], + "summary": "Reset two factor authorization", + "description": "Reset Two-Factor authorization.", + "operationId": "reset2fa", + "parameters": [ + { + "name": "userId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully reset two factor authorization for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/ng/api/user/unlock-user/{userId}": { + "put": { + "tags": [ + "User" + ], + "summary": "Unlock user", + "description": "unlock user in a given scope", + "operationId": "unlockUser", + "parameters": [ + { + "name": "userId", + "in": "path", + "description": "user Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns user information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + } + } + } + } + } + }, + "/ng/api/user/enable-two-factor-auth": { + "put": { + "tags": [ + "User" + ], + "summary": "Enable two factor authentication", + "description": "Enables two-factor-auth for an user in an account", + "operationId": "enableTwoFactorAuth", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TwoFactorAuthSettingsInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TwoFactorAuthSettingsInfo" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns user information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + } + } + } + } + } + }, + "/ng/api/user": { + "put": { + "tags": [ + "User" + ], + "summary": "Update User", + "description": "Updates the User information", + "operationId": "updateUserInfo", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UserInfo" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the update User information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOUserInfo" + } + } + } + } + } + } + }, + "/ng/api/variables": { + "get": { + "tags": [ + "Variables" + ], + "summary": "Fetches the list of Variables.", + "operationId": "getVariableList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Variables. Any Variable having the specified string in its Name or ID would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "includeVariablesFromEverySubScope", + "in": "query", + "description": "Specify whether or not to include all the Variables accessible at the scope. For eg if set as true, at the Project scope we will get org and account Variable also in the response.", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Variable.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseVariableResponseDTO" + } + } + } + } + } + }, + "put": { + "tags": [ + "Variables" + ], + "summary": "Updates the Variable.", + "operationId": "updateVariable", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the variable to update.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Variable.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOVariableResponseDTO" + } + } + } + } + } + }, + "post": { + "tags": [ + "Variables" + ], + "summary": "Creates a Variable.", + "operationId": "createVariable", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Variable to create.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Variable.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOVariableResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/variables/{identifier}": { + "get": { + "tags": [ + "Variables" + ], + "summary": "Get the Variable by scope identifiers and variable identifier.", + "operationId": "getVariable", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Variable ID", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the variable with the requested scope identifiers and variable identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOVariableResponseDTO" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Variables" + ], + "summary": "Deletes Variable by ID.", + "operationId": "deleteVariable", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Variable ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Variable is deleted successfully and false if the Variable is not deleted.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/variables/list": { + "post": { + "tags": [ + "Variables" + ], + "summary": "Get list of Variable by scope identifiers and variable identifiers.", + "operationId": "listVariable", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Variables. Any Variable having the specified string in its Name or ID would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "includeVariablesFromEverySubScope", + "in": "query", + "description": "Specify whether or not to include all the Variables accessible at the scope. For eg if set as true, at the Project scope we will get org and account Variable also in the response.", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Specifies the variables to list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableListRequestDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the variable with the requested scope identifiers and variable identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseVariableResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/freeze": { + "post": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Create a Freeze", + "operationId": "createFreeze", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Freeze YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Create Freeze YAML", + "description": "Sample Freeze YAML", + "value": "freeze:\n name: Sample Freeze\n identifier: Sample_Freeze\n entityConfigs:\n - name: Rule 1\n entities:\n - type: Service\n filterType: All\n - type: EnvType\n filterType: All\n status: Disabled\n orgIdentifier: org1\n projectIdentifier: Project1\n windows:\n - timeZone: Asia/Calcutta\n startTime: 2023-02-20 11:28 AM\n duration: 30m" + } + } + }, + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Create Freeze YAML", + "description": "Sample Freeze YAML", + "value": "freeze:\n name: Sample Freeze\n identifier: Sample_Freeze\n entityConfigs:\n - name: Rule 1\n entities:\n - type: Service\n filterType: All\n - type: EnvType\n filterType: All\n status: Disabled\n orgIdentifier: org1\n projectIdentifier: Project1\n windows:\n - timeZone: Asia/Calcutta\n startTime: 2023-02-20 11:28 AM\n duration: 30m" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Freeze Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponse" + } + } + } + } + } + } + }, + "/ng/api/freeze/{freezeIdentifier}": { + "get": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Get a Freeze", + "operationId": "getFreeze", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "freezeIdentifier", + "in": "path", + "description": "Freeze Identifier.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Freeze Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeDetailedResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeDetailedResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Updates a Freeze", + "operationId": "updateFreeze", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "freezeIdentifier", + "in": "path", + "description": "Freeze Identifier.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Freeze YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Update Freeze YAML", + "description": "Sample Freeze YAML", + "value": "freeze:\n name: Sample Freeze\n identifier: Sample_Freeze\n entityConfigs:\n - name: Rule 1\n entities:\n - type: Service\n filterType: All\n - type: EnvType\n filterType: All\n status: Disabled\n orgIdentifier: org1\n projectIdentifier: project1\n windows:\n - timeZone: Asia/Calcutta\n startTime: 2023-02-20 11:28 AM\n duration: 33m\n description: \"\"" + } + } + }, + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Update Freeze YAML", + "description": "Sample Freeze YAML", + "value": "freeze:\n name: Sample Freeze\n identifier: Sample_Freeze\n entityConfigs:\n - name: Rule 1\n entities:\n - type: Service\n filterType: All\n - type: EnvType\n filterType: All\n status: Disabled\n orgIdentifier: org1\n projectIdentifier: project1\n windows:\n - timeZone: Asia/Calcutta\n startTime: 2023-02-20 11:28 AM\n duration: 33m\n description: \"\"" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Freeze Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Delete a Freeze", + "operationId": "deleteFreeze", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "freezeIdentifier", + "in": "path", + "description": "Freeze Identifier.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Freeze Config" + } + } + } + }, + "/ng/api/freeze/delete": { + "post": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Delete many Freezes", + "operationId": "deleteManyFreezes", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of Freeze Identifiers", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Freeze Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponseWrapperDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponseWrapperDTO" + } + } + } + } + } + } + }, + "/ng/api/freeze/list": { + "post": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Gets Freeze list", + "operationId": "getFreezeList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains details of Freeze filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FreezeFilterPropertiesDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/FreezeFilterPropertiesDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Freeze for a Project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFreezeSummaryResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFreezeSummaryResponse" + } + } + } + } + } + } + }, + "/ng/api/freeze/getFrozenExecutionDetails": { + "get": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Get list of freeze acted on a frozen execution", + "operationId": "getFrozenExecutionDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns list of freeze acted on a frozen execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFrozenExecutionDetails" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFrozenExecutionDetails" + } + } + } + } + } + } + }, + "/ng/api/freeze/getGlobalFreeze": { + "get": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Get Global Freeze Yaml", + "operationId": "getGlobalFreeze", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Get Global Freeze Yaml", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeDetailedResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeDetailedResponse" + } + } + } + } + } + } + }, + "/ng/api/freeze/manageGlobalFreeze": { + "post": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Create Global Freeze", + "operationId": "createGlobalFreeze", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Freeze YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Global Freeze Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponse" + } + } + } + } + } + } + }, + "/ng/api/freeze/updateFreezeStatus": { + "post": { + "tags": [ + "Freeze CRUD" + ], + "summary": "Update the status of Freeze to active or inactive", + "operationId": "updateFreezeStatus", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "status", + "in": "query", + "description": "Freeze YAML", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + } + } + ], + "requestBody": { + "description": "Comma seperated List of Freeze Identifiers", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the created Freeze Config", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponseWrapperDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFreezeResponseWrapperDTO" + } + } + } + } + } + } + }, + "/ng/api/gitops/clusters/{identifier}": { + "get": { + "tags": [ + "Clusters" + ], + "summary": "Get a Cluster linked to an environment by identifier", + "operationId": "getCluster", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Cluster Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "environmentIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "in": "query", + "description": "agentIdentifier", + "schema": { + "type": "string" + } + }, + { + "name": "deleted", + "in": "query", + "description": "Specify whether cluster is deleted or not", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "The saved Cluster", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Clusters" + ], + "summary": "Unlink a cluster by identifier", + "description": "Unlink a cluster from an environment by identifier", + "operationId": "deleteCluster", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Cluster Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "environmentIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "in": "query", + "description": "agentIdentifier", + "schema": { + "type": "string" + } + }, + { + "name": "scope", + "in": "query", + "description": "Scope for the gitops cluster", + "schema": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if the Cluster is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/gitops/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "summary": "Gets cluster list", + "description": "Gets a list of GitOps clusters linked to an environment", + "operationId": "getClusterList", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "description": "Environment Identifier of the clusters", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "List of cluster identifiers", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies the sorting criteria of the list. Like sorting based on the last updated entity, alphabetical sorting in an ascending or descending order", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "scope", + "in": "query", + "description": "Scope of linked clusters to be returned, ACCOUNT/ORGANIZATION/PROJECT. Returns all by default if this is not specified", + "schema": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of cluster for a Project", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseClusterResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseClusterResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Clusters" + ], + "summary": "Link a Cluster", + "description": "Link a GitOps cluster to an environment by identifier", + "operationId": "linkCluster", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the createCluster to be linked", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ClusterRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ClusterRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the linked Cluster", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterResponse" + } + } + } + } + } + } + }, + "/ng/api/gitops/clusters/batch": { + "post": { + "tags": [ + "Clusters" + ], + "summary": "Link Clusters", + "operationId": "linkClusters", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier of the environment.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "The request body which will define the behaviour of this API. Either provide a list of clusters in the clusters field(all fields should be provided for each cluster for correct behaviour) OR use a combination of searchTerm and linkAllClusters: true to link gitops clusters from across all scopes above the environment's scope based on provided searchTerm", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ClusterBatchRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ClusterBatchRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the linked Clusters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterBatchResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterBatchResponse" + } + } + } + } + } + } + }, + "/ng/api/gitops/clusters/batchunlink": { + "post": { + "tags": [ + "Clusters" + ], + "summary": "Unlink Clusters", + "operationId": "unlinkClustersInBatch", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the createCluster to be created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ClusterBatchRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ClusterBatchRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns true if all the Clusters are deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterBatchResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOClusterBatchResponse" + } + } + } + } + } + } + }, + "/ng/api/dashboard/getPipelineExecutionCount": { + "get": { + "tags": [ + "Service Dashboard" + ], + "summary": "Get pipeline execution count for a service with grouping support on artifact and deployment status", + "operationId": "pipelineExecutionCount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceId", + "in": "query", + "description": "Service Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "Start Time of the Interval for the Entity.", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "description": "End Time of the Interval for the Entity.", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "artifactPath", + "in": "query", + "description": "Image/ArtifactPath of the Artifact", + "schema": { + "type": "string" + } + }, + { + "name": "artifactVersion", + "in": "query", + "description": "Version of the Artifact", + "schema": { + "type": "string" + } + }, + { + "name": "artifact", + "in": "query", + "description": "Fully Qualified Name of the Artifact (artifactPath:artifactVersion). For eg. in case of docker it would be imagePath:tag", + "schema": { + "type": "string" + } + }, + { + "name": "status", + "in": "query", + "description": "Deployment status", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns pipeline execution count for a service with grouping support on artifact and deployment status", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionCountInfo" + } + } + } + } + } + } + }, + "/ng/api/rollback/check": { + "post": { + "tags": [ + "Rollback" + ], + "summary": "Verification for rollback eligibility for service", + "operationId": "checkIfInstanceCanBeRolledBack", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PostProdRollbackRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "default": { + "description": "Return details on whether rollback is allowed", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPostProdRollbackCheckDTO" + } + } + } + } + } + } + }, + "/ng/api/rollback/trigger": { + "post": { + "tags": [ + "Rollback" + ], + "summary": "Trigger the rollback for specific service", + "operationId": "triggerRollback", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PostProdRollbackRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "default": { + "description": "Return status of triggered rollback", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPostProdRollbackResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/rollback/trigger/v2": { + "post": { + "tags": [ + "Rollback" + ], + "summary": "Trigger the rollback for specific service to an environment", + "operationId": "triggerRollbackV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RollbackRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "default": { + "description": "Return status of triggered rollback", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORollbackResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/serviceaccount": { + "get": { + "tags": [ + "Service Account" + ], + "summary": "Get Service Accounts", + "description": "Fetches list of Service Accounts for the given filter criteria.", + "operationId": "listServiceAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of Service Account IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the list of Service Accounts.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListServiceAccount" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListServiceAccount" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListServiceAccount" + } + } + } + } + } + }, + "post": { + "tags": [ + "Service Account" + ], + "summary": "Create a Service Account", + "description": "Creates a new Service Account.", + "operationId": "createServiceAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details required to create Service Account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceAccount" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceAccount" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ServiceAccount" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns details of the created Service Account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccount" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccount" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccount" + } + } + } + } + } + } + }, + "/ng/api/serviceaccount/{identifier}": { + "put": { + "tags": [ + "Service Account" + ], + "summary": "Update a Service Account", + "description": "Updates details of the Service Account for the given Service Account ID.", + "operationId": "updateServiceAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Service Account ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the updated Service Account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceAccount" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceAccount" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ServiceAccount" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the updated Service Account details.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccount" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccount" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccount" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Service Account" + ], + "summary": "Delete a Service Account", + "description": "Deletes a Service Account corresponding to the given Service Account ID.", + "operationId": "deleteServiceAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Service Account ID", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "It returns true if the Service Account is deleted successfully and false if the Service Account is not deleted.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/serviceaccount/aggregate/{identifier}": { + "get": { + "tags": [ + "Service Account" + ], + "summary": "Get Service Account In Scope", + "description": "Gets the list of Service Accounts in the given scope.", + "operationId": "getAggregatedServiceAccount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Service Account IDr", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the Service Account details corresponding to the specified Account Identifier and Service Account Identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccountAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccountAggregate" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceAccountAggregate" + } + } + } + } + } + } + }, + "/ng/api/serviceaccount/aggregate": { + "get": { + "tags": [ + "Service Account" + ], + "summary": "List aggregated Service Accounts", + "description": "Fetches the list of Aggregated Service Accounts corresponding to the request's filter criteria.", + "operationId": "listAggregatedServiceAccounts", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifiers", + "in": "query", + "description": "This is the list of Service Account IDs. Details specific to these IDs would be fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "This would be used to filter Service Accounts. Any Service Account having the specified string in its Name, ID and Tag would be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "filterType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "INCLUDE_INHERITED_SERVICE_ACCOUNTS", + "EXCLUDE_INHERITED_SERVICE_ACCOUNTS", + "INCLUDE_CHILD_SCOPE_SERVICE_ACCOUNTS" + ], + "default": "EXCLUDE_INHERITED_SERVICE_ACCOUNTS" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns the paginated list of Aggregated Service Accounts.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceAccountAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceAccountAggregate" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceAccountAggregate" + } + } + } + } + } + } + }, + "/ng/api/canny/post": { + "post": { + "tags": [ + "Canny" + ], + "summary": "create Canny Post for given user", + "operationId": "createCannyPost", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "required": [ + "boardId", + "details", + "email", + "name", + "title" + ], + "type": "object", + "properties": { + "email": { + "type": "string", + "description": "emailId for user creating post" + }, + "name": { + "type": "string", + "description": "name of user creating post" + }, + "title": { + "type": "string", + "description": "title of the post" + }, + "details": { + "type": "string", + "description": "details of the post" + }, + "boardId": { + "type": "string", + "description": "boardId where post must be created" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "create Canny Post for given user", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyResponse" + } + } + } + } + } + } + }, + "/ng/api/canny/postV2": { + "post": { + "tags": [ + "Canny" + ], + "summary": "create Canny Post for given user", + "operationId": "createCannyPostV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "required": [ + "boardId", + "categoryId", + "details", + "email", + "name", + "title" + ], + "type": "object", + "properties": { + "email": { + "type": "string", + "description": "emailId for user creating post" + }, + "name": { + "type": "string", + "description": "name of user creating post" + }, + "title": { + "type": "string", + "description": "title of the post" + }, + "details": { + "type": "string", + "description": "details of the post" + }, + "boardId": { + "type": "string", + "description": "boardId where post must be created" + }, + "categoryId": { + "type": "string", + "description": "categoryId where post must be created" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "create Canny Post for given user", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyResponse" + } + } + } + } + } + } + }, + "/ng/api/canny/boards": { + "get": { + "tags": [ + "Canny" + ], + "summary": "Get a list of boards available on Canny", + "operationId": "getCannyBoards", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Get a list of boards available on Canny", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyBoardsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyBoardsResponse" + } + } + } + } + } + } + }, + "/ng/api/canny/categories": { + "get": { + "tags": [ + "Canny" + ], + "summary": "Get a list of categories available for a board in Canny", + "operationId": "getCannyBoards_1", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Get a list of categories available for a board in Canny", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyCategoriesResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCannyCategoriesResponse" + } + } + } + } + } + } + }, + "/ng/api/source-code-manager/{identifier}": { + "put": { + "tags": [ + "Source Code Manager" + ], + "summary": "Updates Source Code Manager Details with the given Source Code Manager Id", + "operationId": "updateSourceCodeManager", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Source Code manager Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains details of Source Code Manager", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SourceCodeManager" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This contains details of the updated Source Code Manager for the specific Source Code Manager Id", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSourceCodeManager" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Source Code Manager" + ], + "summary": "Deletes the Source Code Manager corresponding to the specified Source Code Manager Id", + "operationId": "deleteSourceCodeManager", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Source Code manager Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Successfully deleted Source Code Manager for the given Source Code Manager Id", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ng/api/source-code-manager": { + "get": { + "tags": [ + "Source Code Manager" + ], + "summary": "Lists Source Code Managers for the given account", + "operationId": "getSourceCodeManagers", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Paginated list of Source Code Managers of given account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSourceCodeManager" + } + } + } + } + } + }, + "post": { + "tags": [ + "Source Code Manager" + ], + "summary": "Creates Source Code Manager", + "operationId": "createSourceCodeManager", + "requestBody": { + "description": "This contains details of Source Code Manager", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SourceCodeManager" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This contains details of the newly created Source Code Manager", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSourceCodeManager" + } + } + } + } + } + } + }, + "/ng/api/webhook": { + "post": { + "tags": [ + "Webhook Event Handler" + ], + "summary": "Process event payload for webhook triggers.", + "operationId": "processWebhookEvent", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "webhookIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "Returns UUID of newly created webhook processing event.", + "content": { + "application/json": { + "schema": { + "type": "object" + } + }, + "application/yaml": { + "schema": { + "type": "object" + } + }, + "text/plain": { + "schema": { + "type": "object" + } + }, + "application/octet-stream": { + "schema": { + "type": "object" + } + } + } + } + } + } + }, + "/ng/api/settings/{identifier}": { + "get": { + "tags": [ + "Setting" + ], + "summary": "Get a setting value by identifier", + "operationId": "getSettingValue", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "This is the Identifier of the Entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This returns a setting value by the Identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSettingValueResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSettingValueResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/settings": { + "get": { + "tags": [ + "Setting" + ], + "summary": "Get list of settings under the specified category", + "operationId": "getSettingsList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "category", + "in": "query", + "description": "Category of the Setting.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "CD", + "CI", + "CE", + "CV", + "CF", + "STO", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "CHAOS", + "SCIM", + "GIT_EXPERIENCE", + "CONNECTORS", + "EULA", + "NOTIFICATIONS", + "SUPPLY_CHAIN_ASSURANCE", + "USER", + "MODULES_VISIBILITY", + "DBOPS", + "IR" + ] + } + }, + { + "name": "group", + "in": "query", + "description": "Group Id of the setting", + "schema": { + "type": "string" + } + }, + { + "name": "includeParentScopes", + "in": "query", + "description": "Flag to include the settings which only exist at the parent scopes", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This contains a list of Settings", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSettingResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSettingResponseDTO" + } + } + } + } + } + }, + "put": { + "tags": [ + "Setting" + ], + "summary": "Update settings", + "operationId": "updateSettingValue", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of update requests for settings", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SettingRequestDTO" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SettingRequestDTO" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This updates the settings", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSettingUpdateResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSettingUpdateResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/user-settings/{identifier}": { + "get": { + "tags": [ + "UserSetting" + ], + "summary": "Get a user setting value by identifier", + "operationId": "getUserSettingValue", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "This is the Identifier of the Entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This returns a user setting value for given Identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSettingValueResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSettingValueResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/user-settings": { + "get": { + "tags": [ + "UserSetting" + ], + "summary": "Get list of user settings under the specified category", + "operationId": "getUserSettingsList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "group", + "in": "query", + "description": "Group Id of the setting", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This contains a list of user settings", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListUserSettingResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListUserSettingResponseDTO" + } + } + } + } + } + }, + "put": { + "tags": [ + "UserSetting" + ], + "summary": "Update user settings", + "operationId": "updateUserSettingValue", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of update requests for settings", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserSettingRequestDTO" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserSettingRequestDTO" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This updates the user settings", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListUserSettingUpdateResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListUserSettingUpdateResponseDTO" + } + } + } + } + } + } + }, + "/ng/api/user-settings/get-user-preferences": { + "get": { + "tags": [ + "UserSetting" + ], + "summary": "Get list of user preferences ", + "operationId": "getUserPreferencesList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + } + }, + "default": { + "description": "This contains a list of user settings", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOMapStringString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOMapStringString" + } + } + } + } + } + } + }, + "/pipeline/api/filters": { + "get": { + "tags": [ + "Filter" + ], + "summary": "List Filters", + "description": "Lists Filters for the given criteria.", + "operationId": "PipelinegetFilterList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page number of navigation. If left empty, default value of 0 is assumed.", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of entries per page. If left empty, default value of 100 is assumed", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Text to search/filter the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the list of Filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + } + } + } + } + }, + "put": { + "tags": [ + "Filter" + ], + "summary": "Update a Filter", + "description": "Updates the filter for the given ID.", + "operationId": "PipelineupdateFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated Filter. This should have all the fields not just the updated ones", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the updated Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "post": { + "tags": [ + "Filter" + ], + "summary": "Create a Filter", + "description": "Creates a Filter.", + "operationId": "PipelinepostFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Connector to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns created Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + } + }, + "/pipeline/api/filters/{identifier}": { + "get": { + "tags": [ + "Filter" + ], + "summary": "Return Filter Details", + "description": "Returns the settings of a filter for the given ID.", + "operationId": "PipelinegetFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns Filter having filterIdentifier as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Filter" + ], + "summary": "Delete a Filter", + "description": "Deletes a filter for the given ID.", + "operationId": "PipelinedeleteFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/eventHistory/polledResponse/{triggerIdentifier}": { + "get": { + "tags": [ + "TriggersEvents" + ], + "summary": "Get all the polled response for a given trigger", + "description": "Get all the polled response for a given trigger", + "operationId": "polledResponseTriggerIdentifier", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the polled response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPollingInfoForTriggers" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPollingInfoForTriggers" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/eventHistory/{triggerIdentifier}": { + "get": { + "tags": [ + "TriggersEvents" + ], + "summary": "Get event history for a trigger", + "description": "Get event history for a trigger", + "operationId": "triggerEventHistoryNew", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term to filter out pipelines based on pipeline name, identifier, tags.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "shouldSendTriggerPayload", + "in": "query", + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the Trigger Event History response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/eventHistory/events": { + "get": { + "tags": [ + "TriggersEvents" + ], + "summary": "Get event history for a trigger using filters.", + "description": "Get event history for a trigger using filters.", + "operationId": "triggerEventHistoryUsingFilters", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "status", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "triggerType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the Trigger Event History response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventsApiResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventsApiResponse" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/eventHistory/eventCorrelation/{eventCorrelationId}": { + "get": { + "tags": [ + "TriggersEvents" + ], + "summary": "Get Trigger history event correlation", + "description": "Get Trigger history event correlation", + "operationId": "triggerHistoryEventCorrelation", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "eventCorrelationId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the Trigger catalogue response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryBaseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryBaseDTO" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/eventHistory/v2/eventCorrelation/{eventCorrelationId}": { + "get": { + "tags": [ + "TriggersEvents" + ], + "summary": "Get Trigger history event correlation V2", + "description": "Get Trigger history event correlation V2", + "operationId": "triggerHistoryEventCorrelationV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "eventCorrelationId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the Trigger catalogue response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/eventHistory/artifact-manifest-info": { + "get": { + "tags": [ + "TriggersEvents" + ], + "summary": "Get artifact and manifest trigger event history based on build source type", + "description": "Get artifact and manifest trigger event history based on build source type", + "operationId": "triggerEventHistoryBuildSourceType", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides", + "schema": { + "type": "string" + } + }, + { + "name": "artifactType", + "in": "query", + "description": "Type of artifact source", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term to filter out pipelines based on pipeline name, identifier, tags.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the Trigger Event History response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + } + } + } + } + } + }, + "/pipeline/api/triggers": { + "get": { + "tags": [ + "Triggers" + ], + "summary": "Gets the paginated list of triggers for accountIdentifier, orgIdentifier, projectIdentifier, targetIdentifier.", + "operationId": "getListForTarget", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "schema": { + "type": "integer", + "format": "int32", + "default": 25 + } + }, + { + "name": "sort", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains details of Trigger filters based on Trigger Types and Trigger Names ", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TriggerFilterProperties" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TriggerFilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the paginated list of triggers for accountIdentifier, orgIdentifier, projectIdentifier, targetIdentifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseNGTriggerDetailsResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseNGTriggerDetailsResponseDTO" + } + } + } + } + } + }, + "post": { + "tags": [ + "Triggers" + ], + "summary": "Creates Trigger for triggering target pipeline identifier.", + "operationId": "createTrigger", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ignoreError", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "withServiceV2", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Triggers YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Create Trigger YAML", + "description": "Sample Triggers YAML", + "value": "trigger:\n name: Trigger\n identifier: Trigger\n enabled: true\n orgIdentifier: default\n projectIdentifier: Terraform_Provider\n pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications\n source:\n type: Scheduled\n spec:\n type: Cron\n spec:\n expression: 0 8,20 * * *\n inputYaml: |\n pipeline:\n identifier: Terraform_NG_Acc_Tests_With_Notifications\n properties:\n ci:\n codebase:\n build:\n type: branch\n spec:\n branch: main" + } + } + }, + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Create Trigger YAML", + "description": "Sample Triggers YAML", + "value": "trigger:\n name: Trigger\n identifier: Trigger\n enabled: true\n orgIdentifier: default\n projectIdentifier: Terraform_Provider\n pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications\n source:\n type: Scheduled\n spec:\n type: Cron\n spec:\n expression: 0 8,20 * * *\n inputYaml: |\n pipeline:\n identifier: Terraform_NG_Acc_Tests_With_Notifications\n properties:\n ci:\n codebase:\n build:\n type: branch\n spec:\n branch: main" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns details of the created Trigger.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerResponse" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/{triggerIdentifier}": { + "get": { + "tags": [ + "Triggers" + ], + "summary": "Gets the trigger by accountIdentifier, orgIdentifier, projectIdentifier, targetIdentifier and triggerIdentifier.", + "operationId": "getTrigger", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the trigger with the accountIdentifier, orgIdentifier, projectIdentifier, targetIdentifier and triggerIdentifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Triggers" + ], + "summary": "Updates trigger for pipeline with target pipeline identifier.", + "operationId": "updateTrigger", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ignoreError", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Triggers YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Update Trigger YAML", + "description": "Sample Triggers YAML", + "value": "trigger:\n name: Trigger\n identifier: Trigger\n enabled: true\n orgIdentifier: default\n projectIdentifier: Terraform_Provider\n pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications\n source:\n type: Scheduled\n spec:\n type: Cron\n spec:\n expression: 0 8,20 * * *\n inputYaml: |\n pipeline:\n identifier: Terraform_NG_Acc_Tests_With_Notifications\n properties:\n ci:\n codebase:\n build:\n type: branch\n spec:\n branch: main" + } + } + }, + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Update Trigger YAML", + "description": "Sample Triggers YAML", + "value": "trigger:\n name: Trigger\n identifier: Trigger\n enabled: true\n orgIdentifier: default\n projectIdentifier: Terraform_Provider\n pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications\n source:\n type: Scheduled\n spec:\n type: Cron\n spec:\n expression: 0 8,20 * * *\n inputYaml: |\n pipeline:\n identifier: Terraform_NG_Acc_Tests_With_Notifications\n properties:\n ci:\n codebase:\n build:\n type: branch\n spec:\n branch: main" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the updated trigger", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Triggers" + ], + "summary": "Deletes Trigger by identifier.", + "operationId": "deleteTrigger", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the boolean status.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/catalog": { + "get": { + "tags": [ + "Triggers" + ], + "summary": "Lists all Triggers", + "description": "Lists all the Triggers for the given Account ID.", + "operationId": "getTriggerCatalog", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the Trigger catalogue response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTriggerCatalogResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTriggerCatalogResponse" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/{triggerIdentifier}/details": { + "get": { + "tags": [ + "Triggers" + ], + "summary": "Fetches Trigger details for a specific accountIdentifier, orgIdentifier, projectIdentifier, targetIdentifier, triggerIdentifier.", + "operationId": "getTriggerDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "path", + "description": "Identifier of the target pipeline", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Fetches Trigger details for a specific accountIdentifier, orgIdentifier, projectIdentifier, targetIdentifier, triggerIdentifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerDetailsResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGTriggerDetailsResponseDTO" + } + } + } + } + } + } + }, + "/pipeline/api/triggers/{triggerIdentifier}/eventHistory": { + "get": { + "tags": [ + "Triggers" + ], + "summary": "Get event history for a trigger", + "description": "Get event history for a trigger", + "operationId": "triggerEventHistory", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "targetIdentifier", + "in": "query", + "description": "Identifier of the target pipeline under which trigger resides", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term to filter out pipelines based on pipeline name, identifier, tags.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the Trigger catalogue response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO" + } + } + } + } + }, + "deprecated": true + } + }, + "/pipeline/api/webhook/triggerProcessingDetails": { + "get": { + "tags": [ + "Webhook Triggers" + ], + "summary": "Gets webhook event processing details for input eventId.", + "operationId": "fetchWebhookDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "eventId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns webhook event processing details for input eventId.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookEventProcessingDetails" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookEventProcessingDetails" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookEventProcessingDetails" + } + } + } + } + } + } + }, + "/pipeline/api/webhook/triggerExecutionDetails/{eventId}": { + "get": { + "tags": [ + "Webhook Triggers" + ], + "summary": "Gets webhook event processing details for input eventId.", + "operationId": "fetchWebhookExecutionDetails", + "parameters": [ + { + "name": "eventId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns webhook event processing details for input eventId.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookExecutionDetails" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookExecutionDetails" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookExecutionDetails" + } + } + } + } + } + } + }, + "/pipeline/api/webhook/triggerExecutionDetailsV2/{eventId}": { + "get": { + "tags": [ + "Webhook Triggers" + ], + "summary": "Gets webhook event processing details for input eventId when the trigger is queued and has not triggered the pipeline yet.", + "operationId": "fetchWebhookExecutionDetailsV2", + "parameters": [ + { + "name": "eventId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns webhook event processing details for input eventId when the trigger is in queued state.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookExecutionDetails" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookExecutionDetails" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWebhookExecutionDetails" + } + } + } + } + } + } + }, + "/pipeline/api/webhook/trigger": { + "post": { + "tags": [ + "Webhook Triggers" + ], + "summary": "Handles event payload for webhook triggers.", + "operationId": "PipelineprocessWebhookEvent", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns UUID of newly created webhook processing event.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/pipeline/api/webhook/custom": { + "post": { + "tags": [ + "Webhook Triggers" + ], + "summary": "Handles event payload for custom webhook triggers.", + "operationId": "processCustomWebhookEvent", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns UUID of newly created custom webhook processing event.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/pipeline/api/webhook/custom/v2": { + "post": { + "tags": [ + "Webhook Triggers" + ], + "summary": "Handles event payload for custom webhook triggers.", + "operationId": "processCustomWebhookEventV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier", + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "query", + "description": "Trigger Key", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Trigger Payload", + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns data about of newly created custom webhook processing event.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGProcessWebhookResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGProcessWebhookResponse" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGProcessWebhookResponse" + } + } + } + } + } + } + }, + "/pipeline/api/webhook/custom/{webhookToken}/v3": { + "post": { + "tags": [ + "Webhook Triggers" + ], + "summary": "Handles event payload for custom webhook triggers.", + "operationId": "processCustomWebhookEventV3", + "parameters": [ + { + "name": "webhookToken", + "in": "path", + "description": "Custom Webhook token for custom webhook triggers", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier", + "schema": { + "type": "string" + } + }, + { + "name": "triggerIdentifier", + "in": "query", + "description": "Trigger Key", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Trigger Payload", + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns data about of newly created custom webhook processing event.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGProcessWebhookResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGProcessWebhookResponse" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONGProcessWebhookResponse" + } + } + } + } + } + } + }, + "/pipeline/api/approvals/{approvalInstanceId}/harness/activity": { + "post": { + "tags": [ + "Approvals" + ], + "summary": "Approve or Reject a Pipeline Execution", + "operationId": "addHarnessApprovalActivity", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "approvalInstanceId", + "in": "path", + "description": "Approval Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of approval activity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessApprovalActivityRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/HarnessApprovalActivityRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns a newly added Harness Approval activity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApprovalInstanceResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOApprovalInstanceResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/pipelineExecution": { + "get": { + "tags": [ + "Pipeline Dashboard" + ], + "summary": "Fetch Execution Details for an Interval", + "description": "Returns Pipeline Execution Details for a Given Interval (Presented in Day Wise Format)", + "operationId": "getPipelineExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "moduleInfo", + "in": "query", + "description": "The module from which execution was triggered.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "Start Date Epoch time in ms", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "description": "End Date Epoch time in ms", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "default": { + "description": "Fetches Pipeline Executions details for a given Interval and will be presented in day wise format", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTODashboardPipelineExecution" + } + } + } + } + }, + "deprecated": true + } + }, + "/pipeline/api/pipelines/retention/{accountIdentifier}": { + "get": { + "tags": [ + "Pipeline data retention" + ], + "summary": "Get retention period for pipeline executions", + "description": "Returns the retention period for pipeline executions based on accountId", + "operationId": "getRetentionPeriodInMonths", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns the retention period for pipeline executions based on accountId", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseInteger" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RestResponseInteger" + } + } + } + } + } + } + }, + "/pipeline/api/input-file/download-file": { + "get": { + "tags": [ + "Pipeline" + ], + "summary": "Download file from GCS using filePath", + "description": "Download file from GCS using filePath", + "operationId": "downloadFileUsingFilePath", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "filePath", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Download file from GCS using filePath" + } + } + } + }, + "/pipeline/api/input-file/file/{planExecutionId}": { + "get": { + "tags": [ + "Pipeline" + ], + "summary": "Returns a file uploaded or filtered based on the fileIdentifier provided for a given nodeExecutionId", + "description": "Returns a file uploaded or filtered based on the fileIdentifier provided for a given nodeExecutionId", + "operationId": "PipelinegetFile", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "The Pipeline Execution Id", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "nodeExecutionId", + "in": "query", + "description": "Step execution Id of upload step", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "fileName", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns a file uploaded or filtered based on the fileIdentifier provided for a given planExecutionId" + } + } + } + }, + "/pipeline/api/inputSets": { + "get": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "List Input Sets", + "description": "Lists all Input Sets for a Pipeline", + "operationId": "listInputSet", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline identifier for which we need the Input Sets list.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inputSetType", + "in": "query", + "description": "Type of Input Set. The default value is ALL.", + "schema": { + "type": "string", + "enum": [ + "ALL", + "INPUT_SET", + "OVERLAY_INPUT_SET" + ], + "default": "ALL" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term to filter out Input Sets based on name, identifier, tags.", + "schema": { + "type": "string" + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Fetch all the Input Sets for a Pipeline, including Overlay Input Sets.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInputSetSummaryResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInputSetSummaryResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Create an Input Set", + "description": "Creates an Input Set for a Pipeline", + "operationId": "postInputSet", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineBranch", + "in": "query", + "description": "Github branch of the Pipeline for which the Input Set is to be created", + "schema": { + "type": "string" + } + }, + { + "name": "pipelineRepoID", + "in": "query", + "description": "Github Repo identifier of the Pipeline for which the Input Set is to be created", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "storeType", + "in": "query", + "description": "Tells whether the Entity is to be saved on Git or not", + "schema": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + }, + { + "name": "InputSetVersion", + "in": "query", + "description": "Input set yaml version, should be one of '0' or '1'", + "schema": { + "type": "string", + "default": "0" + } + } + ], + "requestBody": { + "description": "Input set YAML to be created. The Account, Org, Project, and Pipeline identifiers inside the YAML should match the query parameters.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Input Set YAML", + "description": "Sample Input Set YAML", + "value": "inputSet:\n name: Sample Input Set\n tags: {}\n identifier: Sample_Input_Set\n orgIdentifier: default\n projectIdentifier: MISC\n pipeline:\n identifier: Sample_Pipeline\n stages:\n - stage:\n identifier: Sample_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\n type: Inline\n spec:\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample\n" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "If the YAML is valid, returns created Input Set. If not, it sends what is wrong with the YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetResponse" + } + } + } + } + } + } + }, + "/pipeline/api/inputSets/overlay": { + "post": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Create an Overlay Input Set for a pipeline", + "operationId": "postOverlayInputSet", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "storeType", + "in": "query", + "description": "Tells whether the Entity is to be saved on Git or not", + "schema": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Overlay Input Set YAML to be created. The Account, Org, Project, and Pipeline identifiers inside the YAML should match the query parameters", + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "If the YAML is valid, returns created Overlay Input Set. If not, it sends what is wrong with the YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverlayInputSetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverlayInputSetResponse" + } + } + } + } + } + } + }, + "/pipeline/api/inputSets/{inputSetIdentifier}": { + "get": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Fetch an Input Set", + "description": "Returns Input Set for a Given Identifier (Throws an Error if no Input Set Exists)", + "operationId": "getInputSet", + "parameters": [ + { + "name": "inputSetIdentifier", + "in": "path", + "description": "Identifier for the Input Set", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineBranch", + "in": "query", + "description": "Github branch of the Pipeline for which the Input Set is to be fetched", + "schema": { + "type": "string" + } + }, + { + "name": "pipelineRepoID", + "in": "query", + "description": "Github Repo identifier of the Pipeline for which the Input Set is to be fetched", + "schema": { + "type": "string" + } + }, + { + "name": "loadFromFallbackBranch", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns Input Set if exists for the given Identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Update an Input Set", + "description": "Updates the Input Set for a Pipeline", + "operationId": "putInputSet", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version of Entity to match", + "schema": { + "type": "string" + } + }, + { + "name": "inputSetIdentifier", + "in": "path", + "description": "Identifier for the Input Set that needs to be updated. An Input Set corresponding to this identifier should already exist.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineBranch", + "in": "query", + "description": "Github branch of the Pipeline for which the Input Set is to be updated", + "schema": { + "type": "string" + } + }, + { + "name": "pipelineRepoID", + "in": "query", + "description": "Github Repo Id of the Pipeline for which the Input Set is to be updated", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + }, + { + "name": "InputSetVersion", + "in": "query", + "description": "Input set yaml version, should be one of '0' or '1'", + "schema": { + "type": "string", + "default": "0" + } + } + ], + "requestBody": { + "description": "Input set YAML to be updated. The query parameters should match the Account, Org, Project, and Pipeline Ids in the YAML.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Input Set YAML", + "description": "Sample Input Set YAML", + "value": "inputSet:\n name: Sample Input Set\n tags: {}\n identifier: Sample_Input_Set\n orgIdentifier: default\n projectIdentifier: MISC\n pipeline:\n identifier: Sample_Pipeline\n stages:\n - stage:\n identifier: Sample_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\n type: Inline\n spec:\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample\n" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "If the YAML is valid, returns the updated Input Set. If not, it sends what is wrong with the YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Delete an Input Set", + "description": "Deletes the Input Set by Identifier", + "operationId": "deleteInputSet", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version of Entity to match", + "schema": { + "type": "string" + } + }, + { + "name": "inputSetIdentifier", + "in": "path", + "description": "Identifier of the Input Set that should be deleted.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Last Object Id", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return the Deleted Input Set", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/pipeline/api/inputSets/get/batch-input-sets-metadata": { + "post": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "List regular Input Sets for multiple pipelines (excludes overlay input sets)", + "description": "Lists regular Input Sets for multiple pipelines (excludes overlay input sets)", + "operationId": "getBatchInputSetsMetadata", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 20 + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term to filter out Input Sets based on name, identifier, tags.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request containing pipeline identifiers to fetch regular input sets for (excludes overlay input sets)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BatchInputSetsAPIRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/BatchInputSetsAPIRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Fetch regular Input Sets for the specified pipelines (excludes overlay input sets).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInputSetListResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseInputSetListResponse" + } + } + } + } + } + } + }, + "/pipeline/api/inputSets/get/bulk": { + "post": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Get multiple input sets by identifiers (non-deleted only)", + "description": "Gets multiple input sets by their identifiers for a specific pipeline. Only returns non-deleted input sets.", + "operationId": "getBulkInputSets", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request containing input set identifiers to fetch", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BulkInputSetsAPIRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/BulkInputSetsAPIRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Fetch multiple non-deleted input sets by their identifiers.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBulkInputSetsAPIResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBulkInputSetsAPIResponse" + } + } + } + } + } + } + }, + "/pipeline/api/inputSets/overlay/{inputSetIdentifier}": { + "get": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Gets an Overlay Input Set by identifier", + "operationId": "getOverlayInputSet", + "parameters": [ + { + "name": "inputSetIdentifier", + "in": "path", + "description": "Identifier for the Overlay Input Set", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineBranch", + "in": "query", + "description": "Github branch of the Pipeline for which the Input Set is to be fetched", + "schema": { + "type": "string" + } + }, + { + "name": "pipelineRepoID", + "in": "query", + "description": "Github Repo identifier of the Pipeline for which the Input Set is to be fetched", + "schema": { + "type": "string" + } + }, + { + "name": "loadFromFallbackBranch", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "The Overlay Input Set that corresponds to the given Overlay Input Set Identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverlayInputSetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverlayInputSetResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Update an Overlay Input Set for a pipeline", + "operationId": "putOverlayInputSet", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version of Entity to match", + "schema": { + "type": "string" + } + }, + { + "name": "inputSetIdentifier", + "in": "path", + "description": "Identifier for the Overlay Input Set that needs to be updated.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Overlay Input Set YAML to be updated. The Account, Org, Project, and Pipeline identifiers inside the YAML should match the query parameters, and the Overlay Input Set identifier cannot be changed.", + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "If the YAML is valid, returns the updated Overlay Input Set. If not, it sends what is wrong with the YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverlayInputSetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOOverlayInputSetResponse" + } + } + } + } + } + } + }, + "/pipeline/api/inputSets/template": { + "post": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Fetch Runtime Input Template", + "description": "Returns Runtime Input Template for a Pipeline", + "operationId": "runtimeInputTemplate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline identifier for which we need the Runtime Input Template.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetTemplateRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InputSetTemplateRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Fetch Runtime Input Template for a Pipeline, along with any expressions whose value is needed for running specific Stages", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetTemplateWithReplacedExpressionsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetTemplateWithReplacedExpressionsResponse" + } + } + } + } + } + } + }, + "/pipeline/api/inputSets/{inputSetIdentifier}/update-git-metadata": { + "put": { + "tags": [ + "Pipeline Input Set" + ], + "summary": "Update git-metadata in remote input-set", + "description": "Update git-metadata in remote input-set and return the updated input-set", + "operationId": "updateInputSetGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier for the entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "inputSetIdentifier", + "in": "path", + "description": "Identifier for the Input Set", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns identifier of updated input-set", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetGitUpdateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetGitUpdateResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines": { + "post": { + "tags": [ + "Pipeline" + ], + "summary": "Create a Pipeline", + "description": "Creates a Pipeline", + "operationId": "postPipeline", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "storeType", + "in": "query", + "description": "Tells whether the Entity is to be saved on Git or not", + "schema": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Pipeline YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns created pipeline", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + }, + "deprecated": true + } + }, + "/pipeline/api/pipelines/v2": { + "post": { + "tags": [ + "Pipeline" + ], + "summary": "Create a Pipeline", + "description": "Creates a Pipeline", + "operationId": "postPipelineV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "storeType", + "in": "query", + "description": "Tells whether the Entity is to be saved on Git or not", + "schema": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + }, + { + "name": "allowDynamicExecutions", + "in": "query", + "description": "Allow Dynamic Executions for the Pipeline", + "schema": { + "type": "boolean" + } + }, + { + "name": "public", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Pipeline YAML", + "content": { + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Create Pipeline YAML", + "description": "Sample Pipeline YAML with One Build Stage and One Deploy Stage", + "value": "pipeline:\n name: Sample Pipeline\n identifier: Sample_Pipeline\n allowStageExecutions: false\n projectIdentifier: Temp\n orgIdentifier: default\n tags: {}\n stages:\n - stage:\n name: Sample Stage\n identifier: Sample_Stage\n description: \"\"\n type: Approval\n spec:\n execution:\n steps:\n - step:\n name: Approval Step\n identifier: Approval_Step\n type: HarnessApproval\n timeout: 1d\n spec:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n minimumCount: 1\n disallowPipelineExecutor: false\n userGroups: <+input>\n approverInputs: []\n - step:\n type: ShellScript\n name: ShellScript Step\n identifier: ShellScript_Step\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n executionTarget: {}\n timeout: 10m\n tags: {}\n - stage:\n name: Sample Deploy Stage\n identifier: Sample_Deploy_Stage\n description: \"\"\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: <+input>\n serviceDefinition:\n spec:\n variables: []\n type: Kubernetes\n infrastructure:\n environmentRef: <+input>\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: <+input>\n namespace: <+input>\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n execution:\n steps:\n - step:\n name: Rollout Deployment\n identifier: rolloutDeployment\n type: K8sRollingDeploy\n timeout: 10m\n spec:\n skipDryRun: false\n rollbackSteps:\n - step:\n name: Rollback Rollout Deployment\n identifier: rollbackRolloutDeployment\n type: K8sRollingRollback\n timeout: 10m\n spec: {}\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns created pipeline with metadata", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/{pipelineIdentifier}": { + "get": { + "tags": [ + "Pipeline" + ], + "summary": "Fetch a Pipeline", + "description": "Returns a Pipeline by Identifier", + "operationId": "getPipeline", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "getTemplatesResolvedPipeline", + "in": "query", + "description": "This is a boolean value. If true, returns Templates resolved Pipeline YAML in the response else returns null.", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "loadFromFallbackBranch", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "validateAsync", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns pipeline YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPMSPipelineResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPMSPipelineResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Pipeline" + ], + "summary": "Update a Pipeline", + "description": "Updates a Pipeline by Identifier", + "operationId": "updatePipeline", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version of Entity to match", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Pipeline YAML to be updated", + "content": { + "application/json": { + "schema": { + "type": "string" + } + }, + "application/yaml": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns updated pipeline", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + }, + "deprecated": true + }, + "delete": { + "tags": [ + "Pipeline" + ], + "summary": "Delete a Pipeline", + "description": "Deletes a Pipeline by Identifier", + "operationId": "deletePipeline", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version of Entity to match", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Last Object Id", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/list": { + "post": { + "tags": [ + "Pipeline" + ], + "summary": "List Pipelines", + "description": "Returns List of Pipelines in the Given Project", + "operationId": "getPipelineList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 25 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term to filter out pipelines based on pipeline name, identifier, tags.", + "schema": { + "type": "string" + } + }, + { + "name": "module", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "filterIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "getDistinctFromBranches", + "in": "query", + "description": "Boolean flag to get distinct pipelines from all branches.", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "This is the body for the filter properties for listing pipelines.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineFilterProperties" + }, + "examples": { + "List": { + "summary": "Sample List Pipeline JSON", + "description": "Sample List Pipeline JSON Payload", + "value": { + "filterType": "PipelineSetup" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Paginated list of pipelines.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPagePMSPipelineSummaryResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPagePMSPipelineSummaryResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/summary/{pipelineIdentifier}": { + "get": { + "tags": [ + "Pipeline" + ], + "summary": "Fetch Pipeline Summary", + "description": "Returns Pipeline Summary by Identifier", + "operationId": "getPipelineSummary", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "loadFromFallbackBranch", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns Pipeline Summary having pipelineIdentifier as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPMSPipelineSummaryResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPMSPipelineSummaryResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/import": { + "post": { + "tags": [ + "Pipeline" + ], + "summary": "Import and Create Pipeline from Git Repository", + "operationId": "importPipeline", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "isForceImport", + "in": "query", + "description": "isForceImport", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineImportRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineImportRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Import and Create Pipeline from Git Repository and saves a record for it in Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/import/{pipelineIdentifier}": { + "post": { + "tags": [ + "Pipeline" + ], + "summary": "Import and Create Pipeline from Git Repository", + "operationId": "importPipeline_1", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "isForceImport", + "in": "query", + "description": "isForceImport", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineImportRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineImportRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Import and Create Pipeline from Git Repository and saves a record for it in Harness", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + } + } + } + }, + "deprecated": true + } + }, + "/pipeline/api/pipelines/{pipelineIdentifier}/update-git-metadata": { + "put": { + "tags": [ + "Pipeline" + ], + "summary": "Update git-metadata in remote pipeline Entity", + "description": "Update git-metadata in remote pipeline and returns the identifier of updated pipeline", + "operationId": "updatePipelineGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns identifier of updated pipeline", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPMSGitUpdateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPMSGitUpdateResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/v2/{pipelineIdentifier}": { + "put": { + "tags": [ + "Pipeline" + ], + "summary": "Update a Pipeline", + "description": "Updates a Pipeline by Identifier", + "operationId": "updatePipelineV2", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "description": "Version of Entity to match", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + }, + { + "name": "allowDynamicExecutions", + "in": "query", + "description": "Allow Dynamic Executions for the Pipeline", + "schema": { + "type": "boolean" + } + }, + { + "name": "public", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Pipeline YAML to be updated", + "content": { + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Update Pipeline YAML", + "description": "Sample Pipeline YAML with One Build Stage and One Deploy Stage", + "value": "pipeline:\n name: Sample Pipeline\n identifier: Sample_Pipeline\n allowStageExecutions: false\n projectIdentifier: Temp\n orgIdentifier: default\n tags: {}\n stages:\n - stage:\n name: Sample Stage\n identifier: Sample_Stage\n description: \"\"\n type: Approval\n spec:\n execution:\n steps:\n - step:\n name: Approval Step\n identifier: Approval_Step\n type: HarnessApproval\n timeout: 1d\n spec:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n minimumCount: 1\n disallowPipelineExecutor: false\n userGroups: <+input>\n approverInputs: []\n - step:\n type: ShellScript\n name: ShellScript Step\n identifier: ShellScript_Step\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n executionTarget: {}\n timeout: 10m\n tags: {}\n - stage:\n name: Sample Deploy Stage\n identifier: Sample_Deploy_Stage\n description: \"\"\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: <+input>\n serviceDefinition:\n spec:\n variables: []\n type: Kubernetes\n infrastructure:\n environmentRef: <+input>\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: <+input>\n namespace: <+input>\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n execution:\n steps:\n - step:\n name: Rollout Deployment\n identifier: rolloutDeployment\n type: K8sRollingDeploy\n timeout: 10m\n spec:\n skipDryRun: false\n rollbackSteps:\n - step:\n name: Rollback Rollout Deployment\n identifier: rollbackRolloutDeployment\n type: K8sRollingRollback\n timeout: 10m\n spec: {}\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns updated pipeline with metadata", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineSaveResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/canRetry/{planExecutionId}": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Validate if Execution can be retried", + "description": "Validates if an execution can be retried for a Given PlanExecution ID", + "operationId": "canRetryExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "Plan Execution Id for which we want to check if it can be retried", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return true if the provided execution can be retried", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/{planExecutionId}": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Fetch Execution Details", + "description": "Returns the Pipeline Execution Details for a Given PlanExecution ID", + "operationId": "getExecutionDetail", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stageNodeId", + "in": "query", + "description": "Stage Node Identifier for which Stage Graph needs to be Rendered", + "schema": { + "type": "string" + } + }, + { + "name": "stageNodeExecutionId", + "in": "query", + "description": "Stage Node Execution ID for which Stage Graph needs to be Rendered. (Needed only when there are Multiple Runs for a Given Stage. It can be Extracted from LayoutNodeMap Field)", + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "Plan Execution Id for which we want to get the Execution details", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return the Pipeline Execution details for given PlanExecution Id", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionDetail" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionDetail" + } + } + } + } + }, + "deprecated": true + } + }, + "/pipeline/api/pipelines/execution/v2/{planExecutionId}": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Fetch Execution Details", + "description": "Returns the Pipeline Execution Details for a Given PlanExecution ID", + "operationId": "getExecutionDetailV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stageNodeId", + "in": "query", + "description": "Stage Node Identifier for which Stage Graph needs to be Rendered", + "schema": { + "type": "string" + } + }, + { + "name": "stageNodeExecutionId", + "in": "query", + "description": "Stage Node Execution ID for which Stage Graph needs to be Rendered. (Needed only when there are Multiple Runs for a Given Stage. It can be Extracted from LayoutNodeMap Field)", + "schema": { + "type": "string" + } + }, + { + "name": "childStageNodeId", + "in": "query", + "description": "Stage Node Execution ID for which Stage Graph needs to be Rendered. (Needed only when there are Multiple Runs for a Given Stage. It can be Extracted from LayoutNodeMap Field)", + "schema": { + "type": "string" + } + }, + { + "name": "renderFullBottomGraph", + "in": "query", + "description": "Generate Graph for all the Stages including Steps in each Stage", + "schema": { + "type": "boolean" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "Plan Execution Id for which we want to get the Execution details", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return the Pipeline Execution details for given PlanExecution Id without full graph if stageNodeId is null", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionDetail" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionDetail" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/getExecutionGraph/{planExecutionId}": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Fetch Execution Graph", + "description": "Returns the Pipeline Execution Graph for a Given PlanExecution ID", + "operationId": "getExecutionGraph", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "Plan Execution Id for which we want to get the Execution details", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return the Pipeline Execution graph for given PlanExecution Id", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOExecutionGraph" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOExecutionGraph" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/subGraph/{planExecutionId}/{nodeExecutionId}": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Fetch Execution SubGraph for a Given Retried StepGroup NodeExecution ID", + "description": "Returns the Pipeline Execution SubGraph for a Given Retried StepGroup NodeExecution ID", + "operationId": "getExecutionSubGraphForNodeExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "nodeExecutionId", + "in": "path", + "description": "Node Execution Id for which we want to get the Execution SubGraph", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "Plan Execution Id for which we want to get the Execution details", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return Execution subGraph for a Given Retried StepGroup NodeExecution ID", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONodeExecutionDetails" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONodeExecutionDetails" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/url": { + "post": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Fetch Execution Url", + "description": "Returns the Pipeline Execution Url for a Given PlanExecution ID", + "operationId": "getExecutionURL", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Id for which we want to get the Execution url", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "query", + "description": "Plan Execution Id for which we want to get the Execution url", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "modules", + "in": "query", + "description": "Modules", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return the Pipeline Execution url for given Pipeline and PlanExecution Id", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/{planExecutionId}/inputsetV2": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Get the Input Set YAML used for given Plan Execution", + "operationId": "getInputsetYamlV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "resolveExpressions", + "in": "query", + "description": "A boolean that indicates whether or not expressions should be resolved in input set yaml ", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "resolveExpressionsType", + "in": "query", + "description": "Resolve Expressions Type indicates what kind of expressions should be resolved in input set yaml. The default value is UNKNOWN in which case no expressions will be resolvedChoose a value from the enum list: [RESOLVE_ALL_EXPRESSIONS, RESOLVE_TRIGGER_EXPRESSIONS, UNKNOWN]", + "schema": { + "type": "string", + "enum": [ + "RESOLVE_ALL_EXPRESSIONS", + "RESOLVE_TRIGGER_EXPRESSIONS", + "UNKNOWN" + ], + "default": "UNKNOWN" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "Plan Execution Id for which we want to get the Input Set YAML", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return the Input Set YAML used for given Plan Execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetTemplateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInputSetTemplateResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/{planExecutionId}/policy-evaluation": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Gets the policy evaluated used for given Plan Execution", + "operationId": "getPpolicyEvaluation", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "Plan Execution Id for which we want to get the Input Set YAML", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Return policy evaluation details for given Plan Execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageGovernanceMetadata" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageGovernanceMetadata" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/executionSummary": { + "post": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "List Execution Identifier", + "description": "Returns a List of Pipeline Executions Identifier with Specific Filter", + "operationId": "getListOfExecutionIdentifier", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier filter if exact pipelines needs to be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns all the Executions Identifier of pipelines for given filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPagePipelineExecutionIdentifierSummary" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPagePipelineExecutionIdentifierSummary" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/summary": { + "post": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "List Executions", + "description": "Returns a List of Pipeline Executions with Specific Filter", + "operationId": "getListOfExecutions", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search term to filter out pipelines based on pipeline name, identifier, tags.", + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier filter if exact pipelines needs to be filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "filterIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "showAllExecutions", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "module", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "status", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + } + } + }, + { + "name": "myDeployments", + "in": "query", + "schema": { + "type": "boolean" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Returns a List of Pipeline Executions with Specific Filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FilterProperties" + }, + "examples": { + "List": { + "summary": "Sample List Pipeline Executions", + "description": "Sample List Pipeline Executions JSON Payload", + "value": { + "filterType": "PipelineExecution", + "pipelineTags": [ + { + "key": "tag1", + "value": "value1" + }, + { + "key": "tag2", + "value": "value2" + } + ] + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns all the Executions of pipelines for given filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPagePipelineExecutionSummary" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPagePipelineExecutionSummary" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/summary/outline": { + "post": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "List Executions Outline", + "description": "Returns a List of Pipeline Executions Outline given pipelineId or a list of executionIds", + "operationId": "getListOfExecutionsOutline", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "lastSeenExecutionId", + "in": "query", + "description": "lastSeenExecutionId from previous response", + "schema": { + "type": "string" + } + }, + { + "name": "lastSeenStartTime", + "in": "query", + "description": "lastSeenStartTime from previous response", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "requestBody": { + "description": "Filters for fetching executions outline", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineExecutionOutlineFilterDTO" + }, + "examples": { + "List executions outline": { + "summary": "Sample List Pipeline Executions outline", + "description": "Sample List Pipeline Executions outline JSON Payload", + "value": { + "timeRange": { + "startTime": "1702443600000", + "endTime": "1718810039288" + }, + "pipelineIdentifier": "test", + "status": [ + "SUCCESS" + ], + "planExecutionIds": [ + "executionId1", + "executionId2", + "executionId3" + ] + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns all the Executions outline given pipelineId or a list of executionIds", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomPagePipelineExecutionOutline" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCustomPagePipelineExecutionOutline" + } + } + } + } + } + } + }, + "/pipeline/api/pipelines/execution/{planExecutionId}/notes": { + "get": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Get Notes for a pipelineExecution", + "operationId": "getNotesForExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "ExecutionId of the execution for which we want to get notes", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns Notes of a pipelineExecution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionNotes" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionNotes" + } + } + } + } + } + }, + "put": { + "tags": [ + "Pipeline Execution Details" + ], + "summary": "Updates Notes for a pipelineExecution", + "operationId": "updateNotesForExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "notesForPipelineExecution", + "in": "query", + "description": "Notes of a Pipeline Execution", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "ExecutionId of the execution for which we want to update notes", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns Notes of a pipelineExecution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionNotes" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPipelineExecutionNotes" + } + } + } + } + } + } + }, + "/pipeline/api/pipeline/execute/retryHistory/{planExecutionId}": { + "get": { + "tags": [ + "Pipeline Execute" + ], + "summary": "Retry History for a given execution", + "operationId": "retryHistory", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pipelineIdentifier", + "in": "query", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "planExecutionId of the execution of whose we need to find the retry history", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns retry history execution details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORetryHistoryResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORetryHistoryResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipeline/execute/interrupt/{planExecutionId}": { + "put": { + "tags": [ + "Pipeline Execute" + ], + "summary": "Execute an Interrupt", + "description": "Executes an Interrupt on a Given Execution", + "operationId": "putHandleInterrupt", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "interruptType", + "in": "query", + "description": "The Interrupt type needed to be applied to the execution. Choose a value from the enum list.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AbortAll", + "UserMarkedFailure" + ] + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "The Pipeline Execution Id on which the Interrupt needs to be applied.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Takes a possible Interrupt value and applies it onto the execution referred by the planExecutionId", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInterruptResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInterruptResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipeline/execute/interrupt/{planExecutionId}/{nodeExecutionId}": { + "put": { + "tags": [ + "Pipeline Execute" + ], + "summary": "Handles the interrupt for a given stage in a pipeline", + "operationId": "handleStageInterrupt", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "interruptType", + "in": "query", + "description": "The Interrupt type needed to be applied to the execution. Choose a value from the enum list.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AbortAll", + "UserMarkedFailure" + ] + } + }, + { + "name": "planExecutionId", + "in": "path", + "description": "The Pipeline Execution Id on which the Interrupt needs to be applied.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "nodeExecutionId", + "in": "path", + "description": "The runtime Id of the step/stage on which the Interrupt needs to be applied.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Takes a possible Interrupt value and applies it onto the given stage in the execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInterruptResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInterruptResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipeline/execute/retry/{identifier}": { + "post": { + "tags": [ + "Pipeline Execute" + ], + "summary": "Retry a executed pipeline with inputSet pipeline yaml", + "operationId": "retryPipeline", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "moduleType", + "in": "query", + "description": "Module type for the entity. If its from deployments,type will be CD , if its from build type will be CI", + "schema": { + "type": "string" + } + }, + { + "name": "planExecutionId", + "in": "query", + "description": "This param contains the previous execution execution id. This is basically when we are rerunning a Pipeline.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "retryStages", + "in": "query", + "description": "This param contains the identifier of stages from where to resume. It will be a list if we want to retry from parallel group ", + "required": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "runAllStages", + "in": "query", + "description": "This param provides an option to run only the failed stages when Pipeline fails at parallel group. By default, it will run all the stages in the failed parallel group.", + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "identifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "notesForPipelineExecution", + "in": "query", + "description": "Notes of a pipeline execution", + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "asyncPlanCreation", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Retry a executed pipeline with inputSet pipeline yaml", + "content": { + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Retry a executed pipeline with Runtime Input YAML": { + "summary": "Retry a executed pipeline with Runtime Input YAML", + "description": "Retry a executed pipeline with Runtime Input YAML", + "value": "pipeline:\n identifier: \"Sample_Pipeline\"\n stages:\n - stage:\n identifier: \"Sample_Stage\"\n type: \"Approval\"\n spec:\n execution:\n steps:\n - step:\n identifier: \"Approval_Step\"\n type: \"HarnessApproval\"\n spec:\n approvers:\n userGroups: \n - account._account_all_users:\n - step:\n identifier: \"Shellscript_Step\"\n type: \"ShellScript\"\n spec:\n source:\n type: \"Inline\"\n spec:\n script: \"exit 0\"\n - stage:\n identifier: \"Sample_Deploy_Stage\"\n type: \"Deployment\"\n spec:\n serviceConfig:\n serviceRef: \"service1\"\n infrastructure:\n environmentRef: \"env1\"\n infrastructureDefinition:\n type: \"KubernetesDirect\"\n spec:\n connectorRef: \"KubernetesConnector>\"\n namespace: \"default\"\n" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns execution details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipeline/execute/{identifier}/inputSetList": { + "post": { + "tags": [ + "Pipeline Execute" + ], + "summary": "Execute a Pipeline with Input Set References", + "description": "Execute a Pipeline with Input Set References", + "operationId": "postPipelineExecuteWithInputSetList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "moduleType", + "in": "query", + "description": "Module type for the entity. If its from deployments,type will be CD , if its from build type will be CI", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Pipeline identifier for the entity. Identifier of the Pipeline to be executed", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "useFQNIfError", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "notesForPipelineExecution", + "in": "query", + "description": "Notes of a pipeline execution", + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "asyncPlanCreation", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MergeInputSetRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/MergeInputSetRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns pipeline execution details V2", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipeline/execute/{identifier}": { + "post": { + "tags": [ + "Pipeline Execute" + ], + "summary": "Execute a Pipeline with Runtime Input YAML", + "description": "Execute a Pipeline with Runtime Input YAML", + "operationId": "postPipelineExecuteWithInputSetYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "moduleType", + "in": "query", + "description": "Module type for the entity. If its from deployments,type will be CD , if its from build type will be CI", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Pipeline identifier for the entity. Identifier of the Pipeline to be executed", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "useFQNIfError", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "notifyOnlyUser", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "notesForPipelineExecution", + "in": "query", + "description": "Notes of a pipeline execution", + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "inputSetIdentifiers", + "in": "query", + "description": "Input set identifiers for tracking and filtering pipeline executions. A list of input set identifiers to apply.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "asyncPlanCreation", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Enter Runtime Input YAML if the Pipeline contains Runtime Inputs. Template for this can be Fetched from /inputSets/template API.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Execute Runtime Input YAML": { + "summary": "Execute Pipeline with Runtime Input YAML", + "description": "Execute Runtime Input YAML", + "value": "pipeline:\n identifier: \"Sample_Pipeline\"\n stages:\n - stage:\n identifier: \"Sample_Stage\"\n type: \"Approval\"\n spec:\n execution:\n steps:\n - step:\n identifier: \"Approval_Step\"\n type: \"HarnessApproval\"\n spec:\n approvers:\n userGroups: \n - account._account_all_users:\n - step:\n identifier: \"Shellscript_Step\"\n type: \"ShellScript\"\n spec:\n source:\n type: \"Inline\"\n spec:\n script: \"exit 0\"\n - stage:\n identifier: \"Sample_Deploy_Stage\"\n type: \"Deployment\"\n spec:\n serviceConfig:\n serviceRef: \"service1\"\n infrastructure:\n environmentRef: \"env1\"\n infrastructureDefinition:\n type: \"KubernetesDirect\"\n spec:\n connectorRef: \"KubernetesConnector>\"\n namespace: \"default\"\n" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns pipeline execution details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + } + } + } + } + } + }, + "/pipeline/api/pipeline/execute/{identifier}/stages": { + "post": { + "tags": [ + "Pipeline Execute" + ], + "summary": "Execute given Stages of a Pipeline", + "operationId": "postExecuteStages", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "moduleType", + "in": "query", + "description": "Module type for the entity. If its from deployments,type will be CD , if its from build type will be CI", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Pipeline Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "useFQNIfError", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "notesForPipelineExecution", + "in": "query", + "description": "Notes of a pipeline execution", + "schema": { + "type": "string", + "default": "" + } + }, + { + "name": "inputSetIdentifiers", + "in": "query", + "description": "Input set identifiers for tracking and filtering pipeline executions. A list of input set identifiers to apply.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "asyncPlanCreation", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RunStageRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RunStageRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Execute given Stages of a Pipeline with Runtime Input Yaml", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPlanExecutionResponse" + } + } + } + } + } + } + }, + "/pipeline/api/refresh-template/refresh-all": { + "post": { + "tags": [ + "Pipeline Refresh" + ], + "summary": "This recursively refresh and update template inputs in pipeline", + "description": "This recursively refresh and update template inputs in pipeline", + "operationId": "refreshAllTemplatesInputsInPipeline", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "This recursively refresh and update template inputs in pipeline", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/pipeline/api/refresh-template/validate-template-inputs": { + "get": { + "tags": [ + "Pipeline Refresh" + ], + "summary": "Validates template inputs in a pipeline's YAML specification.", + "description": "Validates the template inputs in a pipeline's YAML specification. If the template inputs are invalid, the operation returns an error summary.", + "operationId": "validateTemplateInputs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineError" + } + } + } + }, + "default": { + "description": "Returns a validation result for template inputs present in a pipeline's YAML specification.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOValidateTemplateInputsResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOValidateTemplateInputsResponseDTO" + } + } + } + } + } + } + }, + "/authz/api/acl": { + "post": { + "tags": [ + "Access Control List" + ], + "summary": "Check Permission", + "description": "Check for permission on resource(s) for a principal", + "operationId": "getAccessControlList", + "requestBody": { + "description": "These are the checks to perform for Access Control.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessCheckRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessCheckRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Result of the access check request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccessCheckResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAccessCheckResponse" + } + } + } + } + } + } + }, + "/authz/api/permissions": { + "get": { + "tags": [ + "Permissions" + ], + "summary": "List Permissions", + "description": "Get all permissions in a scope or all permissions in the system", + "operationId": "getPermissionList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "scopeFilterDisabled", + "in": "query", + "description": "This is to enable or disable filtering by scope. The default value is false. If the value is true, all the permissions in the system are fetched.", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "List of all permissions", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListPermissionResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListPermissionResponse" + } + } + } + } + } + } + }, + "/authz/api/permissions/resourcetypes": { + "get": { + "tags": [ + "Permissions" + ], + "summary": "List Resource Types", + "description": "Get all resource types for permissions in a scope or in the system.", + "operationId": "getPermissionResourceTypesList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "scopeFilterDisabled", + "in": "query", + "description": "This is to enable or disable filtering by scope. The default value is false. If the value is true, all the permissions in the system are fetched.", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "List of resource types", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetString" + } + } + } + } + } + } + }, + "/authz/api/roleassignments/delete/batch": { + "post": { + "tags": [ + "Role Assignments" + ], + "summary": "Bulk Delete Role Assignment", + "description": "Bulk delete role assignments by identifiers", + "operationId": "bulkDeleteRoleAssignment", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of role assigment identifiers to be deleted", + "content": { + "application/json": { + "schema": { + "maxItems": 100, + "minItems": 0, + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + }, + "application/yaml": { + "schema": { + "maxItems": 100, + "minItems": 0, + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Returns successfully/failed deleted roleassignment.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentDeleteResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentDeleteResponseDTO" + } + } + } + } + } + } + }, + "/authz/api/roleassignments/multi": { + "post": { + "tags": [ + "Role Assignments" + ], + "summary": "Create Role Assignments", + "description": "Create multiple role assignments in a scope. Returns all successfully created role assignments. Ignores failures and duplicates.", + "operationId": "postRoleAssignments", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of role assignments to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentCreateRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentCreateRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Successfully created role assignments", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListRoleAssignmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListRoleAssignmentResponse" + } + } + } + } + } + } + }, + "/authz/api/roleassignments": { + "get": { + "tags": [ + "Role Assignments" + ], + "summary": "List Role Assignments", + "description": "List role assignments in the given scope", + "operationId": "getRoleAssignmentList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Paginated list of role assignments in the given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Role Assignments" + ], + "summary": "Create Role Assignment", + "description": "Creates role assignment within the specified scope.", + "operationId": "postRoleAssignment", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "These are details for the role assignment to create.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzRoleAssignment" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzRoleAssignment" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "These are details of the created role assignment.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentResponse" + } + } + } + } + } + } + }, + "/authz/api/roleassignments/{identifier}": { + "get": { + "tags": [ + "Role Assignments" + ], + "summary": "Get Role Assignment", + "description": "Get an existing role assignment by identifier", + "operationId": "getRoleAssignment", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier for role assignment", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Get an existing role assignment by identifier in the given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Role Assignments" + ], + "summary": "Delete Role Assignment", + "description": "Delete an existing role assignment by identifier", + "operationId": "deleteRoleAssignment", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier for role assignment", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Deleted role assignment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentResponse" + } + } + } + } + } + } + }, + "/authz/api/roleassignments/filter": { + "post": { + "tags": [ + "Role Assignments" + ], + "summary": "List Role Assignments by filter", + "description": "List role assignments in the scope according to the given filter", + "operationId": "getFilteredRoleAssignmentList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Filter role assignments based on multiple parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentFilter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Paginated list of role assignments in the scope according to the given filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse" + } + } + } + } + } + } + }, + "/authz/api/roleassignments/aggregate": { + "post": { + "tags": [ + "Role Assignments" + ], + "summary": "List Aggregated Role Assignments by filter", + "description": "List role assignments in the scope according to the given filter with added metadata", + "operationId": "getRoleAssignmentAggregateList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Filter role assignments based on multiple parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentFilter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Paginated list of role assignments in the scope according to the given filter with added metadata.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentAggregateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentAggregateResponse" + } + } + } + } + } + } + }, + "/authz/api/roleassignments/v2/filter": { + "post": { + "tags": [ + "Role Assignments" + ], + "summary": "List Role Assignments by scope filter", + "description": "List role assignments in the scope according to the given filter", + "operationId": "getFilteredRoleAssignmentByScopeList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentFilterV2" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentFilterV2" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Paginated list of role assignments in the scope according to the given filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleAssignmentAggregate" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleAssignmentAggregate" + } + } + } + } + } + } + }, + "/authz/api/roleassignments/validate": { + "post": { + "tags": [ + "Role Assignments" + ], + "summary": "Validate Role Assignment", + "description": "Check whether a proposed role assignment is valid.", + "operationId": "validateRoleAssignment", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the details of the role assignment for validation.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentValidationRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentValidationRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "This is the result of the role assignment validation request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentValidationResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleAssignmentValidationResponse" + } + } + } + } + } + } + }, + "/authz/api/roles": { + "get": { + "tags": [ + "Roles" + ], + "summary": "List Roles", + "description": "List roles in the given scope", + "operationId": "getRoleList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Search roles by name/identifier", + "schema": { + "type": "string" + } + }, + { + "name": "harnessManaged", + "in": "query", + "description": "Filter role by being harness managed", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Paginated list of roles in the given scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleWithPrincipalCountResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseRoleWithPrincipalCountResponse" + } + } + } + } + } + }, + "post": { + "tags": [ + "Roles" + ], + "summary": "Create Role", + "description": "Create a Custom Role in a scope", + "operationId": "postRole", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Role entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Role" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Role" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Created Role", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + } + } + } + } + } + }, + "/authz/api/roles/{identifier}": { + "get": { + "tags": [ + "Roles" + ], + "summary": "Get Role", + "description": "Get a Role by identifier", + "operationId": "getRole", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier of the Role", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Queried Role", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Roles" + ], + "summary": "Update Role", + "description": "Update a Custom Role by identifier", + "operationId": "putRole", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier of the Role", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Updated Role entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Role" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Role" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Updated Role", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Roles" + ], + "summary": "Delete Role", + "description": "Delete a Custom Role in a scope", + "operationId": "deleteRole", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier of the Role", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "403": { + "description": "Unauthorized", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AccessDeniedError" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthzError" + } + } + } + }, + "default": { + "description": "Deleted Role", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORoleResponse" + } + } + } + } + } + } + }, + "/resourcegroup/api/resourcetype": { + "get": { + "tags": [ + "Harness Resource Type" + ], + "summary": "Gets all resource types available at this scope", + "operationId": "getResourceTypes", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "Returns all resource types available at this scope", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceType" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceType" + } + } + } + } + } + } + }, + "/resourcegroup/api/zendesk": { + "post": { + "tags": [ + "Zendesk" + ], + "summary": "create zendesk ticket for given user", + "operationId": "createZendeskTicket", + "parameters": [ + { + "name": "ticketType", + "in": "query", + "description": "type of the ticket ", + "required": true, + "schema": { + "type": "string", + "enum": [ + "QUESTION", + "PROBLEM", + "FEATURE_REQUEST", + "OTHER" + ] + } + }, + { + "name": "priority", + "in": "query", + "description": "priority of the ticket", + "required": true, + "schema": { + "type": "string", + "enum": [ + "LOW", + "NORMAL", + "HIGH", + "URGENT" + ] + } + }, + { + "name": "subject", + "in": "query", + "description": "subject of the ticket", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "regression", + "in": "query", + "description": "regression of the ticket", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "url": { + "type": "string" + }, + "region": { + "type": "string", + "enum": [ + "NO_PREFERENCE", + "AMERICAS_EASTERN", + "AMERICAS_PACIFIC", + "ASIA_PACIFIC", + "INDIA_STANDARD_TIME", + "EUROPE" + ] + }, + "userBrowser": { + "type": "string" + }, + "userOS": { + "type": "string" + }, + "website": { + "type": "string" + }, + "userName": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "module": { + "type": "string" + }, + "browserResolution": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FormDataContentDisposition" + } + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "create zendesk ticket for given user", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOZendeskResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOZendeskResponseDTO" + } + } + } + } + } + } + }, + "/resourcegroup/api/zendesk/token": { + "get": { + "tags": [ + "Zendesk" + ], + "summary": "get short live token for Coveo", + "operationId": "getCoveoToken", + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "get short live token for Coveo", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCoveoResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCoveoResponseDTO" + } + } + } + } + } + } + }, + "/resourcegroup/api/v2/resourcegroup": { + "get": { + "tags": [ + "Harness Resource Group" + ], + "summary": "List Resource Groups", + "description": "Get list of resource groups", + "operationId": "getResourceGroupListV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Details of all the resource groups having this string in their name or identifier will be returned.", + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "This contains a list of Resource Groups", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseResourceGroupV2Response" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseResourceGroupV2Response" + } + } + } + } + } + }, + "post": { + "tags": [ + "Harness Resource Group" + ], + "summary": "Create Resource Group", + "description": "Create a resource group", + "operationId": "createResourceGroupV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains the details required to create a Resource Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupV2Request" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupV2Request" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "Successfully created a Resource Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceGroupV2Response" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceGroupV2Response" + } + } + } + } + } + } + }, + "/resourcegroup/api/v2/resourcegroup/{identifier}": { + "get": { + "tags": [ + "Harness Resource Group" + ], + "summary": "Get Resource Group", + "description": "Get a resource group by identifier", + "operationId": "getResourceGroupV2", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "This returns a Resource Group specific to the Identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceGroupV2Response" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceGroupV2Response" + } + } + } + } + } + }, + "put": { + "tags": [ + "Harness Resource Group" + ], + "summary": "Update Resource Group", + "description": "Update a resource group", + "operationId": "updateResourceGroupV2", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains the details required to create a Resource Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupV2Request" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupV2Request" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "Successfully updated a Resource Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceGroupV2Response" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOResourceGroupV2Response" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Harness Resource Group" + ], + "summary": "Delete Resource Group", + "description": "Delete a resource group", + "operationId": "deleteResourceGroupV2", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "Successfully deleted a Resource Group", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/resourcegroup/api/v2/resourcegroup/filter": { + "post": { + "tags": [ + "Harness Resource Group" + ], + "summary": "List Resource Groups by filter", + "description": "This fetches a filtered list of Resource Groups", + "operationId": "getFilterResourceGroupListV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Filter Resource Groups based on multiple parameters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupFilter" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupFilter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourcegroupError" + } + } + } + }, + "default": { + "description": "This fetches the list of Resource Groups filtered by multiple fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseResourceGroupV2Response" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseResourceGroupV2Response" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/summary": { + "post": { + "tags": [ + "Cloud Cost Anomalies" + ], + "summary": "List Anomalies", + "description": "Fetch the result of anomaly query", + "operationId": "getAnomaliesSummary", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Anomaly Filter Properties", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyFilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Anomaly Query result", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalySummary" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/filter-values": { + "post": { + "tags": [ + "Cloud Cost Anomalies" + ], + "summary": "Returns the list of distinct values for all the specified Anomaly fields.", + "description": "Returns the list of distinct values for all the specified Anomaly fields.", + "operationId": "anomalyFilterValues", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "List of Anomaly columns whose unique values will be fetched", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of distinct values for all the specified Anomaly fields.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListFilterStats" + } + } + } + } + } + } + }, + "/ccm/api/anomaly": { + "post": { + "tags": [ + "Cloud Cost Anomalies" + ], + "summary": "List Anomalies", + "description": "Fetch the list of anomalies reported according to the filters applied", + "operationId": "listAnomalies", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Perspective & Anomaly Filter Properties", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyRequestDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "List of Anomalies", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyData" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/listIgnoredAnomalies": { + "post": { + "tags": [ + "Cloud Cost Anomalies" + ], + "summary": "List ignore list anomalies", + "description": "Fetch the list of anomalies present in the ignore list according to the filters applied", + "operationId": "listIgnoredAnomalies", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Anomaly Filter Properties", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyFilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "List of anomalies present in ignore list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyData" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/perspective/{perspectiveId}": { + "post": { + "tags": [ + "Cloud Cost Anomalies" + ], + "summary": "List Anomalies for Perspective", + "description": "Fetch anomalies for perspective", + "operationId": "listPerspectiveAnomalies", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "path", + "description": "Unique identifier for perspective", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Perspective Query", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PerspectiveQueryDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "List of Anomalies for Perspective", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListPerspectiveAnomalyData" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/feedback": { + "put": { + "tags": [ + "Cloud Cost Anomalies" + ], + "summary": "Report Anomaly feedback", + "description": "Mark an anomaly as true/false anomaly", + "operationId": "reportAnomalyFeedback", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "description": "Unique identifier for perspective", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Feedback", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyFeedback" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Report Anomaly Feedback", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/bi-dashboards": { + "get": { + "tags": [ + "Cloud Cost BI Dashboards" + ], + "summary": "List all the BI Dashboards for CCM", + "description": "List all the Cloud Cost BI Dashboards.", + "operationId": "listBIDashboards", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of all BI Dashboards", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListBIDashboardSummary" + } + } + } + } + } + } + }, + "/ccm/api/budgetGroups/{id}": { + "get": { + "tags": [ + "Cloud Cost Budget Groups" + ], + "summary": "Fetch Budget group details", + "description": "Fetch details of a Cloud Cost Budget group for the given Budget group ID.", + "operationId": "getBudgetGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get a Budget group by it's identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBudgetGroup" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Budget Groups" + ], + "summary": "Update an existing budget group", + "description": "Update an existing Cloud Cost Budget group for the given Budget group ID.", + "operationId": "updateBudgetGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget group", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "The Budget object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BudgetGroup" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a generic string message when the operation is successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Cloud Cost Budget Groups" + ], + "summary": "Delete a budget group", + "description": "Delete a Cloud Cost Budget group for the given Budget group ID.", + "operationId": "deleteBudgetGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a boolean whether the operation was successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/budgetGroups/aggregatedAmount": { + "post": { + "tags": [ + "Cloud Cost Budget Groups" + ], + "summary": "Get aggregated amount for given budget groups/budgets", + "description": "Returns list of value dataPoints specifying aggregated amount", + "operationId": "getLastPeriodCost", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "areChildEntitiesBudgets", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "List of child budgets/budget groups", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns list of value dataPoints specifying aggregated amount", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListValueDataPoint" + } + } + } + } + } + } + }, + "/ccm/api/budgetGroups/summary": { + "get": { + "tags": [ + "Cloud Cost Budget Groups" + ], + "summary": "Get list of budget and budget group summaries", + "description": "Returns list of budgetSummary", + "operationId": "getBudgetAndBudgetGroupsList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "budgetGroupId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "showAllEntities", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + }, + { + "name": "budgetGroupSortType", + "in": "query", + "description": "Budget Group List Sort Type", + "schema": { + "type": "string", + "enum": [ + "BUDGET_GROUP_AMOUNT", + "BUDGET_GROUP_NAME", + "BUDGET_GROUP_ACTUAL_COST", + "BUDGET_GROUP_FORECASTED_COST" + ] + } + }, + { + "name": "sortOrder", + "in": "query", + "description": "Budget Group List Sort Order", + "schema": { + "type": "string", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns list of value dataPoints specifying cost", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListBudgetSummary" + } + } + } + } + } + } + }, + "/ccm/api/budgetGroups": { + "get": { + "tags": [ + "Cloud Cost Budget Groups" + ], + "summary": "List all the Budget groups", + "description": "List all the Cloud Cost Budget Groups for an account.", + "operationId": "listBudgetGroups", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "budgetGroupSortType", + "in": "query", + "description": "Budget Group List Sort Type", + "schema": { + "type": "string", + "enum": [ + "BUDGET_GROUP_AMOUNT", + "BUDGET_GROUP_NAME", + "BUDGET_GROUP_ACTUAL_COST", + "BUDGET_GROUP_FORECASTED_COST" + ] + } + }, + { + "name": "sortOrder", + "in": "query", + "description": "Budget Group List Sort Order", + "schema": { + "type": "string", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of all Budget groups", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListBudgetGroup" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Budget Groups" + ], + "summary": "Create a Budget Group", + "description": "Create a Budget group to set and receive alerts when your costs exceed (or are forecasted to exceed) your budget group amount.", + "operationId": "createBudgetGroup", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Budget Group definition", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BudgetGroup" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the ID string of the new Budget group created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ccm/api/budgets/{id}": { + "get": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "Fetch Budget details", + "description": "Fetch details of a Cloud Cost Budget for the given Budget ID.", + "operationId": "getBudget", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get a Budget by it's identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBudget" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "Update an existing budget", + "description": "Update an existing Cloud Cost Budget for the given Budget ID.", + "operationId": "updateBudget", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "The Budget object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Budget" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a generic string message when the operation is successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "Clone a budget", + "description": "Clone a Cloud Cost Budget using the given Budget ID.", + "operationId": "cloneBudget", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloneName", + "in": "query", + "description": "Name of the new budget", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the identifier string of the new Budget created using clone operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "Delete a budget", + "description": "Delete a Cloud Cost Budget for the given Budget ID.", + "operationId": "deleteBudget", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a text message whether the operation was successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ccm/api/budgets/{id}/costDetails": { + "get": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "Fetch the cost details of a Budget", + "description": "Fetch the cost details of a Cloud Cost Budget for the given Budget ID.", + "operationId": "getCostDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the Budget", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "breakdown", + "in": "query", + "description": "MONTHLY/YEARLY breakdown. The default value is YEARLY", + "schema": { + "type": "string", + "description": "Whether the Yearly budget breakdown is yearly or monthly", + "enum": [ + "YEARLY", + "MONTHLY" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the cost data of a Budget", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBudgetData" + } + } + } + } + } + } + }, + "/ccm/api/budgets/perspectiveBudgets": { + "get": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "List all the Budgets associated with a Perspective", + "description": "List all the Cloud Cost Budgets associated for the given Perspective ID.", + "operationId": "listBudgetsForPerspective", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "Unique identifier for the Perspective", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of Budgets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListBudget" + } + } + } + } + } + } + }, + "/ccm/api/budgets": { + "get": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "List all the Budgets", + "description": "List all the Cloud Cost Budgets.", + "operationId": "listBudgets", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "budgetSortType", + "in": "query", + "description": "Budget List Sort Type", + "schema": { + "type": "string", + "enum": [ + "BUDGET_AMOUNT", + "NAME", + "ACTUAL_COST", + "FORECASTED_COST" + ] + } + }, + { + "name": "sortOrder", + "in": "query", + "description": "Budget List Sort Order", + "schema": { + "type": "string", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of all Budgets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListBudget" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Budgets" + ], + "summary": "Create a Budget", + "description": "Create a Budget to set and receive alerts when your costs exceed (or are forecasted to exceed) your budget amount.", + "operationId": "createBudget", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Budget definition", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Budget" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the ID string of the new Budget created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ccm/api/business-mapping/{id}": { + "get": { + "tags": [ + "Cloud Cost Cost Categories" + ], + "summary": "Fetch details of a Cost category", + "description": "Fetch details of a Cost category for the given Cost category ID.", + "operationId": "getBusinessMapping", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a Cost category object with all the cost and shared buckets, returns null if no Cost category exists for that particular identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBusinessMapping" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Cloud Cost Cost Categories" + ], + "summary": "Delete a Cost category", + "description": "Delete a Cost category for the given Cost category ID.", + "operationId": "deleteBusinessMapping", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A string text message whether the delete was successful or not. If the cost category is used in the perspective, the deletion will fail and it will send you the IDs of all the linked perspectives", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseCostCategoryDeleteDTO" + } + } + } + } + } + } + }, + "/ccm/api/business-mapping/filter-panel": { + "get": { + "tags": [ + "Cloud Cost Cost Categories" + ], + "summary": "Get (cost-categories)/(cost buckets) for recommendation filter panel", + "description": "Get (cost-categories)/(cost buckets) for recommendation filter panel", + "operationId": "getBusinessMappingForFilterPanel", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "costCategory", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "search", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of cost-category/cost-buckets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ccm/api/business-mapping": { + "get": { + "tags": [ + "Cloud Cost Cost Categories" + ], + "summary": "Return details of all the Cost categories", + "description": "Return details of all the Cost categories for the given account ID.", + "operationId": "getBusinessMappingList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "searchKey", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "sortType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "NAME", + "LAST_EDIT" + ] + } + }, + { + "name": "sortOrder", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + }, + { + "name": "limit", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "offset", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a List of Cost Categories", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBusinessMappingListDTO" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Cost Categories" + ], + "summary": "Update a Cost category", + "description": "Update a Cost category. It accepts a BusinessMapping object and upserts it using the uuid mentioned in the definition.", + "operationId": "updateBusinessMapping", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BusinessMapping" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Successfully updated the Business Mapping", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseString" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Cost Categories" + ], + "summary": "Create Cost category", + "description": "Create Cost category that allows you to categorize based on business requirements and get a contextual view of your expenses", + "operationId": "createBusinessMapping", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BusinessMapping" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a created Cost category object with all the cost and shared buckets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBusinessMapping" + } + } + } + } + } + } + }, + "/ccm/api/ccmK8sMeta": { + "post": { + "tags": [ + "Cloud Cost K8S Connectors Metadata" + ], + "summary": "Get CCM K8S Metadata", + "description": "Get CCM K8S Metadata ", + "operationId": "ccmK8sMeta", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing Cost Access K8s connector identifiers", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmK8sMetaDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns list of connector identifiers with their health metadata", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCcmK8sMetaInfoResponseDTO" + } + } + } + } + } + } + }, + "/ccm/api/notificationSetting/v2": { + "get": { + "tags": [ + "Cloud Cost Notification Settings v2" + ], + "summary": "List notification settings", + "description": "List notification settings for the given account id.", + "operationId": "listNotificationSettingsV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of notification setting object for given account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListNotificationSetting" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Notification Settings v2" + ], + "summary": "Update an existing notification setting", + "description": "Update an existing notification setting for the given perspective id.", + "operationId": "updateNotificationSettingV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "description": "Unique identifier for the notification setting", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Notification setting definition", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotificationSetting" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the updated notification setting object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONotificationSetting" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Notification Settings v2" + ], + "summary": "Create a notification setting", + "description": "Create a notification setting for a perspective to receive cloud cost anomaly alerts.", + "operationId": "createNotificationSettingV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Notification Setting definition", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotificationSetting" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the Notification Setting object created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Cloud Cost Notification Settings v2" + ], + "summary": "Delete notification settings", + "description": "Delete notification settings for the given perspective id.", + "operationId": "deleteNotificationSettingsV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "description": "Unique identifier for the Perspective", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns boolean indicating whether deletion of notification settings for a perspective was successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/overview": { + "get": { + "tags": [ + "Cloud Cost Overview" + ], + "summary": "Fetch high level overview details about CCM feature.", + "description": "Fetch high level overview details about CCM feature.", + "operationId": "getCCMOverview", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "Start time of the period", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "description": "End time of the period", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "groupBy", + "in": "query", + "description": "Group by period", + "required": true, + "schema": { + "type": "string", + "enum": [ + "HOUR", + "DAY", + "MONTH", + "WEEK", + "QUARTER", + "YEAR" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a CEView object containing CCM Overview details(Total cost, cost breakdown by day, and total number of recommendations for a give time range)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCCMOverview" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/comment": { + "get": { + "tags": [ + "Anomaly Comments" + ], + "summary": "List anomaly comments", + "description": "List comments for the given anomaly", + "operationId": "listAnomalyComments", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "default": { + "description": "List anomaly comments", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyComment" + } + } + } + } + } + }, + "post": { + "tags": [ + "Anomaly Comments" + ], + "summary": "Save anomaly comment", + "description": "Save comment for the given anomaly", + "operationId": "saveAnomalyComment", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Comment details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyComment" + } + } + }, + "required": true + }, + "responses": { + "default": { + "description": "Save anomaly comment", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/drill-down/cost/time-series": { + "get": { + "tags": [ + "Cloud cost anomaly details" + ], + "summary": "Get anomaly cost time-series data", + "description": "Get actual cost time-series data for given anomaly.", + "operationId": "getAnomalyCostTimeSeriesData", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly cost time-series data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyCostTimeSeries" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/drill-down": { + "get": { + "tags": [ + "Cloud cost anomaly details" + ], + "summary": "Get anomaly details", + "description": "Get details about the given cloud cost anomaly", + "operationId": "getAnomalyDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAnomalyData" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/drill-down/forecast/cost/time-series": { + "get": { + "tags": [ + "Cloud cost anomaly details" + ], + "summary": "Get anomaly forecast cost time-series data", + "description": "Get forecasted cost time-series data for a given anomaly.", + "operationId": "getAnomalyForecastCostTimeSeriesData", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly forecast cost time-series data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyForecastCostTimeSeries" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/drill-down/resource/cost/time-series": { + "get": { + "tags": [ + "Cloud cost anomaly details" + ], + "summary": "Get anomaly resource cost time-series data", + "description": "Get actual cost time-series data for given resource.", + "operationId": "getAnomalyResourceCostTimeSeriesData", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "resource", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly resource cost time-series data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyResourceCostTimeSeries" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/drill-down/list": { + "get": { + "tags": [ + "Cloud cost anomaly details" + ], + "summary": "Get anomaly resource list", + "description": "Get details about the top contributing resources for the given cloud cost anomaly", + "operationId": "getAnomalyResourceList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly resource list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyResourceDetails" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/list": { + "post": { + "tags": [ + "Cloud cost anomalies v2" + ], + "summary": "Get anomalies list", + "description": "Get anomalies list", + "operationId": "getAnomaliesList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Anomaly request body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyRequestDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomalies list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListAnomalyData" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/metrics": { + "post": { + "tags": [ + "Cloud cost anomalies v2" + ], + "summary": "Get anomaly metrics", + "description": "Get metrics for different types of anomalies", + "operationId": "getAnomalyMetrics", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Anomaly request body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyRequestDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly metrics", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAnomalyOverview" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/summary": { + "post": { + "tags": [ + "Cloud cost anomalies v2" + ], + "summary": "Get anomaly metrics summary", + "description": "Get summary of anomaly metrics", + "operationId": "getAnomalyMetricsSummary", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Anomaly request body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyRequestDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly metrics", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAnomalyMetrics" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/metrics/time-series": { + "post": { + "tags": [ + "Cloud cost anomalies v2" + ], + "summary": "Get anomaly metrics time-series", + "description": "Get metrics for different types of anomalies per day", + "operationId": "getAnomalyMetricsTimeSeries", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Anomaly request body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyRequestDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get anomaly metrics time-series", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTreeMapLongAnomalyOverview" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/mean-resolution-time": { + "post": { + "tags": [ + "Cloud cost anomalies v2" + ], + "summary": "Get mean resolution time", + "description": "Get mean resolution time", + "operationId": "getMeanResolutionTime", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Anomaly request body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnomalyRequestDTO" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get mean resolution time", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTODouble" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/update/feedback": { + "put": { + "tags": [ + "Cloud cost anomalies v2" + ], + "summary": "Update feedback for given anomaly", + "description": "Update feedback for given anomaly", + "operationId": "updateAnomalyFeedback", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "feedback", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Update feedback for given anomaly", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/anomaly/v2/update/status": { + "put": { + "tags": [ + "Cloud cost anomalies v2" + ], + "summary": "Update status for given anomaly", + "description": "Update status for given anomaly", + "operationId": "updateAnomalyStatus", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "anomalyId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "status", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Update status for given anomaly", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/costdetails/overview": { + "post": { + "tags": [ + "Cloud Cost Details" + ], + "summary": "Returns an overview of the cost", + "description": "Returns total cost, cost trend, and the time period based on the specified query parameters.", + "operationId": "costdetailoverview", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "Perspective identifier of the cost details", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "Start time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today - 7days", + "schema": { + "type": "string" + } + }, + { + "name": "endTime", + "in": "query", + "description": "End time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today", + "schema": { + "type": "string" + } + }, + { + "name": "isClusterHourlyData", + "in": "query", + "description": "To fetch cluster hourly data in case of cluster perspective. Defaults to false", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Cost details query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CostDetailsQueryParams" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns total cost, cost trend, and the time period based on the specified query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCostOverview" + } + } + } + } + } + } + }, + "/ccm/api/costdetails/clusterData": { + "post": { + "tags": [ + "Cloud Cost Details" + ], + "summary": "Returns cluster data in a tabular format", + "description": "Returns cluster data based on the specified query parameters.", + "operationId": "clusterData", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "Start time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today - 7days", + "schema": { + "type": "string" + } + }, + { + "name": "endTime", + "in": "query", + "description": "End time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today", + "schema": { + "type": "string" + } + }, + { + "name": "isClusterHourlyData", + "in": "query", + "description": "To fetch cluster hourly data in case of cluster perspective. Defaults to false", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Cost details query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ClusterCostDetailsQueryParams" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns cluster data in a tabular format based on the specified query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListClusterCostDetails" + } + } + } + } + } + } + }, + "/ccm/api/costdetails/tabularformat": { + "post": { + "tags": [ + "Cloud Cost Details" + ], + "summary": "Returns cost details in a tabular format", + "description": "Returns cost details in a tabular format based on the specified query parameters.", + "operationId": "costdetailtabular", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "Perspective identifier of the cost details", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "Start time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today - 7days", + "schema": { + "type": "string" + } + }, + { + "name": "endTime", + "in": "query", + "description": "End time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today", + "schema": { + "type": "string" + } + }, + { + "name": "isClusterHourlyData", + "in": "query", + "description": "To fetch cluster hourly data in case of cluster perspective. Defaults to false", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Cost details query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CostDetailsQueryParams" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns cost details in a tabular format based on the specified query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPerspectiveEntityStatsData" + } + } + } + } + } + } + }, + "/ccm/api/costdetails/timeseriesformat": { + "post": { + "tags": [ + "Cloud Cost Details" + ], + "summary": "Returns cost details in a time series format", + "description": "Returns cost details in a time series format based on the specified query parameters.", + "operationId": "costdetailttimeseries", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "Perspective identifier of the cost details", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "Start time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today - 7days", + "schema": { + "type": "string" + } + }, + { + "name": "endTime", + "in": "query", + "description": "End time of the cost details. Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'. Defaults to Today", + "schema": { + "type": "string" + } + }, + { + "name": "isClusterHourlyData", + "in": "query", + "description": "To fetch cluster hourly data in case of cluster perspective. Defaults to false", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "Cost details query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CostDetailsQueryParams" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns cost details in a time series format based on the specified query parameters.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPerspectiveTimeSeriesData" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/filesinfo": { + "post": { + "tags": [ + "External Data Provider" + ], + "summary": "Add a new external data file metadata", + "description": "Add a new external data file metadata", + "operationId": "AddNewExternalDataFileMetadata", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing external data object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateExternalDataFilesDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns newly added external data file metadata information", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOExternalDataFiles" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/provider": { + "post": { + "tags": [ + "External Data Provider" + ], + "summary": "Create External Data Provider", + "description": "Create External Data Provider", + "operationId": "createExternalDataProvider", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Create External Data Provider Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateExternalDataProviderDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns created External Data Provider", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOExternalDataProvider" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/dataingestion": { + "post": { + "tags": [ + "External Data Provider" + ], + "summary": "Trigger data ingestion", + "description": "Trigger data ingestion", + "operationId": "triggerDataIngestion", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing list of invoice months for a provider", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExternalDataIngestionRequest" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Data ingestion submission response ", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOExternalDataFiles" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/provider/{providerId}": { + "delete": { + "tags": [ + "External Data Provider" + ], + "summary": "Delete a provider", + "description": "Delete a external data provider given a idD.", + "operationId": "CcmdeleteProvider", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "providerId", + "in": "path", + "description": "Unique identifier for the rule", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A boolean whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/filesinfo/{fileId}": { + "put": { + "tags": [ + "External Data Provider" + ], + "summary": "Update file metadata", + "description": "Update file metadata", + "operationId": "updateFileMetaData", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "fileId", + "in": "path", + "description": "Unique identifier for the rule", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing fileMetaData object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateExternalDataFilesDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Updated Rule.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOExternalDataFiles" + } + } + } + } + } + }, + "delete": { + "tags": [ + "External Data Provider" + ], + "summary": "Delete data file and related metadata", + "description": "Delete data file and related metadata given an id.", + "operationId": "deleteDatafileAndMetadata", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "fileId", + "in": "path", + "description": "Unique identifier for the data file", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A boolean whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/signedurl": { + "get": { + "tags": [ + "External Data Provider" + ], + "summary": "Get a signed url", + "description": "Get a signed url to upload external cost data.", + "operationId": "getSignedUrl", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "providerId", + "in": "query", + "description": "Unique identifier for the provider", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "invoicePeriod", + "in": "query", + "description": "Invoice period in format YYYYMMDD-YYYYMMDD", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "objectName", + "in": "query", + "description": "Name of the object to upload", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Successful retrieval of signed URL", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTO" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/provider/list": { + "post": { + "tags": [ + "External Data Provider" + ], + "summary": "get all external data providers", + "description": "get providers ", + "operationId": "get providers", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of external data providers", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListExternalDataProvider" + } + } + } + } + } + } + }, + "/ccm/api/externaldata/provider/filesinfo": { + "post": { + "tags": [ + "External Data Provider" + ], + "summary": "get all files info for list of providers", + "description": "listProvidersFileInfo", + "operationId": "listProvidersFileInfo", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing external data object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExternalDataProviderList" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns all files info for list of providers", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOMapStringListExternalDataFiles" + } + } + } + } + } + } + }, + "/ccm/api/governance/promptResources": { + "get": { + "tags": [ + "AiEngine" + ], + "summary": "Get supported prompt resources", + "description": "Get supported prompt resources for a given cloud provider", + "operationId": "getPromptResources", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get supported prompt resources for a given cloud provider", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetString" + } + } + } + } + } + } + }, + "/ccm/api/governance/promptRules": { + "get": { + "tags": [ + "AiEngine" + ], + "summary": "Get sample prompt governance rules", + "description": "Get sample prompt rules for given cloud provider and resource type", + "operationId": "getPromptRules", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + }, + { + "name": "resourceType", + "in": "query", + "description": "Resource Type", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Get sample prompt rules for given cloud provider and resource type", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListGovernancePromptRule" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcementRecommendation/accept": { + "put": { + "tags": [ + "Governance Enforcement Recommendation APIs" + ], + "summary": "Accept governance rule enforcement recommendations for given enforcement recommendation ids.", + "description": "Accept governance rule enforcement recommendations.", + "operationId": "acceptEnforcementRecommendations", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enforcementRecommendationIds", + "in": "query", + "description": "Enforcement Recommendation Ids", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "True/false if governance rule enforcement recommendations are successfully accepted.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcementRecommendation/dismiss": { + "put": { + "tags": [ + "Governance Enforcement Recommendation APIs" + ], + "summary": "Dismiss governance rule enforcement recommendations for given enforcement recommendation ids.", + "description": "Dismiss governance rule enforcement recommendations.", + "operationId": "dismissEnforcementRecommendations", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enforcementRecommendationIds", + "in": "query", + "description": "Enforcement Recommendation Ids", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "True/false if governance rule enforcement recommendations are successfully dismissed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcementRecommendation/details": { + "get": { + "tags": [ + "Governance Enforcement Recommendation APIs" + ], + "summary": "Get governance rule enforcement recommendation details for given enforcement recommendation id.", + "description": "Get governance rule enforcement recommendation details.", + "operationId": "enforcementRecommendationDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enforcementRecommendationId", + "in": "query", + "description": "Enforcement Recommendation Id", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns Enforcement details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnforcementDetails" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcementRecommendation/list": { + "get": { + "tags": [ + "Governance Enforcement Recommendation APIs" + ], + "summary": "List governance rule enforcement recommendations for given accountId.", + "description": "List governance rule enforcement recommendations.", + "operationId": "ruleEnforcementRecommendations", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchKey", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page number", + "schema": { + "type": "integer", + "format": "int32" + }, + "example": 0 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of items per page", + "schema": { + "type": "integer", + "format": "int32" + }, + "example": 20 + }, + { + "name": "sortType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "NAME" + ] + } + }, + { + "name": "sortOrder", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return list of governance enforcement recommendations.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleEnforcementRecommendationList" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcementRecommendation/update": { + "put": { + "tags": [ + "Governance Enforcement Recommendation APIs" + ], + "summary": "Update a governance rule enforcement recommendation.", + "description": "Update a governance rule enforcement recommendation.", + "operationId": "updateEnforcementRecommendation", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing rule enforcement recommendation object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RuleEnforcementRecommendation" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Updated governance rule enforcement recommendation.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleEnforcementRecommendation" + } + } + } + } + } + } + }, + "/ccm/api/governance/alert/clone": { + "post": { + "tags": [ + "Governance Alert" + ], + "summary": "Clone a governance alert rule with the given id", + "description": "Clone a governance alert rule with the given id", + "operationId": "CloneGovernanceAlertRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Newly created cloned governance alert rule", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGovernanceNotification" + } + } + } + } + } + } + }, + "/ccm/api/governance/alert": { + "put": { + "tags": [ + "Governance Alert" + ], + "summary": "Update a existing governance alert rule", + "description": "Update a existing governance alert rule", + "operationId": "UpdateGovernanceAlertRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing governance alert rule object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GovernanceNotification" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Updated governance alert rule", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGovernanceNotification" + } + } + } + } + } + }, + "post": { + "tags": [ + "Governance Alert" + ], + "summary": "Create a new governance alert rule", + "description": "Create a new governance alert rule", + "operationId": "CreateNewGovernanceAlertRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing governance alert rule object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GovernanceNotification" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns newly created governance alert rule", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGovernanceNotification" + } + } + } + } + } + } + }, + "/ccm/api/governance/alert/{id}": { + "delete": { + "tags": [ + "Governance Alert" + ], + "summary": "Delete a governance alert rule with the given id", + "description": "Delete a governance alert rule with the given id", + "operationId": "DeleteGovernanceAlertRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A boolean whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/governance/alert/list": { + "get": { + "tags": [ + "Governance Alert" + ], + "summary": "List all governance alert rule(s)", + "description": "List all governance alert rule(s)", + "operationId": "GovernanceAlertRules", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "List of all governance alert rule(s)", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListGovernanceNotification" + } + } + } + } + } + } + }, + "/ccm/api/governance/alert/resourceTypes": { + "get": { + "tags": [ + "Governance Alert" + ], + "summary": "List all governance supported resource types", + "description": "List all governance supported resource types", + "operationId": "GovernanceResourceTypes", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "List of all governance supported resource types", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetString" + } + } + } + } + } + } + }, + "/ccm/api/governance/alert/toggle": { + "put": { + "tags": [ + "Governance Alert" + ], + "summary": "Toggle a governance alert rule with the given id", + "description": "Toggle a governance alert rule with the given id", + "operationId": "ToggleGovernanceAlertRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enableGovernanceAlertRule", + "in": "query", + "description": "Enable Governance Alert Rule", + "required": true, + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Updated governance alert rule", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGovernanceNotification" + } + } + } + } + } + } + }, + "/ccm/api/governance/overview/dayWiseTotalEvaluations": { + "post": { + "tags": [ + "Governance Overview" + ], + "summary": "Return day wise total evaluations grouped by evaluation status.", + "operationId": "dayWiseTotalEvaluations", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + } + ], + "requestBody": { + "description": "Request body with time filters", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CCMTimeFilter" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return day wise total evaluations grouped by evaluation status.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOMapStringMapStringInteger" + } + } + } + } + } + } + }, + "/ccm/api/governance/overview/totalNewEnforcementRecommendations": { + "get": { + "tags": [ + "Governance Overview" + ], + "summary": "Return total number of new enforcement recommendations.", + "operationId": "totalNewEnforcementRecommendations", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return total number of new enforcement recommendations.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOLong" + } + } + } + } + } + } + }, + "/ccm/api/governance/overview/totalActiveEnforcements": { + "get": { + "tags": [ + "Governance Overview" + ], + "summary": "Return total number of active enforcements.", + "operationId": "totalActiveEnforcements", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return total number of active enforcements.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOLong" + } + } + } + } + } + } + }, + "/ccm/api/governance/overview/totalEvaluations": { + "get": { + "tags": [ + "Governance Overview" + ], + "summary": "Return total number of evaluations.", + "operationId": "totalEvaluations", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return total number of evaluations.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOLong" + } + } + } + } + } + } + }, + "/ccm/api/governance/overview/totalRealisedSavingsV2": { + "post": { + "tags": [ + "Governance Overview" + ], + "summary": "Return total realised Savings.", + "operationId": "totalRealisedSavingsV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + } + ], + "requestBody": { + "description": "Request body with time filters", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CCMTimeFilter" + } + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return total realised Savings.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTODouble" + } + } + } + } + } + } + }, + "/ccm/api/governance/overview/totalRealisedSavingsGrouped": { + "get": { + "tags": [ + "Governance Overview" + ], + "summary": "Return total realised Savings grouped by cloud provider/resource type.", + "operationId": "totalRealisedSavingsGrouped", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return total realised Savings grouped by cloud provider/resource type.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOMapStringDouble" + } + } + } + } + } + } + }, + "/ccm/api/governance/recommendationHealth": { + "get": { + "tags": [ + "Governance Recommendation APIs" + ], + "summary": "Return governance rule recommendation health summary.", + "operationId": "recommendationHealth", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return governance rule recommendation health summary.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleRecommendationSummary" + } + } + } + } + } + } + }, + "/ccm/api/governance/recommendation/{recommendationId}": { + "get": { + "tags": [ + "Governance Recommendation APIs" + ], + "summary": "Governance recommendation details", + "operationId": "getRuleRecommendation", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "recommendationId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns governance recommendation details.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleExecutionList" + } + } + } + } + } + } + }, + "/ccm/api/governance/recommendationHealth/list": { + "post": { + "tags": [ + "Governance Recommendation APIs" + ], + "summary": "Return list of governance rule recommendation health summary.", + "operationId": "listGovernanceRecommendationHealth", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Body to retrieve rule recommendation health", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RuleRecommendationHealthSummaryFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return list of governance rule recommendation health summary.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleRecommendationSummaryList" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcement": { + "put": { + "tags": [ + "RuleEnforcement" + ], + "summary": "Update a Rule enforcement", + "description": "Update a Rule enforcement", + "operationId": "updateEnforcement", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing rule enforcement object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleEnforcementDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Updated Rule enforcement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleEnforcement" + } + } + } + } + } + }, + "post": { + "tags": [ + "RuleEnforcement" + ], + "summary": "Add a new rule Enforcement ", + "operationId": "addRuleEnforcement", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing Rule Enforcement object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleEnforcementDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns newly created rule enforcement.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleEnforcement" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleEnforcement" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcement/{enforcementID}": { + "delete": { + "tags": [ + "RuleEnforcement" + ], + "summary": "Delete a rule enforcement", + "description": "Delete a Rule enforcement for the given a ID.", + "operationId": "deleteRuleEnforcement", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enforcementID", + "in": "path", + "description": "Unique identifier for the rule enforcement", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A boolean whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcement/count": { + "post": { + "tags": [ + "RuleEnforcement" + ], + "summary": "Fetch Rule Enforcements for given RuleIds/RuleSetIds", + "description": "Fetch Rule Enforcements for given RuleIds/RuleSetIds", + "operationId": "getRuleEnforcementCount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing enforcementCount object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnforcementCountDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of Rule Enforcements wrt given RuleIds/RuleSetIds", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnforcementCount" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcement/details": { + "get": { + "tags": [ + "RuleEnforcement" + ], + "summary": "Get Rule Enforcement details for given Enforcement Id", + "description": "Get Rule Enforcement details", + "operationId": "enforcementDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enforcementId", + "in": "query", + "description": "Enforcement Id", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns Enforcement details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEnforcementDetails" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcement/list": { + "get": { + "tags": [ + "RuleEnforcement" + ], + "summary": "Fetch Rule Enforcements for account", + "description": "Fetch Rule Enforcement ", + "operationId": "getRuleEnforcement", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "searchKey", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page number", + "schema": { + "type": "integer", + "format": "int32" + }, + "example": 0 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of items per page", + "schema": { + "type": "integer", + "format": "int32" + }, + "example": 20 + }, + { + "name": "sortType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "NAME", + "LAST_UPDATED_AT" + ] + } + }, + { + "name": "sortOrder", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of rules Enforcement", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleEnforcementList" + } + } + } + } + } + } + }, + "/ccm/api/governance/enforcement/toggle": { + "put": { + "tags": [ + "RuleEnforcement" + ], + "summary": "Enable/Disable a Rule Enforcement for given Enforcement Id", + "description": "Toggle a Rule Enforcement", + "operationId": "toggleEnforcement", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enforcementId", + "in": "query", + "description": "Enforcement Id", + "schema": { + "type": "string" + } + }, + { + "name": "enableEnforcement", + "in": "query", + "description": "Enable Enforcement", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "True/false if Rule Enforcement successfully toggled", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/governance/execution/list": { + "post": { + "tags": [ + "Rule Executions" + ], + "summary": "Fetch RuleExecutions for account", + "description": "Fetch RuleExecutions", + "operationId": "getRuleExecutions", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing CreateRuleExecutionFilterDTO object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleExecutionFilterDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of RuleExecution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleExecutionList" + } + } + } + } + } + } + }, + "/ccm/api/governance/execution/filter-value": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Rule Execution Filter Values", + "description": "Rule Execution Filter Values", + "operationId": "getRuleExecutionsFilterValues", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns filter values for Rule Execution.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilterValues" + } + } + } + } + } + } + }, + "/ccm/api/governance/execution/{ruleExecutionId}": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Get rule execution", + "operationId": "getRuleExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleExecutionId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return rule execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleExecution" + } + } + } + } + } + } + }, + "/ccm/api/governance/actionedResources/{ruleExecutionId}": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Return actioned resources for a rule execution", + "operationId": "getRuleExecutionActionedResources", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleExecutionId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return actioned resources for a rule execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSubRuleResponseDetails" + } + } + } + } + }, + "deprecated": true + } + }, + "/ccm/api/governance/execution/details/{ruleExecutionId}": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Resources/logs for a rule execution ", + "operationId": "getRuleExecutionDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleExecutionId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "fileType", + "in": "query", + "description": "Select filetype, by default RESOURCE file will be selected", + "schema": { + "type": "string", + "enum": [ + "RESOURCE", + "LOG", + "ACTIONED_RESOURCE", + "GRANULAR_RESOURCE" + ] + } + }, + { + "name": "resourceId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "subRuleName", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return resources/logs for a rule execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSubRuleResponseDetails" + } + } + } + } + } + } + }, + "/ccm/api/governance/granularStatus/{ruleExecutionId}": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Return resource for a rule execution", + "operationId": "getRuleExecutionGranularStatus", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleExecutionId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "resourceId", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "subRuleName", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return resource for a rule execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSubRuleResponseDetails" + } + } + } + } + }, + "deprecated": true + } + }, + "/ccm/api/governance/logs/{ruleExecutionId}": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Return logs for a rule execution", + "operationId": "getRuleExecutionLogs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleExecutionId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return logs for a rule execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSubRuleResponseDetails" + } + } + } + } + }, + "deprecated": true + } + }, + "/ccm/api/governance/status/{ruleExecutionId}": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Return resources for a rule execution", + "operationId": "getRuleExecutionStatus", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleExecutionId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return resources for a rule execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListSubRuleResponseDetails" + } + } + } + } + }, + "deprecated": true + } + }, + "/ccm/api/governance/execution/ruleLastExecution": { + "post": { + "tags": [ + "Rule Executions" + ], + "summary": "Find last execution given rules list", + "description": "Find last execution given rules list", + "operationId": "getRuleLastExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing list of rule ids", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of RuleExecutions.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListRuleExecution" + } + } + } + } + } + } + }, + "/ccm/api/governance/execution/refreshCost/{ruleExecutionId}": { + "get": { + "tags": [ + "Rule Executions" + ], + "summary": "Refresh cost for a rule execution", + "operationId": "refreshCostForRuleExecution", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleExecutionId", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Job enqueued to refresh cost for a rule execution", + "content": { + "application/json": {} + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + } + } + } + }, + "/ccm/api/governance/ruleClone": { + "post": { + "tags": [ + "Rule" + ], + "summary": "Clone a rule", + "description": "Clone a Rule with the given ID.", + "operationId": "CloneRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing Rule uuid", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CloneRuleDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Newly Created Cloned Rule", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORule" + } + } + } + } + } + } + }, + "/ccm/api/governance/rule": { + "put": { + "tags": [ + "Rule" + ], + "summary": "Update a Rule", + "description": "Update a Rule", + "operationId": "updateRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing rule object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Updated Rule.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORule" + } + } + } + } + } + }, + "post": { + "tags": [ + "Rule" + ], + "summary": "Add a rule", + "description": "Create a new governance rule.", + "operationId": "CreateNewRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing Rule object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns newly created rule", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORule" + } + } + } + } + } + } + }, + "/ccm/api/governance/rule/{ruleID}": { + "delete": { + "tags": [ + "Rule" + ], + "summary": "Delete a rule", + "description": "Delete a Rule with the given ID.", + "operationId": "deleteRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleID", + "in": "path", + "description": "Unique identifier for the rule", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A boolean whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/governance/enqueue": { + "post": { + "tags": [ + "Rule" + ], + "summary": "Enqueue jobs for evaluation.", + "description": "Enqueue jobs for evaluation.", + "operationId": "enqueueGovernanceJob", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body for queuing the governance job", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GovernanceJobEnqueueDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns evaluation id of jobs which are enqueued.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOGovernanceEnqueueResponseDTO" + } + } + } + } + } + } + }, + "/ccm/api/governance/enqueueAdhocV2": { + "post": { + "tags": [ + "Rule" + ], + "summary": "Simple Request to enqueue rule for execution", + "description": "Simple Request to enqueue rule for execution", + "operationId": "simpleEnqueueAdhocGovernanceRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body for queuing the governance rule for execution", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GovernanceAdhocEnqueueDTOV2" + } + } + }, + "required": true + }, + "responses": { + "202": { + "description": "Enqueued governance rule for evaluation and return list evaluation ids", + "content": { + "application/json": {} + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + } + } + } + }, + "/ccm/api/governance/rule/costCoRelationSupportedResources": { + "get": { + "tags": [ + "Rule" + ], + "summary": "List resources for which cost co-relation is supported.", + "description": "List resources for which cost co-relation is supported.", + "operationId": "costCoRelationSupportedResources", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return List of resources for which cost co-relation is supported.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSetString" + } + } + } + } + } + } + }, + "/ccm/api/governance/ruleSchema": { + "get": { + "tags": [ + "Rule" + ], + "summary": "Custodian Schema", + "description": "Get custodian schema for governance rule validation", + "operationId": "governanceRuleSchema", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Custodian Governance Rule Schema", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ccm/api/governance/rule/list": { + "post": { + "tags": [ + "Rule" + ], + "summary": "Fetch rules for account", + "description": "Fetch rules ", + "operationId": "getPolicies", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "RuleNamePattern", + "in": "query", + "description": "Search by Rule name pattern", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing rule object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of rules", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleList" + } + } + } + } + } + } + }, + "/ccm/api/governance/governanceTargetList": { + "get": { + "tags": [ + "Rule" + ], + "summary": "Governance Targets", + "description": "Get targets with governance enabled and valid permission", + "operationId": "governanceTargetList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "view", + "in": "query", + "description": "View governance target list", + "schema": { + "type": "boolean" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + }, + { + "name": "onlyTargetIds", + "in": "query", + "description": "Only Target ids", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "List of Governance Targets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOMapStringString" + } + } + } + } + } + } + }, + "/ccm/api/governance/regions": { + "get": { + "tags": [ + "Rule" + ], + "summary": "List of Regions for Aws/Azure", + "description": "List Aws/Azure Regions for filtering resources.", + "operationId": "regions", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloudProvider", + "in": "query", + "description": "Cloud Provider", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return List of Aws/Azure Regions", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ccm/api/governance/rule/toggleForRecommendation": { + "put": { + "tags": [ + "Rule" + ], + "summary": "Enable/Disable a custom Rule to be considered for recommendation", + "description": "Toggle a Rule for Recommendation", + "operationId": "toggleForRecommendation", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleId", + "in": "query", + "description": "Rule Id", + "schema": { + "type": "string" + } + }, + { + "name": "enableRuleForRecommendation", + "in": "query", + "description": "Enable rule for Recommendation", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "True/false if toggle is successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORule" + } + } + } + } + } + } + }, + "/ccm/api/governance/ruleValidate": { + "post": { + "tags": [ + "Rule" + ], + "summary": "Validate Governance Rule", + "description": "Validate governance rule for syntactical errors.", + "operationId": "validateGovernanceRule", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing Rule with set rulesYaml to validate", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "content": { + "application/json": {} + } + } + } + } + }, + "/ccm/api/governance/ruleSet": { + "put": { + "tags": [ + "Rule Sets" + ], + "summary": "Update a Rule set", + "description": "Update a Rule set", + "operationId": "updateRuleSet", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing Rule Set object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleSetDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "update a existing Rule Set", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleSet" + } + } + } + } + } + }, + "post": { + "tags": [ + "Rule Sets" + ], + "summary": "Add a rule Set ", + "operationId": "addRuleSet", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing rule Set object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleSetDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns newly created rule Set", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleSet" + } + } + } + } + } + } + }, + "/ccm/api/governance/ruleSet/{ruleSetId}": { + "delete": { + "tags": [ + "Rule Sets" + ], + "summary": "Delete a rule set", + "description": "Delete a Rule set for the given a ID.", + "operationId": "deleteRuleSet", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleSetId", + "in": "path", + "description": "Unique identifier for the rule", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A boolean whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/governance/ruleSet/list": { + "post": { + "tags": [ + "Rule Sets" + ], + "summary": "Fetch rule sets for account", + "description": "List all rule sets", + "operationId": "listRuleSets", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing rule set object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRuleSetFilterDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of rule sets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORuleSetList" + } + } + } + } + } + } + }, + "/ccm/api/perspectiveFolders/create": { + "post": { + "tags": [ + "Cloud Cost Perspectives Folders" + ], + "summary": "Create a Perspective folder", + "description": "Create a Perspective Folder.", + "operationId": "createPerspectiveFolder", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing Perspective's CEViewFolder object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreatePerspectiveFolderDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a created CEViewFolder object with all its details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCEViewFolder" + } + } + } + } + } + } + }, + "/ccm/api/perspectiveFolders/{folderId}": { + "delete": { + "tags": [ + "Cloud Cost Perspectives Folders" + ], + "summary": "Delete a folder", + "description": "Delete a Folder for the given Folder ID.", + "operationId": "deleteFolder", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "folderId", + "in": "path", + "description": "Unique identifier for the Perspective folder", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A boolean whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/perspectiveFolders": { + "get": { + "tags": [ + "Cloud Cost Perspectives Folders" + ], + "summary": "Fetch folders for an account", + "description": "Fetch folders given an accountId", + "operationId": "getFolders", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "folderNamePattern", + "in": "query", + "description": "Search by folder name pattern", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of CEViewFolders", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListCEViewFolder" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Perspectives Folders" + ], + "summary": "Update a folder", + "description": "Update a folder", + "operationId": "updateFolder", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing ceViewFolder object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CEViewFolder" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "CEViewFolder object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCEViewFolder" + } + } + } + } + } + } + }, + "/ccm/api/perspectiveFolders/{folderId}/perspectives": { + "get": { + "tags": [ + "Cloud Cost Perspectives Folders" + ], + "summary": "Return details of all the Perspectives", + "description": "Return details of all the Perspectives for the given account ID and folder", + "operationId": "getAllFolderPerspectives", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "folderId", + "in": "path", + "description": "Unique identifier for folder", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a List of Perspectives", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListPerspective" + } + } + } + } + } + } + }, + "/ccm/api/perspectiveFolders/movePerspectives": { + "post": { + "tags": [ + "Cloud Cost Perspectives Folders" + ], + "summary": "Move a Perspective", + "description": "Move a perspective from a folder to another.", + "operationId": "movePerspectives", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing perspectiveIds to be moved and newFolderId", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MovePerspectiveDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the new CEView object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListCEView" + } + } + } + } + } + } + }, + "/ccm/api/perspectiveReport/{accountIdentifier}": { + "get": { + "tags": [ + "Cloud Cost Perspective Reports" + ], + "summary": "Fetch details of a cost Report", + "description": "Fetch cost Report details for the given Report ID or a Perspective ID.", + "operationId": "getReportSetting", + "parameters": [ + { + "name": "perspectiveId", + "in": "query", + "description": "Unique identifier for the Perspective", + "schema": { + "type": "string" + } + }, + { + "name": "reportId", + "in": "query", + "description": "Unique identifier for the Report", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a list of Report Schedules", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListCEReportSchedule" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Perspective Reports" + ], + "summary": "Update a cost Perspective Report", + "description": "Update cost Perspective Reports.", + "operationId": "updateReportSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "CEReportSchedule object to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CEReportSchedule" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a list of Report Schedules", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListCEReportSchedule" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Perspective Reports" + ], + "summary": "Create a schedule for a Report", + "description": "Create a report schedule for the given Report ID or a Perspective ID.", + "operationId": "createReportSetting", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "CEReportSchedule object to be saved", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CEReportSchedule" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a list of Report Schedules", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListCEReportSchedule" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Cloud Cost Perspective Reports" + ], + "summary": "Delete cost Perspective report", + "description": "Delete cost Perspective Report for the given Report ID or a Perspective ID.", + "operationId": "deleteReportSetting", + "parameters": [ + { + "name": "reportId", + "in": "query", + "description": "Unique identifier for the Report", + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "Unique identifier for the Perspective", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a generic string message when the operation is successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ccm/api/perspective": { + "get": { + "tags": [ + "Cloud Cost Perspectives" + ], + "summary": "Fetch details of a Perspective", + "description": "Fetch details of a Perspective for the given Perspective ID.", + "operationId": "getPerspective", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "Unique identifier for the Perspective", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a CEView object with all the rules and filters, returns null if no Perspective exists for that particular identifier", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCEView" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Perspectives" + ], + "summary": "Update a Perspective", + "description": "Update a Perspective. It accepts a CEView object and upserts it using the uuid mentioned in the definition.", + "operationId": "updatePerspective", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "updateTotalCost", + "in": "query", + "schema": { + "type": "boolean", + "default": true + } + } + ], + "requestBody": { + "description": "Perspective's CEView object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CEView" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Upserted CEView object with all the rules and filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCEView" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Perspectives" + ], + "summary": "Create a Perspective", + "description": "Create a Perspective. You can set the clone parameter as true to clone a Perspective.", + "operationId": "createPerspective", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "clone", + "in": "query", + "description": "Set the clone parameter as true to clone a Perspective.", + "required": true, + "schema": { + "type": "boolean" + } + }, + { + "name": "updateTotalCost", + "in": "query", + "schema": { + "type": "boolean", + "default": true + } + } + ], + "requestBody": { + "description": "Request body containing Perspective's CEView object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CEView" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a created CEView object with all the rules and filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCEView" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Cloud Cost Perspectives" + ], + "summary": "Delete a Perspective", + "description": "Delete a Perspective for the given Perspective ID.", + "operationId": "deletePerspective", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "Unique identifier for the Perspective", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "A string text message whether the delete was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/ccm/api/perspective/getAllPerspectives": { + "get": { + "tags": [ + "Cloud Cost Perspectives" + ], + "summary": "Return details of all the Perspectives", + "description": "Return details of all the Perspectives for the given account ID.", + "operationId": "getAllPerspectives", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of perspectives to be shown", + "required": true, + "schema": { + "type": "integer", + "format": "int32", + "default": 20 + } + }, + { + "name": "pageNo", + "in": "query", + "description": "Number of records to be skipped", + "required": true, + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "searchKey", + "in": "query", + "description": "Characters in search bar", + "schema": { + "type": "string" + } + }, + { + "name": "sortType", + "in": "query", + "description": " sorting filters in UI", + "schema": { + "type": "string", + "default": "TIME", + "enum": [ + "TIME", + "COST", + "CLUSTER_COST", + "NAME" + ] + } + }, + { + "name": "sortOrder", + "in": "query", + "description": "sorting order", + "schema": { + "type": "string", + "default": "DESCENDING", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + }, + { + "name": "cloudFilters", + "in": "query", + "description": "filters for clouds and clusters", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP", + "CLUSTER", + "DEFAULT" + ] + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a List of Perspectives", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPerspectiveData" + } + } + } + } + } + } + }, + "/ccm/api/perspective/lastPeriodCost": { + "get": { + "tags": [ + "Cloud Cost Perspectives" + ], + "summary": "Get the last period cost for a Perspective", + "description": "Get last period cost for a Perspective", + "operationId": "getLastPeriodCost_1", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "The Perspective identifier for which we want the cost", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "The Start time (timestamp in millis) for the current period", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "period", + "in": "query", + "description": "The period (DAILY, WEEKLY, MONTHLY, QUARTERLY, YEARLY) for which we want the cost", + "required": true, + "schema": { + "type": "string", + "enum": [ + "DAILY", + "WEEKLY", + "MONTHLY", + "QUARTERLY", + "YEARLY" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a number having the cost of last period", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTODouble" + } + } + } + } + } + } + }, + "/ccm/api/perspective/lastYearMonthlyCost": { + "get": { + "tags": [ + "Cloud Cost Perspectives" + ], + "summary": "Get the last twelve month cost for a Perspective", + "description": "Get last twelve month cost for a Perspective", + "operationId": "getLastYearMonthlyCost", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "perspectiveId", + "in": "query", + "description": "The Perspective identifier for which we want the cost", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "description": "The Start time (timestamp in millis) for the current period", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "period", + "in": "query", + "description": "Only support for YEARLY budget period", + "required": true, + "schema": { + "type": "string", + "enum": [ + "DAILY", + "WEEKLY", + "MONTHLY", + "QUARTERLY", + "YEARLY" + ] + } + }, + { + "name": "type", + "in": "query", + "description": "Only support for PREVIOUS_PERIOD_SPEND budget type", + "required": true, + "schema": { + "type": "string", + "description": "Whether the Budget is based on a specified amount or based on previous month's actual spend", + "enum": [ + "SPECIFIED_AMOUNT", + "PREVIOUS_MONTH_SPEND", + "PREVIOUS_PERIOD_SPEND" + ] + } + }, + { + "name": "breakdown", + "in": "query", + "description": "Only support for MONTHLY breakdown", + "required": true, + "schema": { + "type": "string", + "description": "Whether the Yearly budget breakdown is yearly or monthly", + "enum": [ + "YEARLY", + "MONTHLY" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Return list of actual monthly budget cost and respective month in epoch", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListValueDataPoint" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/details/azure-vm": { + "get": { + "tags": [ + "Cloud Cost Recommendations Details" + ], + "summary": "Return Azure VM Recommendation", + "description": "Returns Azure VM Recommendation details for the given Recommendation identifier.", + "operationId": "azureVmRecommendationDetail", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "description": "Azure VM Recommendation identifier.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the Azure VM Recommendation for the given identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOAzureVmRecommendation" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/details/ec2-instance": { + "get": { + "tags": [ + "Cloud Cost Recommendations Details" + ], + "summary": "Return EC2 Recommendation", + "description": "Returns EC2 Recommendation details for the given Recommendation identifier.", + "operationId": "ec2RecommendationDetail", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "description": "EC2 Recommendation identifier.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the EC2 Recommendation for the given identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOEC2InstanceRecommendation" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/details/ecs-service": { + "get": { + "tags": [ + "Cloud Cost Recommendations Details" + ], + "summary": "Return ECS Recommendation", + "description": "Returns ECS Recommendation details for the given Recommendation identifier.", + "operationId": "ecsRecommendationDetail", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "description": "ECS Recommendation identifier.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "from", + "in": "query", + "description": "Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z' Defaults to Today-7days", + "schema": { + "type": "string" + } + }, + { + "name": "to", + "in": "query", + "description": "Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z' Defaults to Today", + "schema": { + "type": "string" + } + }, + { + "name": "bufferPercentage", + "in": "query", + "description": "Buffer Percentage defaults to zero", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the ECS Recommendation for the given identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOECSRecommendationDTO" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/details/node-pool": { + "get": { + "tags": [ + "Cloud Cost Recommendations Details" + ], + "summary": "Return node pool Recommendation", + "description": "Returns node pool Recommendation details for the given identifier.", + "operationId": "nodeRecommendationDetail", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "description": "Node pool Recommendation identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns node pool Recommendation details for the given identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTONodeRecommendationDTO" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/details/workload": { + "get": { + "tags": [ + "Cloud Cost Recommendations Details" + ], + "summary": "Return workload Recommendation", + "description": "Returns workload Recommendation details for the given Recommendation identifier.", + "operationId": "workloadRecommendationDetail", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "query", + "description": "Workload Recommendation identifier.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "from", + "in": "query", + "description": "Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z' Defaults to Today-7days", + "schema": { + "type": "string" + } + }, + { + "name": "to", + "in": "query", + "description": "Should use org.joda.time.DateTime parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z' Defaults to Today", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the workload Recommendation for the given identifier.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOWorkloadRecommendationDTO" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/overview/change-state": { + "post": { + "tags": [ + "Cloud Cost Recommendations" + ], + "summary": "Return void", + "description": "Mark recommendation as applied/open", + "operationId": "changeRecommendationState", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "recommendationId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "state", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "OPEN", + "APPLIED", + "IGNORED" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns void.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOVoid" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/overview/count": { + "post": { + "tags": [ + "Cloud Cost Recommendations" + ], + "summary": "Return the number of Recommendations", + "description": "Returns the total number of Cloud Cost Recommendations based on the specified filters.", + "operationId": "recommendationsCount", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "CCM Recommendations filter body.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CCMRecommendationFilterProperties" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the count of all Recommendations available.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOInteger" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/overview/filter-values": { + "post": { + "tags": [ + "Cloud Cost Recommendations" + ], + "summary": "Return the list of filter values for the Recommendations", + "description": "Returns the list of filter values for all the specified filters.", + "operationId": "recommendationFilterValues", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Recommendation Filter Values Body.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FilterValues" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the values available for a filter.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListFilterStats" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/overview/list": { + "post": { + "tags": [ + "Cloud Cost Recommendations" + ], + "summary": "Return the list of Recommendations", + "description": "Returns the list of Cloud Cost Recommendations for the specified filters.", + "operationId": "listRecommendations", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "CCM Recommendations filter body.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CCMRecommendationFilterProperties" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of Recommendations available.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORecommendations" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/overview/override-savings": { + "put": { + "tags": [ + "Cloud Cost Recommendations" + ], + "summary": "Return boolean", + "description": "Override savings for recommendation", + "operationId": "overrideRecommendationSavings", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "recommendationId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "overriddenSavings", + "in": "query", + "required": true, + "schema": { + "type": "number", + "format": "double" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns boolean", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/overview/resource-type/stats": { + "post": { + "tags": [ + "Cloud Cost Recommendations" + ], + "summary": "Return Recommendations statistics Grouped on Resource Type", + "description": "Returns the Cloud Cost Recommendations statistics for the specified filters Grouped on Resource Type.", + "operationId": "recommendationResourceTypeStats", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "CCM Recommendations filter body.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CCMRecommendationFilterProperties" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the statistics of all Recommendations available Grouped on Resource Type.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListRecommendationResourceTypeStats" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/overview/stats": { + "post": { + "tags": [ + "Cloud Cost Recommendations" + ], + "summary": "Return Recommendations statistics", + "description": "Returns the Cloud Cost Recommendations statistics for the specified filters.", + "operationId": "recommendationStats", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "CCM Recommendations filter body.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CCMRecommendationFilterProperties" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the statistics of all Recommendations available.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORecommendationOverviewStats" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/jira/create": { + "post": { + "tags": [ + "Cloud Cost Recommendation Jira" + ], + "summary": "Create jira for recommendation", + "description": "Create jira for recommendation", + "operationId": "createRecommendationJira", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing CCMJiraDetails", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CCMJiraCreateDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a created CCMJiraDetails object with all the jira details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCCMJiraDetails" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/preference": { + "get": { + "tags": [ + "Cloud Cost Recommendation Preferences" + ], + "summary": "Get applied preferences for given account", + "description": "Get applied preferences for given account", + "operationId": "getRecommendationPreferences", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns applied preferences", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORecommendationPreferenceDTO" + } + } + } + } + } + }, + "put": { + "tags": [ + "Cloud Cost Recommendation Preferences" + ], + "summary": "Update preference", + "description": "update preferences for your recommendations", + "operationId": "updatePreset", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Preference definition", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RecommendationPreference" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns true or false", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/preset/{id}": { + "put": { + "tags": [ + "Cloud Cost Recommendation Presets" + ], + "summary": "Update an existing preset", + "description": "Update an existing Recommendation Preset for the given Preset ID.", + "operationId": "updatePreset_1", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the budget", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "The preset object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RecommendationPreset" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a generic string message when the operation is successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Cloud Cost Recommendation Presets" + ], + "summary": "Delete a preset", + "description": "Delete a Recommendation preset for the given preset ID.", + "operationId": "deletePreset", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "Unique identifier for the preset", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a text message whether the operation was successful", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/preset": { + "get": { + "tags": [ + "Cloud Cost Recommendation Presets" + ], + "summary": "Get all presets for given account", + "description": "Get all presets for given account", + "operationId": "getRecommendationPresets", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "resourceType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "WORKLOAD", + "NODE_POOL", + "ECS_SERVICE", + "EC2_INSTANCE", + "GOVERNANCE", + "AZURE_INSTANCE" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns presets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListRecommendationPreset" + } + } + } + } + } + }, + "post": { + "tags": [ + "Cloud Cost Recommendation Presets" + ], + "summary": "Create a Preset", + "description": "Create a Preset to set preferences for your recommendations", + "operationId": "createPreset", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Preset definition", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RecommendationPreset" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns true or false", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/servicenow/create": { + "post": { + "tags": [ + "Cloud Cost Recommendation Servicenow" + ], + "summary": "Create servicenow ticket for recommendation", + "description": "Create Servicenow ticket for recommendation", + "operationId": "createRecommendationServicenowTicket", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing CCMServiceNowDetails", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CCMServiceNowCreateDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a created CCMServiceNowDetails object with all the servicenow ticket details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOCCMServiceNowDetails" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/tags": { + "get": { + "tags": [ + "Cloud Cost Recommendation Tags" + ], + "summary": "Get tags for given recommendation", + "description": "Get tags key value pairs for given recommendation", + "operationId": "getRecommendationTags", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "recommendationId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns tags", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORecommendationTagDTO" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/tags/filter-panel": { + "get": { + "tags": [ + "Cloud Cost Recommendation Tags" + ], + "summary": "Get tag (keys)/(values for a particular tag key) for recommendation filter panel", + "description": "Get tag (keys)/(values for a particular tag key) for recommendation filter panel", + "operationId": "getTagsForFilterPanel", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "tagKey", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "search", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "limit", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "offset", + "in": "query", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns List of tagKeys/tagValues", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOListString" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/ignore-list/add": { + "post": { + "tags": [ + "Cloud Cost Recommendation Ignore List" + ], + "summary": "Add resources to recommendations ignore list", + "description": "Add resources to recommendations ignore list", + "operationId": "addRecommendationsIgnoreList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing IgnoreList", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RecommendationsIgnoreResourcesDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns ignore list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORecommendationsIgnoreList" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/ignore-list": { + "get": { + "tags": [ + "Cloud Cost Recommendation Ignore List" + ], + "summary": "Get resources in recommendations ignore list", + "description": "Get resources in recommendations ignore list", + "operationId": "getRecommendationsIgnoreList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns ignore list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORecommendationsIgnoreList" + } + } + } + } + } + } + }, + "/ccm/api/recommendation/ignore-list/remove": { + "post": { + "tags": [ + "Cloud Cost Recommendation Ignore List" + ], + "summary": "Remove resources from recommendations ignore list", + "description": "Remove resources from recommendations ignore list", + "operationId": "removeRecommendationsIgnoreList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Request body containing IgnoreList", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RecommendationsIgnoreResourcesDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns ignore list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORecommendationsIgnoreList" + } + } + } + } + } + } + }, + "/ccm/api/filters": { + "get": { + "tags": [ + "Filter" + ], + "summary": "List Filters", + "description": "Lists Filters for the given criteria.", + "operationId": "CcmgetFilterList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page number of navigation. If left empty, default value of 0 is assumed.", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of entries per page. If left empty, default value of 100 is assumed", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Text to search/filter the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the list of Filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + } + } + } + } + }, + "put": { + "tags": [ + "Filter" + ], + "summary": "Update a Filter", + "description": "Updates the filter for the given ID.", + "operationId": "CcmupdateFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated Filter. This should have all the fields not just the updated ones", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns the updated Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "post": { + "tags": [ + "Filter" + ], + "summary": "Create a Filter", + "description": "Creates a Filter.", + "operationId": "CcmpostFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Connector to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns created Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + } + }, + "/ccm/api/filters/{identifier}": { + "get": { + "tags": [ + "Filter" + ], + "summary": "Return Filter Details", + "description": "Returns the settings of a filter for the given ID.", + "operationId": "CcmgetFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns Filter having filterIdentifier as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Filter" + ], + "summary": "Delete a Filter", + "description": "Deletes a filter for the given ID.", + "operationId": "CcmdeleteFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/ccm/api/usage/cd/active-services/csv/download": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Download CSV Active Services report", + "operationId": "CcmdownloadActiveServiceCSVReport", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64", + "default": 0 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Download CSV Active Services report" + } + } + } + }, + "/ccm/api/usage/CD/serviceInstancesLicense": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Gets License Usage By Module, Timestamp, and Account Identifier", + "operationId": "CcmgetCDLicenseUsageForServiceInstances", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account id to get the license usage.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a license usage object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceInstanceUsageDTO" + } + } + } + } + } + } + }, + "/ccm/api/usage/CD/servicesLicense": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Gets License Usage By Module, Timestamp, and Account Identifier", + "operationId": "CcmgetCDLicenseUsageForServices", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account id to get the license usage.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a license usage object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOServiceUsageDTO" + } + } + } + } + } + } + }, + "/ccm/api/usage/{module}": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Gets License Usage By Module, Timestamp, and Account Identifier", + "operationId": "CcmgetLicenseUsage", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account id to get the license usage.", + "schema": { + "type": "string" + } + }, + { + "name": "module", + "in": "path", + "description": "A Harness platform module.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "CDLicenseType", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CcmError" + } + } + } + }, + "default": { + "description": "Returns a license usage object", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOLicenseUsage" + } + } + } + } + } + } + }, + "/cf/admin/anomalies/{identifier}/dismiss": { + "put": { + "description": "Dismisses A CCM Anomaly, which essentially sets it as acknowledged in the database", + "operationId": "DismissAnomaly", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "200": { + "description": "Anomaly Dismissed." + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Dismisses an Anomaly", + "tags": [ + "Anomalies" + ] + } + }, + "/cf/admin/apikey": { + "get": { + "description": "Returns all the API Keys for an Environment", + "operationId": "GetAllAPIKeys", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/APIKeysResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns API Keys for an Environment", + "tags": [ + "API Keys" + ] + }, + "post": { + "description": "Creates an API key for the given Environment", + "operationId": "AddAPIKey", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/APIKeyRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/APIKeyResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Creates an API key for the given Environment", + "tags": [ + "API Keys" + ] + } + }, + "/cf/admin/apikey/{identifier}": { + "delete": { + "description": "Deletes an API key for the given identifier", + "operationId": "DeleteAPIKey", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Deletes an API Key", + "tags": [ + "API Keys" + ] + }, + "get": { + "description": "Returns all the API Keys for the given identifier", + "operationId": "GetAPIKey", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/APIKeyResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns API keys", + "tags": [ + "API Keys" + ] + }, + "put": { + "description": "Updates an API key for the given identifier", + "operationId": "UpdateAPIKey", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/APIKeyUpdateRequest" + }, + "responses": { + "200": { + "description": "Updated" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Updates an API Key", + "tags": [ + "API Keys" + ] + } + }, + "/cf/admin/attributes": { + "get": { + "description": "Returns all the custom attributes the given environment", + "operationId": "GetAttributes", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + }, + { + "$ref": "#/components/parameters/sortOrder" + }, + { + "$ref": "#/components/parameters/customAttributeQueryParam" + }, + { + "$ref": "#/components/parameters/attributeCounts" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/AttributesResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns all custom attributes for the project", + "tags": [ + "Attributes" + ] + }, + "post": { + "description": "Creates a custom attribute for given environment", + "operationId": "CreateAttribute", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/AttributeRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/AttributeEditResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Creates a custom Attribute", + "tags": [ + "Attributes" + ] + } + }, + "/cf/admin/attributes/{key}": { + "delete": { + "description": "Delete an Attribute for the given key and environmentID", + "operationId": "DeleteAttribute", + "parameters": [ + { + "$ref": "#/components/parameters/key" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete an Attribute", + "tags": [ + "Attributes" + ] + }, + "get": { + "description": "Returns Attribute", + "operationId": "GetAttribute", + "parameters": [ + { + "$ref": "#/components/parameters/key" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/AttributeResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns an Attribute", + "tags": [ + "Attributes" + ] + }, + "patch": { + "description": "Updates Attribute key details for the given environment", + "operationId": "PatchAttribute", + "parameters": [ + { + "$ref": "#/components/parameters/key" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/AttributePatchRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/AttributeEditResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Update Attribute for the environment", + "tags": [ + "Attributes" + ] + } + }, + "/cf/admin/environments/perspectives": { + "delete": { + "description": "Deletes a perspective from an environment. An Environment can only have one Perspective", + "operationId": "DeletePerspective", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete a Perspective - Environment link.", + "tags": [ + "Environment Perspectives" + ] + }, + "put": { + "description": "Adds a perspective to an environment, or updates an existing. An Environment can only have one Perspective", + "operationId": "UpsertPerspective", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnvironmentPerspectiveUpsertRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/EnvironmentPerspectiveResponse" + }, + "201": { + "$ref": "#/components/responses/EnvironmentPerspectiveResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Upsert a Perspective to an Environment.", + "tags": [ + "Environment Perspectives" + ] + } + }, + "/cf/admin/features": { + "get": { + "description": "Returns all the Feature Flag details for the given project", + "operationId": "GetAllFeatures", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentOptionalQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + }, + { + "$ref": "#/components/parameters/sortOrder" + }, + { + "$ref": "#/components/parameters/sortByField" + }, + { + "$ref": "#/components/parameters/nameQueryParam" + }, + { + "$ref": "#/components/parameters/identifierQueryParam" + }, + { + "$ref": "#/components/parameters/archivedQueryParam" + }, + { + "$ref": "#/components/parameters/kindQueryParam" + }, + { + "$ref": "#/components/parameters/targetOptionalParam" + }, + { + "$ref": "#/components/parameters/targetFilterOptionalParam" + }, + { + "$ref": "#/components/parameters/featuresOptionalParam" + }, + { + "$ref": "#/components/parameters/excludedFeaturesOptionalParam" + }, + { + "$ref": "#/components/parameters/flagStatus" + }, + { + "$ref": "#/components/parameters/flagLifetime" + }, + { + "$ref": "#/components/parameters/flagEnabled" + }, + { + "$ref": "#/components/parameters/flagCounts" + }, + { + "$ref": "#/components/parameters/flagSummary" + }, + { + "$ref": "#/components/parameters/flagTags" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/FeaturesResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns all Feature Flags for the project", + "tags": [ + "Feature Flags" + ] + }, + "post": { + "description": "Creates a Feature Flag in the Project", + "operationId": "CreateFeatureFlag", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FeatureFlagRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/FeatureEditResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Creates a Feature Flag", + "tags": [ + "Feature Flags" + ] + } + }, + "/cf/admin/features/{identifier}": { + "delete": { + "description": "Delete Feature Flag for the given identifier and account ID", + "operationId": "DeleteFeatureFlag", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/commitMsgQueryParam" + }, + { + "$ref": "#/components/parameters/forceDeleteQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete a Feature Flag", + "tags": [ + "Feature Flags" + ] + }, + "get": { + "description": "Returns details such as Variation name, identifier etc for the given Feature Flag", + "operationId": "GetFeatureFlag", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentOptionalQueryParam" + }, + { + "$ref": "#/components/parameters/archivedQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/FeatureResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns a Feature Flag", + "tags": [ + "Feature Flags" + ] + }, + "patch": { + "description": "This operation is used to modify a Feature Flag. The request body can include one or more instructions that can modify\nflag attributes such as the state (off|on), the variations that are returned and serving rules.\nFor example if you want to turn a flag off you can use this opeartion and send the setFeatureFlagState\n\n{\n \"kind\": \"setFeatureFlagState\",\n \"parameters\": {\n \"state\": \"off\"\n }\n}\n", + "operationId": "PatchFeature", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentOptionalQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FeaturePatchRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/FeatureEditResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Updates a Feature Flag", + "tags": [ + "Feature Flags" + ] + }, + "put": { + "description": "Updates a Feature Flag in the Project", + "operationId": "PutFeatureFlag", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FeatureFlagPutRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/FeatureEditResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Updates a Feature Flag", + "tags": [ + "Feature Flags" + ] + } + }, + "/cf/admin/features/{identifier}/dependants": { + "get": { + "description": "Given identifier return list all the flags which depend on it.", + "operationId": "GetDependentFeatures", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentOptionalQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + }, + { + "$ref": "#/components/parameters/sortOrder" + }, + { + "$ref": "#/components/parameters/sortByField" + }, + { + "$ref": "#/components/parameters/nameQueryParam" + }, + { + "$ref": "#/components/parameters/archivedQueryParam" + }, + { + "$ref": "#/components/parameters/kindQueryParam" + }, + { + "$ref": "#/components/parameters/targetOptionalParam" + }, + { + "$ref": "#/components/parameters/targetFilterOptionalParam" + }, + { + "$ref": "#/components/parameters/metricsOptionalParam" + }, + { + "$ref": "#/components/parameters/featuresOptionalParam" + }, + { + "$ref": "#/components/parameters/excludedFeaturesOptionalParam" + }, + { + "$ref": "#/components/parameters/flagStatus" + }, + { + "$ref": "#/components/parameters/flagLifetime" + }, + { + "$ref": "#/components/parameters/flagEnabled" + }, + { + "$ref": "#/components/parameters/flagCounts" + }, + { + "$ref": "#/components/parameters/flagSummary" + }, + { + "$ref": "#/components/parameters/flagTags" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/FeaturesResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Return a list of dependant flags", + "tags": [ + "Feature Flags" + ] + } + }, + "/cf/admin/features/{identifier}/restore": { + "post": { + "description": "Restore Feature Flag for the given identifier and account ID", + "operationId": "RestoreFeatureFlag", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/commitMsgQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Restore a Feature Flag", + "tags": [ + "Feature Flags" + ] + } + }, + "/cf/admin/proxy/keys": { + "get": { + "description": "Returns all the Proxy keys in an account", + "operationId": "GetProxyKeys", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/nameQueryParam" + }, + { + "$ref": "#/components/parameters/sortOrder" + }, + { + "$ref": "#/components/parameters/proxyKeySortByField" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ProxyKeysResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns all Proxy keys in an account", + "tags": [ + "Proxy" + ] + }, + "post": { + "description": "Creates a Proxy Key in the account & org", + "operationId": "CreateProxyKey", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ProxyKeysPostRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/ProxyKeysCreateResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Creates a Proxy Key in the account & org", + "tags": [ + "Proxy" + ] + } + }, + "/cf/admin/proxy/keys/{identifier}": { + "delete": { + "description": "Deletes a ProxyKey", + "operationId": "DeleteProxyKey", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/identifier" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Deletes a ProxyKey", + "tags": [ + "Proxy" + ] + }, + "get": { + "description": "Returns a ProxyKey", + "operationId": "GetProxyKey", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/identifier" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ProxyKeyResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns a ProxyKey", + "tags": [ + "Proxy" + ] + }, + "patch": { + "description": "This operation is used to modify which environments a ProxyKey has access to. The request body can include one or more instructions that can assign or unassign environmnets to the ProxyKey\n", + "operationId": "PatchProxyKey", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ProxyKeysPatchRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/ProxyKeysCreateResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Updates a Proxy Key in the account & org", + "tags": [ + "Proxy" + ] + } + }, + "/cf/admin/segments": { + "get": { + "description": "Returns Target Group details for the given account", + "operationId": "GetAllSegments", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + }, + { + "$ref": "#/components/parameters/sortOrder" + }, + { + "$ref": "#/components/parameters/sortByField" + }, + { + "$ref": "#/components/parameters/nameQueryParam" + }, + { + "$ref": "#/components/parameters/identifierQueryParam" + }, + { + "$ref": "#/components/parameters/segmentRulesV2QueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/SegmentsResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns all Target Groups", + "tags": [ + "Target Groups" + ] + }, + "post": { + "description": "Creates a Target Group in the given Project", + "operationId": "CreateSegment", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SegmentRequest" + }, + "responses": { + "201": { + "description": "Created" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Creates a Target Group", + "tags": [ + "Target Groups" + ] + } + }, + "/cf/admin/segments/{identifier}": { + "delete": { + "description": "Deletes a Target Group for the given ID", + "operationId": "DeleteSegment", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Deletes a Target Group", + "tags": [ + "Target Groups" + ] + }, + "get": { + "description": "Returns Target Group details for the given ID", + "operationId": "GetSegment", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/segmentRulesV2QueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/SegmentResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns Target Group details for the given identifier", + "tags": [ + "Target Groups" + ] + }, + "patch": { + "description": "Updates a Target Group for the given identifier", + "operationId": "PatchSegment", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/identifier" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SegmentPatchRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/SegmentResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Updates a Target Group", + "tags": [ + "Target Groups" + ] + } + }, + "/cf/admin/segments/{identifier}/available_flags": { + "get": { + "description": "Returns the list of Feature Flags that the Target Group can be added to. This list will exclude any Feature Flag that the Target Group is already part of.", + "operationId": "GetAvailableFlagsForSegment", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + }, + { + "$ref": "#/components/parameters/safSortOrder" + }, + { + "$ref": "#/components/parameters/safSortByField" + }, + { + "$ref": "#/components/parameters/flagNameQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/AvailableFlagResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns Feature Flags that are available to be added to the given Target Group", + "tags": [ + "Target Groups" + ] + } + }, + "/cf/admin/segments/{identifier}/flags": { + "get": { + "description": "Returns the details of a Feature Flag in a Target Group for the given identifier", + "operationId": "GetSegmentFlags", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/SegmentFlagsResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns Feature Flags in a Target Group", + "tags": [ + "Target Groups" + ] + } + }, + "/cf/admin/tags": { + "get": { + "description": "Returns all the Tags for the given Account ID", + "operationId": "GetAllTags", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + }, + { + "$ref": "#/components/parameters/sortOrder" + }, + { + "$ref": "#/components/parameters/sortByField" + }, + { + "$ref": "#/components/parameters/tagFilterOptionalParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/TagsResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns all Tags", + "tags": [ + "Tags" + ] + }, + "post": { + "description": "Create Tags for the given identifier", + "operationId": "CreateTag", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TagRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/TagEditResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Creates a Tag", + "tags": [ + "Tags" + ] + } + }, + "/cf/admin/tags/{identifier}": { + "delete": { + "description": "Delete Tag for the given identifier and account ID", + "operationId": "DeleteTag", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/commitMsgQueryParam" + }, + { + "$ref": "#/components/parameters/forceDeleteQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "424": { + "$ref": "#/components/responses/GitSyncError" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete a Tag", + "tags": [ + "Tags" + ] + }, + "get": { + "description": "Returns details such as identifier,Associated Feature Flag etc for the given Tag", + "operationId": "GetTag", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentOptionalQueryParam" + }, + { + "$ref": "#/components/parameters/metricsOptionalParam" + }, + { + "$ref": "#/components/parameters/archivedQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/FeatureResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns a Tag", + "tags": [ + "Tags" + ] + } + }, + "/cf/admin/targets": { + "get": { + "description": "Returns all the Targets for the given Account ID", + "operationId": "GetAllTargets", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/pageNumber" + }, + { + "$ref": "#/components/parameters/pageSize" + }, + { + "$ref": "#/components/parameters/targetSortOrder" + }, + { + "$ref": "#/components/parameters/targetSortByField" + }, + { + "$ref": "#/components/parameters/targetNameQueryParam" + }, + { + "$ref": "#/components/parameters/targetIdentifierQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/TargetsResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns all Targets", + "tags": [ + "Targets" + ] + }, + "post": { + "description": "Create Targets for the given identifier", + "operationId": "CreateTarget", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TargetRequest" + }, + "responses": { + "201": { + "description": "Created" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Creates a Target", + "tags": [ + "Targets" + ] + } + }, + "/cf/admin/targets/upload": { + "post": { + "description": "Add targets by uploading a CSV file", + "operationId": "UploadTargets", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "properties": { + "fileName": { + "format": "binary", + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "description": "Created" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Add Target details", + "tags": [ + "Targets" + ] + } + }, + "/cf/admin/targets/{identifier}": { + "delete": { + "description": "Deletes a Target for the given identifier", + "operationId": "DeleteTarget", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "204": { + "description": "No content" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Deletes a Target", + "tags": [ + "Targets" + ] + }, + "get": { + "description": "Returns details of a Target for the given identifier", + "operationId": "GetTarget", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/TargetResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns details of a Target", + "tags": [ + "Targets" + ] + }, + "patch": { + "description": "Updates a Target for the given identifier", + "operationId": "PatchTarget", + "parameters": [ + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + }, + { + "$ref": "#/components/parameters/identifier" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TargetPatchRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/TargetResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Updates a Target", + "tags": [ + "Targets" + ] + }, + "put": { + "description": "Modifies a Target for the given account identifier", + "operationId": "ModifyTarget", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/TargetRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/TargetResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Modifies a Target", + "tags": [ + "Targets" + ] + } + }, + "/cf/admin/targets/{identifier}/segments": { + "get": { + "description": "Returns the Target Groups that the specified Target belongs to.", + "operationId": "GetTargetSegments", + "parameters": [ + { + "$ref": "#/components/parameters/identifier" + }, + { + "$ref": "#/components/parameters/accountQueryParam" + }, + { + "$ref": "#/components/parameters/orgQueryParam" + }, + { + "$ref": "#/components/parameters/projectQueryParam" + }, + { + "$ref": "#/components/parameters/environmentQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/TargetDetailResponse" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns Target Groups for the given Target", + "tags": [ + "Targets" + ] + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "List AutoStopping Rules", + "description": "Lists all the AutoStopping rules separated by comma-separated strings.", + "operationId": "ListAutoStoppingRules", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "dry_run", + "description": "Flag which if enabled lists out only dry run rules.", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServicesResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + }, + "post": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Create an AutoStopping Rule", + "description": "Creates a new AutoStopping Rule.", + "operationId": "UpdateAutoStoppingRule", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Service definition of an AutoStopping rule", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SaveServiceRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LwServiceResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Return AutoStopping Rule details", + "description": "Returns details of an AutoStopping Rule for the given identifier.", + "operationId": "AutoStoppingRuleDetails", + "parameters": [ + { + "name": "account_id", + "in": "path", + "description": "Account Identifier for the Entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping Rule for which you need to fetch the details", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "response": { + "$ref": "#/components/schemas/SaveServiceRequest" + } + } + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + }, + "delete": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Delete an AutoStopping Rule", + "description": "Deletes an AutoStopping Rule for the given identifier.", + "operationId": "DeleteAutoStoppingRule", + "parameters": [ + { + "name": "rule_id", + "description": "ID of the AutoStopping Rule that you want to delete", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": {} + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/health": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Return health status of an AutoStopping Rule", + "description": "Returns health status of an AutoStopping Rule for the given identifier.", + "operationId": "HealthOfAutoStoppingRule", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping Rule for which you need to fetch the health status", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceHealthResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/savings": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Return savings details for an AutoStopping Rule", + "description": "Returns savings details for an AutoStopping rule for the given identifier and the specified time duration.", + "operationId": "SavingsFromAutoStoppingRule", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping Rule for which you want to fetch savings detail", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "from", + "description": "Start time for the computation of savings", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "to", + "description": "End time for the computation of savings", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "group_by", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "type": "object" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/resources": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "List all the resources for an AutoStopping Rule", + "description": "Lists all the resources for an AutoStopping Rule for the given identifier.", + "operationId": "AllAutoStoppingResources", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "description": "Connector ID", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "region", + "description": "Cloud region where resources belong to", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping Rule for which you need to list the resources", + "in": "path", + "required": true, + "schema": { + "type": "number", + "format": "int64" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AllResourcesOfAccountResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/diagnostics": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Return diagnostics result of an AutoStopping Rule", + "description": "Returns the diagnostics result of an AutoStopping rule for the given identifier.", + "operationId": "GetAutoStoppingDiagnostics", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping rule for which you need to fetch the diagnostics details", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceDiagnosticsResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/warmup": { + "post": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Warm up an AutoStopping Rule", + "description": "Warm up resources under an Autostopping rule", + "operationId": "WarmUpAutostoppingRule", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping rule which you want to warm up", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Warm Up Options", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/WarmUpOption" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "type": "string" + } + } + } + }, + "500": { + "description": "Internal error", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/cooldown": { + "post": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Cool down an AutoStopping Rule", + "description": "Cool down resources under an Autostopping rule", + "operationId": "CoolDownAutostoppingRule", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping rule you want to cool down", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Cool Down Options", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/CoolDownOption" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "type": "string" + } + } + } + }, + "500": { + "description": "Internal error", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/cooldown_meta": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Return metadata of cool down of an AutoStopping Rule", + "description": "Return metadata of cool down of an AutoStopping Rule", + "operationId": "GetAutoStoppingCoolDownMeta", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping rule for which you need to fetch the diagnostics details", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoolDownMetaSuccessResponse" + } + } + } + }, + "500": { + "description": "Internal error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CoolDownMetaFailureResponse" + } + } + } + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/savings/cumulative": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Return cumulative savings for all the AutoStopping Rules", + "description": "Returns cumulative savings for all the AutoStopping Rules.", + "operationId": "CumulativeAutoStoppingSavings", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CumulativeSavingsResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/toggle_state": { + "put": { + "tags": [ + "Cloud Cost AutoStopping Rules" + ], + "summary": "Disable/Enable an Autostopping Rule", + "description": "Disables or enables an Autostopping Rule for the given identifier.", + "operationId": "ToggleAutostoppingRule", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping rule to be enabled/disabled", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "disable", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServicesResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/v2/rules": { + "post": { + "tags": [ + "Cloud Cost AutoStopping Rules V2" + ], + "summary": "Create an AutoStopping Rule", + "description": "Creates a new AutoStopping Rule.", + "operationId": "CreateAutoStoppingRuleV2", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Service definition of an AutoStopping rule", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SaveServiceRequestV2" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LwServiceResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/v2/rules/{rule_id}": { + "put": { + "tags": [ + "Cloud Cost AutoStopping Rules V2" + ], + "summary": "Update an existing AutoStopping Rule", + "description": "Updates an existing AutoStopping Rule.", + "operationId": "UpdateAutoStoppingRuleV2", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_id", + "description": "ID of the AutoStopping rule to be enabled/disabled", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Service definition of an AutoStopping rule", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SaveServiceRequestV2" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LwServiceResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Load Balancers" + ], + "summary": "Return all the load balancers", + "description": "Returns all the load balancers for the given identifier.", + "operationId": "ListLoadBalancers", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "vpc", + "description": "Virtual Private Cloud (VPC)", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "region", + "description": "Cloud region where access point is installed", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "description": "Connector ID", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListAccessPointResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + }, + "put": { + "tags": [ + "Cloud Cost AutoStopping Load Balancers" + ], + "summary": "Update a load balancer", + "description": "Updates a load balancer for the given identifier.", + "operationId": "EditLoadBalancer", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/AccessPoint" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateAccessPointResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "accessPoint" + }, + "post": { + "tags": [ + "Cloud Cost AutoStopping Load Balancers" + ], + "summary": "Create a load balancer", + "description": "Creates a load balancer.", + "operationId": "CreateLoadBalancer", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/AccessPoint" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateAccessPointResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "accessPoint" + }, + "delete": { + "tags": [ + "Cloud Cost AutoStopping Load Balancers" + ], + "summary": "Delete load balancers and the associated resources", + "description": "Deletes load balancers and the associated resources for the given identifier.", + "operationId": "DeleteLoadBalancer", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/DeleteAccessPointPayload" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "OK", + "content": {} + } + }, + "x-codegen-request-body-name": "accessPoint" + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers/{lb_id}": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Load Balancers" + ], + "summary": "Return details of a load balancer", + "description": "Retuns details of a load balancer for the given identifier.", + "operationId": "DescribeLoadBalancer", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "lb_id", + "description": "ID of the load balancer for which you want to fetch the details", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetAccessPointResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers/{lb_id}/rules": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Load Balancers" + ], + "summary": "Return all the AutoStopping Rules in a load balancer", + "description": "Returns all the AutoStopping Rules for the given load balancer identifier.", + "operationId": "AccessPointRules", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "lb_id", + "description": "ID of the load balancer for which you want to fetch the list of AutoStopping Rules", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServicesResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers/{lb_id}/last_active_at": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Load Balancers" + ], + "summary": "Return last activity details of a load balancer", + "description": "Returns the last activity details for the given load balancer identifier.", + "operationId": "LoadBalancerActivity", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "lb_id", + "description": "ID of the load balancer for which you want to fetch the most recent activity details", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessPointActivityResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/schedules": { + "get": { + "tags": [ + "Cloud Cost AutoStopping Fixed Schedules" + ], + "summary": "Return all the AutoStopping Rule fixed schedules", + "description": "Returns all the AutoStopping Rule fixed schedules for the given identifier.", + "operationId": "listAutoStoppingSchedules", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "description": "Connector ID", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "res_id", + "description": "IDs of resources whose fixed schedules are to be fetched. This can be an AutoStopping rule ID if the res_type is \"autostop_rule\"", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "res_type", + "description": "Type of resource to which schedules are attached", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "autostop_rule" + ] + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FixedSchedulesListResponse" + } + } + } + }, + "400": { + "description": "Invalid", + "content": {} + } + } + }, + "post": { + "tags": [ + "Cloud Cost AutoStopping Fixed Schedules" + ], + "summary": "Create a fixed schedule for an AutoStopping Rule", + "description": "Creates an AutoStopping rule to run resources based on the schedule.", + "operationId": "createAutoStoppingSchedules", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "description": "Connector ID", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Fixed schedule payload", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SaveStaticSchedulesRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FixedSchedule" + } + } + } + }, + "400": { + "description": "Invalid", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/schedules/{schedule_id}": { + "delete": { + "tags": [ + "Cloud Cost AutoStopping Fixed Schedules" + ], + "summary": "Delete a fixed schedule for AutoStopping Rule.", + "description": "Deletes a fixed schedule for the given AutoStopping Rule.", + "operationId": "deleteAutoStoppingSchedule", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "schedule_id", + "description": "ID of a fixed schedule added to an AutoStopping rule", + "in": "path", + "required": true, + "schema": { + "type": "number" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "response": { + "type": "string" + } + } + } + } + } + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/clusters": { + "get": { + "tags": [ + "Cloud Cost Cluster Orchestrator" + ], + "summary": "Return all connected clusters to Harness CCM", + "description": "Return all connected clusters to Harness CCM, the ones onboarded to cluster orchestrator will have the id field populated", + "operationId": "listConnectedKubernetesClusters", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectedKubernetesClustersListResponse" + } + } + } + }, + "400": { + "description": "Invalid", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/clusters/orchestrator": { + "post": { + "tags": [ + "Cloud Cost Cluster Orchestrator" + ], + "summary": "Onboard a kubernetes cluster with an existing CCM Kubernetes Connector to Cluster Orchestrator", + "description": "Onboard a kubernetes cluster with an existing CCM Kubernetes Connector to Cluster Orchestrator", + "operationId": "onboardToClusterOrchestrator", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Onboard to Cluster Orchestrator Payload", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/OnboardToClusterOrchestratorRequest" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectedKubernetesClustersGetResponse" + } + } + } + }, + "400": { + "description": "Invalid", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/clusters/orchestrator/{orchestrator_id}": { + "get": { + "tags": [ + "Cloud Cost Cluster Orchestrator" + ], + "summary": "Get Details of a connected clusters by orchestrator id", + "description": "Fetches the details of the cluster connected to the orchestrator by orchestrator's ID", + "operationId": "getConnectedClusterDetails", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orchestrator_id", + "description": "Identifier of the Orchestrator of the cluster, available in list response and onboard response", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectedKubernetesClustersGetResponse" + } + } + } + }, + "400": { + "description": "Invalid", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/clusters/orchestrator/{orchestrator_id}/config": { + "put": { + "tags": [ + "Cloud Cost Cluster Orchestrator" + ], + "summary": "Update a Cluster Orchestrator Config", + "description": "Updates the config for a given cluster orchestrator", + "operationId": "updateClusterOrchestratorConfig", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orchestrator_id", + "description": "Identifier of the Orchestrator of the cluster, available in list response and onboard response", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/AccessPoint" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateAccessPointResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "accessPoint" + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/events/logs": { + "post": { + "tags": [ + "Commitment Orchestrator APIs" + ], + "summary": "List event logs", + "description": "Obtains list of event logs generated as part of commitment orchestration", + "operationId": "EventLogs", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "description": "Start time of the period", + "example": "2021-10-19" + } + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "description": "End time of the period", + "example": "2021-10-19" + } + } + ], + "requestBody": { + "description": "Input for Pagination", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/PaginationInput" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EventLogsSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/events/chart": { + "post": { + "tags": [ + "Commitment Orchestrator Events APIs" + ], + "summary": "List event logs", + "description": "Obtains list of events and the count of their occurences grouped by date", + "operationId": "EventsChart", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "description": "Start time of the period", + "example": "2021-10-19" + } + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "description": "End time of the period", + "example": "2021-10-19" + } + } + ], + "requestBody": { + "description": "Optional filters", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/EventsFilter" + } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EventsChartsSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/setup/validate": { + "post": { + "tags": [ + "Commitment Orchestrator Setup APIs" + ], + "summary": "Validate commitment Setup", + "description": "Obtains maximum allowed configuration values for Savings Plans given a target total coverage", + "operationId": "SetupValidate", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "in": "query", + "required": true, + "schema": { + "type": "string", + "description": "Account Identifier for which Commitment Orchestration Setup is being performed" + } + } + ], + "requestBody": { + "description": "Configured setup values", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/AutoCUDConfig" + } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SetupValidateSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/setup/{cloud_account_id}/instance_types": { + "post": { + "tags": [ + "Commitment Orchestrator Setup APIs" + ], + "summary": "Instance types in usage to support configuring exclusions", + "description": "Lists all instance types by region in usage for the given master account", + "operationId": "SetupInstanceTypes", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "description": "Cloud Account ID of the master account in Harness", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "in": "query", + "required": true, + "schema": { + "type": "string", + "description": "Account Identifier for which Commitment Orchestration Setup is being performed" + } + } + ], + "requestBody": { + "description": "Configured setup values", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/InstanceTypesPayload" + } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SetupInstanceTypesSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/setup/listMasterAccounts": { + "post": { + "tags": [ + "Commitment Orchestrator Setup APIs" + ], + "summary": "List master accounts for commitment Setup", + "description": "Lists master accounts available for commitment orchestrator setup", + "operationId": "ListMasters", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListMasterSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/setup/{cloud_account_id}/child_accounts": { + "get": { + "tags": [ + "Commitment Orchestrator Setup APIs" + ], + "summary": "List child accounts for a given master account", + "description": "Lists child accounts with their name and id for a given master account", + "operationId": "ListAccounts", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "cloud_account_id", + "description": "Cloud Account ID of the master account in Harness", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListChildAccountsSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/setup/list": { + "get": { + "tags": [ + "Commitment Orchestrator Setup APIs" + ], + "summary": "List of commitment Setups", + "description": "Lists setups available for commitment orchestrator", + "operationId": "ListSetups", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListSetupsSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/approvals/list": { + "post": { + "tags": [ + "Commitment Orchestrator User Approval APIs" + ], + "summary": "List of Commitment transactions awaiting user approvals", + "description": "List of commitment related transactions waiting for user approvals", + "operationId": "ApprovalsList", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Input for Pagination", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/PaginationInput" + } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApprovalEventsSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/approvals/update": { + "post": { + "tags": [ + "Commitment Orchestrator User Approval APIs" + ], + "summary": "Approve/Reject commitment transactions", + "description": "Approve or Reject commitment transactions", + "operationId": "ApprovalsUpdate", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Actions and their approval or rejection status", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/ApprovalPayload" + } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GenericSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/approvals/overview": { + "post": { + "tags": [ + "Commitment Orchestrator User Approval APIs" + ], + "summary": "Overview API with summary for different types of approval events", + "description": "Overview API with summary of event types with the status and potential savings opportunities", + "operationId": "ApprovalsOverview", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Input for Supported optional filters", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/ApprovalsOverviewRequestFilters" + } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApprovalOverviewSuccessResponse" + } + } + } + }, + "400": { + "description": "Invalid status value", + "content": {} + } + }, + "x-codegen-request-body-name": "body" + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/savings/overview": { + "post": { + "tags": [ + "Savings Overview" + ], + "summary": "Get Savings Overview", + "description": "Fetches the overall savings, managed, and unmanaged savings for the provided account.", + "operationId": "GetSavingsOverview", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the entity." + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing." + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date" + }, + "description": "Start date for the savings period." + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date" + }, + "description": "End date for the savings period." + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier of the account." + } + ], + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavingsOverviewResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{accountId}/v2/savings/detail": { + "post": { + "tags": [ + "Savings Detail" + ], + "summary": "Fetch savings details", + "parameters": [ + { + "name": "accountId", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "The account ID" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing ID" + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date" + }, + "description": "Start date for the savings query" + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date" + }, + "description": "End date for the savings query" + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account identifier" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "group_by": { + "type": "string", + "enum": [ + "Regions", + "Commitment Type", + "Instance family" + ], + "description": "The dimension to group savings by" + }, + "is_harness_managed": { + "type": "boolean", + "description": "Indicates whether the savings are managed by Harness" + } + }, + "required": [ + "group_by", + "is_harness_managed" + ] + } + } + } + }, + "responses": { + "200": { + "description": "Successful response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavingsDetailResponse" + } + } + } + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v1/detail/commitment_utilisation": { + "get": { + "tags": [ + "Commitment Utilization" + ], + "summary": "Get commitment utilization details", + "description": "Retrieves detailed utilization data for savings plans and reserved instances with charts and trends", + "operationId": "GetCommitmentUtilizationDetails", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the entity" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account identifier" + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date", + "example": "2025-01-01" + }, + "description": "Start date for the utilization data period" + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date", + "example": "2025-01-31" + }, + "description": "End date for the utilization data period" + }, + { + "name": "regions", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Filter by regions (Note: Regional filtering has limitations for savings plans)", + "style": "form", + "explode": true + }, + { + "name": "cloud_account_ids", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Filter by cloud account IDs", + "style": "form", + "explode": true + }, + { + "name": "service", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "Amazon Elastic Compute Cloud - Compute", + "Amazon Relational Database Service" + ] + }, + "description": "Filter by AWS service" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommitmentUtilizationDetailResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/savings/savings-rate": { + "post": { + "tags": [ + "Savings Rate" + ], + "summary": "Get Effective Savings Rate", + "description": "Fetches the effective savings rate and total spend percentage for the given account within the specified date range.", + "operationId": "GetSavingsRate", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the entity." + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing." + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier of the account." + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "Start date for the savings calculation period." + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "End date for the savings calculation period." + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UtilizationOverviewRequestFilters" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavingsRateResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{accountId}/v2/utilisation/overview": { + "post": { + "tags": [ + "Utilization Overview" + ], + "summary": "Get Utilization Overview", + "parameters": [ + { + "in": "path", + "name": "accountId", + "required": true, + "schema": { + "type": "string" + }, + "description": "The unique identifier of the account" + }, + { + "in": "query", + "name": "routingId", + "required": true, + "schema": { + "type": "string" + }, + "description": "The routing ID for the account" + }, + { + "in": "query", + "name": "start_date", + "required": true, + "schema": { + "type": "string", + "format": "date" + }, + "description": "The start date for the utilization data" + }, + { + "in": "query", + "name": "end_date", + "required": true, + "schema": { + "type": "string", + "format": "date" + }, + "description": "The end date for the utilization data" + }, + { + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + }, + "description": "The identifier of the account for context" + } + ], + "responses": { + "200": { + "description": "Successful response with utilization overview", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UtilizationOverviewResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/spend/overview": { + "post": { + "tags": [ + "Spend Overview" + ], + "summary": "Get overall spend breakdown across RI, SP and Ondemand cost", + "description": "Fetches spend breakdown across RI, SP and Ondemand cost in terms of cost incurred for the given account within the specified date range.", + "operationId": "SpendOverview", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the entity." + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing." + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier of the account." + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "Start date for the spend calculation period." + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "End date for the spend calculation period." + } + ], + "requestBody": { + "required": false, + "description": "Filters for Spend Overview", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SpendBreakdownFilter" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SpendBreakdownResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/spend/detail": { + "post": { + "tags": [ + "Spend Details" + ], + "summary": "Get detailed breakdown of spend across RI, SP and Ondemand cost with charts and tabular data", + "description": "Get detailed breakdown of spend across RI, SP and Ondemand cost", + "operationId": "SpendDetails", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the entity." + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing." + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier of the account." + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "Start date for the spend calculation period." + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "End date for the spend calculation period." + } + ], + "requestBody": { + "required": false, + "description": "Supported filters for Spends", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SpendBreakdownFilter" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SpendBreakdownResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/coverage/overview": { + "post": { + "tags": [ + "Coverage Overview" + ], + "summary": "Get overall coverage across RI, SP and Ondemand", + "description": "Fetches coverage across RI, SP and Ondemand cost in terms of cost incurred for the given account within the specified date range.", + "operationId": "CoverageOverview", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the entity." + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing." + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier of the account." + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "Start date for the compute coverage calculation period." + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "example": "2021-10-19" + }, + "description": "End date for the compute coverage calculation period." + } + ], + "requestBody": { + "required": false, + "description": "Service definition", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/CopmputeCoverageFilter" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComputeCoverageResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/coverage/detail": { + "post": { + "tags": [ + "Coverage Detail" + ], + "summary": "Get detailed coverage breakdown by specified grouping", + "description": "Fetches detailed coverage breakdown for specific dimensions like Instance Family, Region, etc. within the specified date range.", + "operationId": "CoverageDetail", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the entity." + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing." + }, + { + "name": "start_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date", + "example": "2025-01-01" + }, + "description": "Start date for the coverage calculation period." + }, + { + "name": "end_date", + "in": "query", + "required": true, + "schema": { + "type": "string", + "format": "date", + "example": "2025-01-31" + }, + "description": "End date for the coverage calculation period." + }, + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier of the account." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "group_by": { + "type": "string", + "enum": [ + "Instance Family", + "Region", + "Machine Type" + ], + "description": "Dimension to group coverage data by" + } + }, + "required": [ + "group_by" + ] + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComputeCoveragesDetailResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/inventory/ri/overview": { + "post": { + "tags": [ + "RI Inventory Overview" + ], + "summary": "Get Reserved Instance Inventory Overview", + "description": "Fetches overview of Reserved Instance inventory including total counts, distribution, status, and pending actions", + "operationId": "GetRIInventoryOverview", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + }, + { + "name": "start_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2022-01-01" + }, + "description": "Start date for the inventory period" + }, + { + "name": "end_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2025-08-30" + }, + "description": "End date for the inventory period" + } + ], + "requestBody": { + "description": "Optional filters for the RI inventory", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InventoryRIAPIFilter" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RIInventoryOverviewResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/inventory/sp/overview": { + "post": { + "tags": [ + "SP Inventory Overview" + ], + "summary": "Get Savings Plans Inventory Overview", + "description": "Fetches overview of Savings Plans inventory including total counts, distribution, status, and pending actions", + "operationId": "GetSPInventoryOverview", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + }, + { + "name": "start_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2024-01-01" + }, + "description": "Start date for the inventory period" + }, + { + "name": "end_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2025-08-30" + }, + "description": "End date for the inventory period" + } + ], + "requestBody": { + "description": "Optional filters for the SP inventory", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InventorySPAPIFilter" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SPInventoryOverviewResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/inventory/ri/list": { + "post": { + "tags": [ + "RI Inventory APIs" + ], + "summary": "List Reserved Instances", + "description": "Retrieves a paginated list of Reserved Instances with optional filtering", + "operationId": "ListReservedInstances", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + }, + { + "name": "start_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2020-01-01" + }, + "description": "Start date for filtering Reserved Instances" + }, + { + "name": "end_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2025-08-30" + }, + "description": "End date for filtering Reserved Instances" + } + ], + "requestBody": { + "description": "Pagination and filtering options", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListReservedInstancesRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListReservedInstancesResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/inventory/sp/list": { + "post": { + "tags": [ + "SP Inventory APIs" + ], + "summary": "List Savings Plans", + "description": "Retrieves a paginated list of Savings Plans with optional filtering", + "operationId": "ListSavingsPlans", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + }, + { + "name": "start_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2020-01-01" + }, + "description": "Start date for filtering Savings Plans" + }, + { + "name": "end_date", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date", + "example": "2025-08-30" + }, + "description": "End date for filtering Savings Plans" + } + ], + "requestBody": { + "description": "Pagination and filtering options", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListSavingsPlansRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListSavingsPlansResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/inventory/ri/{riId}/detail": { + "get": { + "tags": [ + "RI Inventory APIs" + ], + "summary": "Get Reserved Instance Details", + "description": "Retrieves detailed information about a specific Reserved Instance", + "operationId": "GetReservedInstanceDetails", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "riId", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Unique identifier of the Reserved Instance" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReservedInstanceDetailsResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + }, + "404": { + "description": "Reserved Instance not found" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/inventory/sp/{spId}/detail": { + "get": { + "tags": [ + "SP Inventory APIs" + ], + "summary": "Get Savings Plan Details", + "description": "Retrieves detailed information about a specific Savings Plan", + "operationId": "GetSavingsPlanDetails", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "spId", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Unique identifier of the Savings Plan" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SavingsPlanDetailsResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters" + }, + "404": { + "description": "Savings Plan not found" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/filters/ri": { + "get": { + "tags": [ + "RI Inventory APIs" + ], + "summary": "Get Reserved Instance Filter Options", + "description": "Retrieves available filter options for Reserved Instances including account IDs, instance types, platforms, etc.", + "operationId": "GetRIFilterOptions", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/InventoryRIAPIFilter" + } + } + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/filters/sp": { + "get": { + "tags": [ + "SP Inventory APIs" + ], + "summary": "Get Savings Plans Filter Options", + "description": "Retrieves available filter options for Savings Plans including account IDs, instance families, payment options, etc.", + "operationId": "GetSPFilterOptions", + "parameters": [ + { + "name": "account_id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Account Identifier for the Entity" + }, + { + "name": "routingId", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Routing identifier for request processing" + } + ], + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/InventorySPAPIFilter" + } + } + } + } + } + }, + "400": { + "description": "Invalid request parameters" + } + } + } + }, + "/gateway/lw/api/accounts/{account_id}/v2/landing": { + "get": { + "tags": [ + "Commitment Orchestrator Landing Page" + ], + "summary": "Get commitment landing page data", + "description": "Obtains list of cloud account connectors with their commitment status, coverage, and savings information", + "operationId": "LandingPageHandler", + "parameters": [ + { + "name": "account_id", + "description": "Account Identifier for the Entity", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LandingPageResponse" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "500": { + "description": "Internal Server Error" + } + } + } + }, + "/audit/api/auditFilters": { + "get": { + "tags": [ + "AuditFilters" + ], + "summary": "Get the list of Filters of type Audit satisfying the criteria (if any) in the request", + "operationId": "getAuditFilterList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page number of navigation. If left empty, default value of 0 is assumed", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of entries per page. If left empty, default value of 100 is assumed", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Text to search/filter the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + } + } + }, + "default": { + "description": "Returns the list of Filters of type Audit", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + } + } + } + } + }, + "put": { + "tags": [ + "AuditFilters" + ], + "summary": "Updates the Filter of type Audit", + "operationId": "updateAuditFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated Filter. This should have all the fields not just the updated ones", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + } + } + }, + "default": { + "description": "Returns the updated Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "post": { + "tags": [ + "AuditFilters" + ], + "summary": "Creates a Filter", + "operationId": "postAuditFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Filter to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + } + } + }, + "default": { + "description": "Returns created Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + } + }, + "/audit/api/auditFilters/{identifier}": { + "get": { + "tags": [ + "AuditFilters" + ], + "summary": "Gets a Filter of type Audit by identifier", + "operationId": "getAuditFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + } + } + }, + "default": { + "description": "Returns Filter of type Audit and having filterIdentifier as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "delete": { + "tags": [ + "AuditFilters" + ], + "summary": "Delete a Filter of type Audit by identifier", + "operationId": "deleteAuditFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + } + } + }, + "default": { + "description": "Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/audit/api/audits/list": { + "post": { + "tags": [ + "Audit" + ], + "summary": "List Audit Events", + "operationId": "getAuditEventList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This has the filter attributes for listing Audit Events", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditFilterProperties" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditFilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + } + } + }, + "default": { + "description": "This has a paginated list of Audit Events.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseAuditEvent" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseAuditEvent" + } + } + } + } + } + } + }, + "/audit/api/audits/listV2": { + "post": { + "tags": [ + "Audit" + ], + "summary": "List Audit Events", + "operationId": "getAuditEventListV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageIndex", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page(max 100)Default Value: 50", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "sortOrders", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SortOrder" + } + } + }, + { + "name": "pageToken", + "in": "query", + "description": "Page Token of the next results to fetch.Default Value: ''", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This has the filter attributes for listing Audit Events", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditFilterProperties" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditFilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuditError" + } + } + } + }, + "default": { + "description": "This has a paginated list of Audit Events.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSliceResponseAuditEvent" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSliceResponseAuditEvent" + } + } + } + } + } + } + }, + "/audit/api/auditYaml": { + "get": { + "tags": [ + "AuditYaml" + ], + "summary": "Gets the YamlDiff of the Audit.", + "operationId": "getYamlDiff", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "auditId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "default": { + "description": "Returns the old Yaml and new Yaml.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOYamlDiffRecord" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOYamlDiffRecord" + } + } + } + } + } + } + }, + "/template/api/filters": { + "get": { + "tags": [ + "Filter" + ], + "summary": "List Filters", + "description": "Lists Filters for the given criteria.", + "operationId": "TemplategetFilterList", + "parameters": [ + { + "name": "pageIndex", + "in": "query", + "description": "Page number of navigation. If left empty, default value of 0 is assumed.", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of entries per page. If left empty, default value of 100 is assumed", + "schema": { + "type": "integer", + "format": "int32", + "default": 100 + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "Text to search/filter the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns the list of Filters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseFilter" + } + } + } + } + } + }, + "put": { + "tags": [ + "Filter" + ], + "summary": "Update a Filter", + "description": "Updates the filter for the given ID.", + "operationId": "TemplateupdateFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This is the updated Filter. This should have all the fields not just the updated ones", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns the updated Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "post": { + "tags": [ + "Filter" + ], + "summary": "Create a Filter", + "description": "Creates a Filter.", + "operationId": "TemplatepostFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Connector to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/Filter" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns created Filter", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + } + }, + "/template/api/filters/{identifier}": { + "get": { + "tags": [ + "Filter" + ], + "summary": "Return Filter Details", + "description": "Returns the settings of a filter for the given ID.", + "operationId": "TemplategetFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns Filter having filterIdentifier as specified in request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOFilter" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Filter" + ], + "summary": "Delete a Filter", + "description": "Deletes a filter for the given ID.", + "operationId": "TemplatedeleteFilter", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Filter Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "description": "Type of Filter", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal server error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Boolean status whether request was successful or not", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/template/api/refresh-template/refreshed-yaml": { + "post": { + "tags": [ + "Templates" + ], + "summary": "Get YAML with updated Template Inputs", + "description": "Returns YAML with updated Template Inputs for a given YAML", + "operationId": "getRefreshedYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + } + ], + "requestBody": { + "description": "YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RefreshRequestDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RefreshRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns YAML with updated Template Inputs, when an underlying Template has been updated and a reconciliation is pending in a given YAML.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORefreshResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTORefreshResponse" + } + } + } + } + } + } + }, + "/template/api/refresh-template/validate-template-inputs": { + "get": { + "tags": [ + "Templates" + ], + "summary": "Validate Template Inputs in a YAML", + "description": "Validates the Template Inputs in a pipeline's YAML specification. If the Template Inputs are invalid, the operation returns an error summary.", + "operationId": "TemplatevalidateTemplateInputs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "query", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Template version", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns a validation result for Template Inputs present in a YAML specification.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateResponseDTOValidateTemplateInputsResponseDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateResponseDTOValidateTemplateInputsResponseDTO" + } + } + } + } + } + } + }, + "/template/api/templates/v2/applyTemplates": { + "post": { + "tags": [ + "Templates" + ], + "summary": "Gets complete yaml with templateRefs resolved", + "operationId": "getYamlWithTemplateRefsResolvedV2", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + }, + { + "name": "AppendInputSetValidator", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateApplyRequestDTO" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateApplyRequestDTO" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Gets complete yaml with templateRefs resolved", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateMergeResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateMergeResponse" + } + } + } + } + } + } + }, + "/template/api/templates": { + "post": { + "tags": [ + "Templates" + ], + "summary": "Create a Template", + "operationId": "createTemplate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "storeType", + "in": "query", + "description": "Tells whether the Entity is to be saved on Git or not", + "schema": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + }, + { + "name": "setDefaultTemplate", + "in": "query", + "description": "Specify true if Default Template is to be set", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "comments", + "in": "query", + "description": "Comments", + "schema": { + "type": "string" + } + }, + { + "name": "isNewTemplate", + "in": "query", + "description": "When isNewTemplate flag is set user will not be able to create a new version for an existing template", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "requestBody": { + "description": "Template YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Create Template YAML", + "description": "Sample Template YAML", + "value": "template:\n name: pipelineTemplate\n identifier: pipelineTemplate\n versionLabel: v1\n type: Pipeline\n projectIdentifier: TemplateDemo\n orgIdentifier: default\n tags: {}\n spec:\n stages:\n - stage:\n name: stage1\n identifier: stage1\n description: \"\"\n type: Deployment\n spec:\n deploymentType: Kubernetes\n service:\n serviceRef: <+input>\n serviceInputs: <+input>\n environment:\n environmentRef: <+input>\n deployToAll: false\n environmentInputs: <+input>\n infrastructureDefinitions: <+input>\n execution:\n steps:\n - step:\n type: ShellScript\n name: Shell Script_1\n identifier: ShellScript_1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n rollbackSteps: []\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n" + } + } + }, + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Create": { + "summary": "Sample Create Template YAML", + "description": "Sample Template YAML", + "value": "template:\n name: pipelineTemplate\n identifier: pipelineTemplate\n versionLabel: v1\n type: Pipeline\n projectIdentifier: TemplateDemo\n orgIdentifier: default\n tags: {}\n spec:\n stages:\n - stage:\n name: stage1\n identifier: stage1\n description: \"\"\n type: Deployment\n spec:\n deploymentType: Kubernetes\n service:\n serviceRef: <+input>\n serviceInputs: <+input>\n environment:\n environmentRef: <+input>\n deployToAll: false\n environmentInputs: <+input>\n infrastructureDefinitions: <+input>\n execution:\n steps:\n - step:\n type: ShellScript\n name: Shell Script_1\n identifier: ShellScript_1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n rollbackSteps: []\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns the created Template", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateWrapperResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateWrapperResponse" + } + } + } + } + } + } + }, + "/template/api/templates/{templateIdentifier}/{versionLabel}": { + "delete": { + "tags": [ + "Templates" + ], + "summary": "Delete Template Version", + "operationId": "deleteTemplateVersion", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "path", + "description": "Version Label", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Last Object Id", + "schema": { + "type": "string" + } + }, + { + "name": "comments", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "description": "If true, the Entity will be forced delete, without checking any references/usages", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns true if the Template is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/template/api/templates/{templateIdentifier}": { + "get": { + "tags": [ + "Templates" + ], + "summary": "Get Template", + "operationId": "getTemplate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Version Label", + "schema": { + "type": "string" + } + }, + { + "name": "deleted", + "in": "query", + "description": "Specifies whether Template is deleted or not", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + }, + { + "name": "loadFromFallbackBranch", + "in": "query", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns the saved Template", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateResponse" + } + } + } + } + } + } + }, + "/template/api/templates/templateInputs/{templateIdentifier}": { + "get": { + "tags": [ + "Templates" + ], + "summary": "Gets Template Input Set YAML", + "operationId": "getTemplateInputSetYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Template Label", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "Load-From-Cache", + "in": "header", + "schema": { + "type": "string", + "default": "false" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns the Template Input Set YAML", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/template/api/templates/list-metadata": { + "post": { + "tags": [ + "Templates" + ], + "summary": "Gets all metadata of template list", + "operationId": "getTemplateMetadataList", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 25 + } + }, + { + "name": "sort", + "in": "query", + "description": "Specifies sorting criteria of the list. Like sorting based on the last updated entity, alphabetical sorting in an ascending or descending order", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "description": "The word to be searched and included in the list response", + "schema": { + "type": "string" + } + }, + { + "name": "filterIdentifier", + "in": "query", + "description": "Filter Identifier", + "schema": { + "type": "string" + } + }, + { + "name": "templateListType", + "in": "query", + "description": "Template List Type", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Stable", + "LastUpdated", + "All" + ] + } + }, + { + "name": "includeAllTemplatesAvailableAtScope", + "in": "query", + "description": "Specify true if all accessible Templates are to be included", + "schema": { + "type": "boolean" + } + }, + { + "name": "getDistinctFromBranches", + "in": "query", + "schema": { + "type": "boolean" + } + } + ], + "requestBody": { + "description": "This contains details of Template filters based on Template Types and Template Names ", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateFilterProperties" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateFilterProperties" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns a list of all the metadata of all Templates", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageTemplateMetadataSummaryResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageTemplateMetadataSummaryResponse" + } + } + } + } + } + } + }, + "/template/api/templates/move-config/{templateIdentifier}": { + "post": { + "tags": [ + "Templates" + ], + "summary": "Move Template YAML from inline to remote", + "operationId": "moveTemplateConfigs", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "repoName", + "in": "query", + "description": "Name of the repository.", + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "moveConfigType", + "in": "query", + "description": "Tells weather the entity has to be moved from inline to remote or remote to inline", + "schema": { + "type": "string", + "enum": [ + "INLINE_TO_REMOTE" + ] + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Version Label", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Fetches Template YAML from Harness DB and creates a remote entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateMoveConfigResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateMoveConfigResponse" + } + } + } + } + } + } + }, + "/template/api/templates/update/{templateIdentifier}/{versionLabel}": { + "put": { + "tags": [ + "Templates" + ], + "summary": "Update Template Version", + "operationId": "updateExistingTemplateVersion", + "parameters": [ + { + "name": "If-Match", + "in": "header", + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "path", + "description": "Version Label", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "rootFolder", + "in": "query", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "filePath", + "in": "query", + "description": "File Path of the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "commitMsg", + "in": "query", + "description": "Commit Message to use for the merge commit.", + "schema": { + "type": "string" + } + }, + { + "name": "lastObjectId", + "in": "query", + "description": "Its required field during update call request. It can be fetched from the response of GET API call for the entity", + "schema": { + "type": "string" + } + }, + { + "name": "resolvedConflictCommitId", + "in": "query", + "description": "If the entity is git-synced, this parameter represents the commit id against which file conflicts are resolved", + "schema": { + "type": "string" + } + }, + { + "name": "baseBranch", + "in": "query", + "description": "Name of the default branch.", + "schema": { + "type": "string" + } + }, + { + "name": "connectorRef", + "in": "query", + "description": "Identifier of Connector needed for CRUD operations on the respective Entity", + "schema": { + "type": "string" + } + }, + { + "name": "lastCommitId", + "in": "query", + "description": "last commit id of the file", + "schema": { + "type": "string" + } + }, + { + "name": "isNewBranch", + "in": "query", + "description": "Checks the new branch", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "isHarnessCodeRepo", + "in": "query", + "description": "Is Harness code repo enabled", + "schema": { + "type": "boolean" + } + }, + { + "name": "setDefaultTemplate", + "in": "query", + "description": "Specify true if Default Template is to be set", + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "comments", + "in": "query", + "description": "Comments", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Template YAML", + "content": { + "application/json": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Update Template YAML", + "description": "Sample Template YAML", + "value": "template:\n name: pipelineTemplate\n identifier: pipelineTemplate\n versionLabel: v1\n type: Pipeline\n projectIdentifier: TemplateDemo\n orgIdentifier: default\n tags: {}\n spec:\n stages:\n - stage:\n name: stage1\n identifier: stage1\n description: \"\"\n type: Deployment\n spec:\n deploymentType: Kubernetes\n service:\n serviceRef: <+input>\n serviceInputs: <+input>\n environment:\n environmentRef: <+input>\n deployToAll: false\n environmentInputs: <+input>\n infrastructureDefinitions: <+input>\n execution:\n steps:\n - step:\n type: ShellScript\n name: Shell Script_1\n identifier: ShellScript_1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n rollbackSteps: []\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n" + } + } + }, + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": { + "Update": { + "summary": "Sample Update Template YAML", + "description": "Sample Template YAML", + "value": "template:\n name: pipelineTemplate\n identifier: pipelineTemplate\n versionLabel: v1\n type: Pipeline\n projectIdentifier: TemplateDemo\n orgIdentifier: default\n tags: {}\n spec:\n stages:\n - stage:\n name: stage1\n identifier: stage1\n description: \"\"\n type: Deployment\n spec:\n deploymentType: Kubernetes\n service:\n serviceRef: <+input>\n serviceInputs: <+input>\n environment:\n environmentRef: <+input>\n deployToAll: false\n environmentInputs: <+input>\n infrastructureDefinitions: <+input>\n execution:\n steps:\n - step:\n type: ShellScript\n name: Shell Script_1\n identifier: ShellScript_1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n rollbackSteps: []\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n" + } + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns the updated Template Version", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateWrapperResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateWrapperResponse" + } + } + } + } + } + } + }, + "/template/api/templates/update/git-metadata/{templateIdentifier}/{versionLabel}": { + "post": { + "tags": [ + "Templates" + ], + "summary": "Update git metadata details for a remote template", + "operationId": "updateGitDetails", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "path", + "description": "Version Label", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "This contains details of Git Entity like Git Branch info to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateUpdateGitDetailsRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateUpdateGitDetailsRequest" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Update git metadata details for a remote template", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateUpdateGitDetailsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOTemplateUpdateGitDetailsResponse" + } + } + } + } + } + } + }, + "/template/api/templates/updateStableTemplate/{templateIdentifier}/{versionLabel}": { + "put": { + "tags": [ + "Templates" + ], + "summary": "Update Stable Template Version", + "operationId": "updateStableTemplate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "path", + "description": "Template Identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "path", + "description": "Version Label", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "in": "query", + "description": "Name of the branch.", + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]", + "schema": { + "type": "string" + } + }, + { + "name": "getDefaultFromOtherRepo", + "in": "query", + "description": "if true, return all the default entities", + "schema": { + "type": "boolean" + } + }, + { + "name": "comments", + "in": "query", + "description": "Comments", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateError" + } + } + } + }, + "default": { + "description": "Returns the updated Template Version", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/create-default": { + "post": { + "tags": [ + "Monitored Services" + ], + "operationId": "createDefaultMonitoredService", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}": { + "get": { + "tags": [ + "Monitored Services" + ], + "summary": "Get monitored service data", + "operationId": "getMonitoredService", + "parameters": [ + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Get monitored service data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOMonitoredServiceResponse" + } + } + } + } + } + }, + "put": { + "tags": [ + "Monitored Services" + ], + "summary": "Updates monitored service data", + "operationId": "updateMonitoredService", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/MonitoredService" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Updates monitored service data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseMonitoredServiceResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Monitored Services" + ], + "summary": "Delete monitored service data", + "operationId": "deleteMonitoredService", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Delete monitored service data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/detach-template": { + "put": { + "tags": [ + "Monitored Services" + ], + "summary": "delete template reference from monitored service", + "operationId": "detachMonitoredServiceFromTemplate", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "delete template reference from monitored service", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/all/time-series-health-sources": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getAllMonitoredServicesWithHealthSources", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/anomaliesCount": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "CvgetAnomaliesSummary", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/count-of-services": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getCountOfServices", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/environments": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getEnvironments", + "parameters": [ + { + "name": "accountId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/health-sources": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getHealthSources", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{monitoredServiceIdentifier}/health-sources": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getHealthSourcesForMonitoredServiceIdentifier", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/list": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getList", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifiers", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "offset", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageSize", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "filter", + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/platform/list": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getListV2", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifiers", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "offset", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageSize", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "filter", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Application", + "Infrastructure" + ] + } + }, + { + "name": "hideNotConfiguredServices", + "in": "query", + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/secondary-events": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMSSecondaryEvents", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/secondary-events-details": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMSSecondaryEventsDetails", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secondaryEventType", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Downtime", + "DataCollectionFailure", + "Annotation", + "ErrorBudgetReset", + "SrmAnalysisImpact" + ] + } + }, + { + "name": "identifiers", + "in": "query", + "required": true, + "schema": { + "maxItems": 2147483647, + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{monitoredServiceIdentifier}/change-details": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMonitoredServiceChangeDetails", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "sloIdentifiers", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "startTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{monitoredServiceIdentifier}/service-details": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMonitoredServiceDetails", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/service-details": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMonitoredServiceDetails_1", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + }, + "deprecated": true + } + }, + "/cv/api/monitored-service/service-environment": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMonitoredServiceFromServiceAndEnvironment", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{monitoredServiceIdentifier}/logs": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMonitoredServiceLogs", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "logType", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "ApiCallLog", + "ExecutionLog" + ] + } + }, + { + "name": "errorLogsOnly", + "in": "query", + "schema": { + "type": "boolean" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "healthSources", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/reconciliation-status": { + "get": { + "tags": [ + "Monitored Services" + ], + "summary": "fetch reconciliation status for template referenced monitored services", + "operationId": "getMonitoredServiceReconciliationStatuses", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "query", + "description": "Scoped template identifier used to create the monitored service", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Template version Label", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "fetch reconciliation status for template referenced monitored services", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponsePageResponseMonitoredServiceReference" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/resolved-template-inputs": { + "get": { + "tags": [ + "Monitored Services" + ], + "summary": "get monitored service resolved template inputs", + "operationId": "getMonitoredServiceResolvedTemplateInputs", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "query", + "description": "Scoped template identifier used to create the monitored service", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Template version Label", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "get monitored service resolved template inputs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOString" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/scores": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getMonitoredServiceScore", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/notification-rules": { + "get": { + "tags": [ + "Monitored Services" + ], + "summary": "Get notification rules for MonitoredService", + "operationId": "getNotificationRulesForMonitoredService", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Get notification rules for MonitoredService", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseNotificationRuleResponse" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/overall-health-score": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getOverAllHealthScore", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "duration", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "FOUR_HOURS", + "TWENTY_FOUR_HOURS", + "THREE_DAYS", + "SEVEN_DAYS", + "THIRTY_DAYS" + ] + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "startTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/services": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getServices", + "parameters": [ + { + "name": "accountId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{monitoredServiceIdentifier}/health-source/{healthSourceIdentifier}/slo-metrics": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "getSloMetrics", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "healthSourceIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/reconciliation-required": { + "get": { + "tags": [ + "Monitored Services" + ], + "summary": "check if a template referenced monitored service(s) require reconciliation", + "operationId": "isReconciliationRequiredForMonitoredServices", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "templateIdentifier", + "in": "query", + "description": "Scoped template identifier used to create the monitored service", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "versionLabel", + "in": "query", + "description": "Template version Label", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "query", + "description": "filter to check if reconciliation required for a particular monitored service", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "check if a template referenced monitored service(s) require reconciliation", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOBoolean" + } + } + } + } + } + } + }, + "/cv/api/monitored-service": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "list", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "environmentIdentifiers", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "serviceIdentifier", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "offset", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageSize", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "filter", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "monitoredServiceType", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Application", + "Infrastructure" + ] + } + }, + { + "name": "servicesAtRiskFilter", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + }, + "post": { + "tags": [ + "Monitored Services" + ], + "summary": "Saves monitored service data", + "operationId": "saveMonitoredService", + "parameters": [ + { + "name": "accountId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/MonitoredService" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Saves monitored service data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseMonitoredServiceResponse" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/template-input": { + "post": { + "tags": [ + "Monitored Services" + ], + "summary": "Saves monitored service from template input", + "operationId": "saveMonitoredServiceFromTemplateInput", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Template input yaml for the monitored service creation from given template", + "content": { + "*/*": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Saves monitored service from template input", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseMonitoredServiceResponse" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/yaml": { + "post": { + "tags": [ + "Monitored Services" + ], + "operationId": "saveMonitoredServiceFromYaml", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/health-monitoring-flag": { + "put": { + "tags": [ + "Monitored Services" + ], + "operationId": "setHealthMonitoringFlag", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enable", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/template-input": { + "put": { + "tags": [ + "Monitored Services" + ], + "summary": "Update monitored service from yaml or template", + "operationId": "updateMonitoredServiceFromTemplateInput", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Template input yaml for the monitored service creation from given template", + "content": { + "*/*": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Update monitored service from yaml or template", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseMonitoredServiceResponse" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/{identifier}/yaml": { + "put": { + "tags": [ + "Monitored Services" + ], + "operationId": "updateMonitoredServiceFromYaml", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "type": "string" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/monitored-service/yaml-template": { + "get": { + "tags": [ + "Monitored Services" + ], + "operationId": "yamlTemplate", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "Application", + "Infrastructure" + ] + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/identifier/{identifier}": { + "get": { + "tags": [ + "Downtime" + ], + "operationId": "getDowntime", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + }, + "put": { + "tags": [ + "Downtime" + ], + "operationId": "updateDowntimeData", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Downtime to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Downtime" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Downtime" + ], + "operationId": "deleteDowntimeData", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/monitored-services/{identifier}": { + "get": { + "tags": [ + "Downtime" + ], + "operationId": "getAssociatedMonitoredServices", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/monitored-services": { + "get": { + "tags": [ + "Downtime" + ], + "operationId": "getDowntimeAssociatedMonitoredServices", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/history": { + "get": { + "tags": [ + "Downtime" + ], + "operationId": "getHistory", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "query", + "description": "For filtering on the basis of monitored services' identifiers", + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "For filtering on the basis of name", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/list": { + "get": { + "tags": [ + "Downtime" + ], + "operationId": "listDowntimes", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "query", + "description": "For filtering on the basis of monitored services' identifiers", + "schema": { + "type": "string" + } + }, + { + "name": "filter", + "in": "query", + "description": "For filtering on the basis of name", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime": { + "post": { + "tags": [ + "Downtime" + ], + "operationId": "saveDowntime", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the Downtime to be saved", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Downtime" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/flag/{identifier}": { + "put": { + "tags": [ + "Downtime" + ], + "operationId": "updateDowntimeEnabled", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "enable", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/notification-rule/{identifier}": { + "get": { + "tags": [ + "Srm Notification" + ], + "operationId": "getNotificationRuleData", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + }, + "put": { + "tags": [ + "Srm Notification" + ], + "operationId": "updateNotificationRuleData", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/NotificationRule" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + }, + "delete": { + "tags": [ + "Srm Notification" + ], + "operationId": "deleteNotificationRuleData", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/notification-rule": { + "get": { + "tags": [ + "Srm Notification" + ], + "operationId": "getNotificationRuleData_1", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "notificationRuleIdentifiers", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "pageNumber", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageSize", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + }, + "post": { + "tags": [ + "Srm Notification" + ], + "operationId": "saveNotificationRuleData", + "parameters": [ + { + "name": "accountId", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/NotificationRule" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/environment-identifiers": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "operationId": "getSLOAssociatedEnvironmentIdentifiers", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/monitored-services": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "operationId": "getSLOAssociatedMonitoredServices", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/secondary-events-details": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "operationId": "getSecondaryEventDetails", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "secondaryEventType", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "Downtime", + "DataCollectionFailure", + "Annotation", + "ErrorBudgetReset", + "SrmAnalysisImpact" + ] + } + }, + { + "name": "identifiers", + "in": "query", + "required": true, + "schema": { + "maxItems": 2147483647, + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/secondary-events/{identifier}": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "operationId": "getSecondaryEvents", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "SLO identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/risk-count": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "summary": "Get all SLOs count by risk", + "operationId": "getServiceLevelObjectivesRiskCount", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "userJourneyIdentifiers", + "in": "query", + "description": "For filtering on the basis of user journeys' identifiers", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "query", + "description": "For filtering on the basis of monitored services' identifiers", + "schema": { + "type": "string" + } + }, + { + "name": "targetTypes", + "in": "query", + "description": "For filtering on the basis of target types", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Rolling", + "Calender" + ] + } + } + }, + { + "name": "errorBudgetRisks", + "in": "query", + "description": "For filtering on the basis of error budget risks", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EXHAUSTED", + "UNHEALTHY", + "NEED_ATTENTION", + "OBSERVE", + "HEALTHY" + ] + } + } + }, + { + "name": "filter", + "in": "query", + "description": "For filtering on the basis of name", + "schema": { + "type": "string" + } + }, + { + "name": "sloType", + "in": "query", + "description": "For filtering on the basis of SLO type", + "schema": { + "type": "string", + "enum": [ + "Simple", + "Composite" + ] + } + }, + { + "name": "evaluationType", + "in": "query", + "description": "For filtering on the basis of SLI Evaluation type", + "schema": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + } + }, + { + "name": "evaluationTypes", + "in": "query", + "description": "For filtering on the basis of SLI Evaluation types", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + } + } + }, + { + "name": "envIdentifiers", + "in": "query", + "description": "For Filtering on the basis of environment identifiers", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Get the risk count for all SLOs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSLORiskCountResponse" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/widget/{identifier}/consumption": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "summary": "Get SLO consumption breakdown", + "operationId": "getSloConsumptionBreakdownView", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "SLO identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLO's details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSLOConsumptionBreakdown" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/widget/{identifier}": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "summary": "Get SLO dashboard details", + "operationId": "getSLODetails", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "SLO identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "startTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLO's details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSLODashboardDetail" + } + } + } + } + } + } + }, + "/cv/api/slo-dashboard/widgets/list": { + "get": { + "tags": [ + "SLOs dashboard" + ], + "summary": "Get SLO list view", + "operationId": "getSLOHealthListView", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "userJourneyIdentifiers", + "in": "query", + "description": "For filtering on the basis of user journeys' identifiers", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "monitoredServiceIdentifier", + "in": "query", + "description": "For filtering on the basis of monitored services' identifiers", + "schema": { + "type": "string" + } + }, + { + "name": "targetTypes", + "in": "query", + "description": "For filtering on the basis of target types", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Rolling", + "Calender" + ] + } + } + }, + { + "name": "errorBudgetRisks", + "in": "query", + "description": "For filtering on the basis of error budget risks", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EXHAUSTED", + "UNHEALTHY", + "NEED_ATTENTION", + "OBSERVE", + "HEALTHY" + ] + } + } + }, + { + "name": "filter", + "in": "query", + "description": "For filtering on the basis of name", + "schema": { + "type": "string" + } + }, + { + "name": "sloType", + "in": "query", + "description": "For filtering on the basis of SLO type", + "schema": { + "type": "string", + "enum": [ + "Simple", + "Composite" + ] + } + }, + { + "name": "evaluationType", + "in": "query", + "description": "For filtering on the basis of SLI Evaluation type", + "schema": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + } + }, + { + "name": "evaluationTypes", + "in": "query", + "description": "For filtering on the basis of SLI Evaluation types", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + } + } + }, + { + "name": "envIdentifiers", + "in": "query", + "description": "For Filtering on the basis of environment identifiers", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLOs for list view", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSLOHealthListView" + } + } + } + } + } + }, + "post": { + "tags": [ + "SLOs dashboard" + ], + "summary": "Get SLO list view", + "operationId": "getSLOHealthListViewV2", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SLODashboardApiFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLOs for list view", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSLOHealthListView" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2/identifier/{identifier}": { + "get": { + "tags": [ + "NG SLOs" + ], + "summary": "Get SLO data", + "operationId": "getServiceLevelObjectiveNg", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLO's data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseServiceLevelObjectiveV2Response" + } + } + } + } + } + }, + "put": { + "tags": [ + "NG SLOs" + ], + "summary": "Update SLO data", + "operationId": "updateSLODataNg", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the SLO to be updated", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AbstractServiceLevelObjective" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the updated SLO", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseServiceLevelObjectiveV2Response" + } + } + } + } + } + }, + "delete": { + "tags": [ + "NG SLOs" + ], + "summary": "Delete SLO data", + "operationId": "deleteSLODataNg", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Returns true if the SLO is deleted", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseBoolean" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2/composite-slo/onboarding-graph": { + "post": { + "tags": [ + "NG SLOs" + ], + "summary": "Get onBoarding graph for composite slo", + "operationId": "getOnboardingGraphNg", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Composite SLO spec which consists of list of SLO details", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/CompositeServiceLevelObjectiveSpec" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the time series data points for composite slo onBoarding graph", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseTimeGraphResponse" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2/status-list": { + "post": { + "tags": [ + "NG SLOs" + ], + "summary": "Get SLO list view", + "operationId": "getSLOHealthListViewNg", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "requestBody": { + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SLODashboardApiFilter" + } + } + } + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLOs for list view", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseSLOHealthListView" + } + } + } + } + } + } + }, + "/cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2": { + "get": { + "tags": [ + "NG SLOs" + ], + "summary": "Get all SLOs", + "operationId": "getServiceLevelObjectivesNg", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "offset", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "required": true, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "userJourneys", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "identifiers", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "targetTypes", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Rolling", + "Calender" + ] + } + } + }, + { + "name": "errorBudgetRisks", + "in": "query", + "schema": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EXHAUSTED", + "UNHEALTHY", + "NEED_ATTENTION", + "OBSERVE", + "HEALTHY" + ] + } + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLOs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseServiceLevelObjectiveV2Response" + } + } + } + } + } + }, + "post": { + "tags": [ + "NG SLOs" + ], + "summary": "Saves SLO data", + "operationId": "saveSLODataNg", + "parameters": [ + { + "name": "accountIdentifier", + "in": "path", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "path", + "description": "Organization Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "path", + "description": "Project Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details of the SLO to be saved", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AbstractServiceLevelObjective" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the saved SLO", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseServiceLevelObjectiveV2Response" + } + } + } + } + } + } + }, + "/cv/api/slo/{identifier}/errorBudgetResetHistory": { + "get": { + "tags": [ + "SLOs" + ], + "summary": "Get Error budget reset history", + "operationId": "getErrorBudgetResetHistory", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "SLO identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the error budget reset history", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseListSLOErrorBudgetReset" + } + } + } + } + } + } + }, + "/cv/api/slo/{identifier}/notification-rules": { + "get": { + "tags": [ + "SLOs" + ], + "summary": "Get notification rules for SLO", + "operationId": "getNotificationRulesForSLO", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "SLO identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the notification rules for SLO", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageResponseNotificationRuleResponse" + } + } + } + } + } + } + }, + "/cv/api/slo/{identifier}/logs": { + "get": { + "tags": [ + "SLOs" + ], + "summary": "Get SLO logs", + "operationId": "getServiceLevelObjectiveLogs", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "SLO identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "logType", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "ApiCallLog", + "ExecutionLog" + ] + } + }, + { + "name": "errorLogsOnly", + "in": "query", + "schema": { + "type": "boolean" + } + }, + { + "name": "startTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "endTime", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "pageNumber", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Results per page", + "schema": { + "type": "integer", + "format": "int32", + "default": 10 + } + } + ], + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Gets the SLO's logs", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponsePageResponseCVNGLog" + } + } + } + } + } + } + }, + "/cv/api/slo/{identifier}/resetErrorBudget": { + "post": { + "tags": [ + "SLOs" + ], + "summary": "Reset Error budget history", + "operationId": "resetErrorBudget", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Account Identifier for the Entity.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Organization Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Project Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "description": "SLO identifier for the entity", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Details needed to reset error budget", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/SLOErrorBudgetReset" + } + } + }, + "required": true + }, + "responses": { + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Failure" + } + } + } + }, + "500": { + "description": "Internal Server Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CvError" + } + } + } + }, + "default": { + "description": "Reset Error budget history", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RestResponseSLOErrorBudgetReset" + } + } + } + } + } + } + }, + "/cv/api/v1/orgs/{org}/projects/{project}/metric-graph/{slo-identifier}": { + "get": { + "tags": [ + "ServiceLevelObjective", + "SLOs" + ], + "summary": "Get Metric Graph For SLO", + "description": "Get Underlying Metrics Graph for SLO", + "operationId": "getMetricGraphForSLO", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Organization identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "project", + "in": "path", + "description": "Project identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "slo-identifier", + "in": "path", + "description": "SLO identifier.", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "start_time", + "in": "query", + "description": "Start Time for the metric graphs. ", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "end_time", + "in": "query", + "description": "End Time for the metric graphs.", + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Metric Graph response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MetricGraph" + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + }, + "500": { + "description": "Internal Server Error" + }, + "502": { + "description": "Bad Gateway" + } + }, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/cv/api/v1/orgs/{org}/projects/{project}/slo": { + "get": { + "tags": [ + "ServiceLevelObjective", + "SLOs" + ], + "summary": "List SLOs", + "description": "Returns a list of Service Level Objectives", + "operationId": "listSlo", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Organization identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "project", + "in": "path", + "description": "Project identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items on each page.", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "limit", + "in": "query", + "description": "Pagination: Number of items to return.", + "schema": { + "maximum": 100, + "type": "integer", + "format": "int32", + "default": 20 + } + }, + { + "name": "composite_slo_identifier", + "in": "query", + "description": "Identifier for the Composite SLO for which underlying SLOs needs to be listed.", + "schema": { + "type": "string" + } + }, + { + "name": "monitored_service_identifier", + "in": "query", + "description": "For filtering on the basis of monitored service identifier", + "schema": { + "type": "string" + } + }, + { + "name": "user_journey_identifiers", + "in": "query", + "description": "List of User Journey identifiers on the basis of which the SLOs are filtered.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "filter", + "in": "query", + "description": "SLO Name on the basis of which the SLOs are filtered.", + "schema": { + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "type": "string" + } + }, + { + "name": "slo_type", + "in": "query", + "description": "SLO Types on the basis of which the SLOs are filtered.", + "schema": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + } + }, + { + "name": "env_identifiers", + "in": "query", + "description": "Identifiers of Environments on the basis of which the SLOs are filtered.", + "schema": { + "maxItems": 128, + "minItems": 0, + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "target_types", + "in": "query", + "description": "Target Types on the basis of which the SLOs are filtered.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "error_budget_risks", + "in": "query", + "description": "Error Budgets on the basis of which the SLOs are filtered.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "evaluation_type", + "in": "query", + "description": "Evaluation Type on the basis of which the SLOs are filtered.", + "schema": { + "type": "string" + } + }, + { + "name": "child_resource", + "in": "query", + "description": "For filtering the simple slo's on the basis of accountId. Set it to true for Account Level SLOs.", + "schema": { + "type": "boolean", + "default": false + } + } + ], + "responses": { + "200": { + "description": "SLO List Response body", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SLOHealthListView" + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + }, + "500": { + "description": "Internal Server Error" + }, + "502": { + "description": "Bad Gateway" + } + }, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/cv/api/usage/SRM/active-monitored-services/csv/download": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Download CSV Active Monitored Services report", + "operationId": "downloadActiveMonitoredServiceCSVReport", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64", + "default": 0 + } + } + ], + "responses": { + "default": { + "description": "Download CSV Active Monitored Services report" + } + } + } + }, + "/cv/api/usage/SRM/active-services-monitored/csv/download": { + "get": { + "tags": [ + "Usage" + ], + "summary": "Download CSV Active Services Monitored report", + "operationId": "downloadActiveServiceMonitoredCSVReport", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64", + "default": 0 + } + } + ], + "responses": { + "default": { + "description": "Download CSV Active Services Monitored report" + } + } + } + }, + "/cv/api/usage/CV": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "CvgetLicenseUsage", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "default": { + "description": "default response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSRMLicenseUsageDTO" + } + } + } + } + } + } + }, + "/cv/api/usage/SRM": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "getSRMLicenseUsage", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "responses": { + "default": { + "description": "default response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOSRMLicenseUsageDTO" + } + } + } + } + } + } + }, + "/cv/api/usage/SRM/active-monitored-services": { + "post": { + "tags": [ + "Usage" + ], + "summary": "Returns a List of active monitored services along with identifier,Active Monitored Services Count and other details", + "operationId": "listSRMActiveMonitoredServices", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account Identifier for the Entity.", + "schema": { + "type": "string" + } + }, + { + "name": "page", + "in": "query", + "description": "Page Index of the results to fetch.Default Value: 0", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + }, + { + "name": "size", + "in": "query", + "description": "Results per page", + "schema": { + "maximum": 50, + "type": "integer", + "format": "int32", + "default": 20 + } + }, + { + "name": "sort", + "in": "query", + "description": "Sort criteria for the elements.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "timestamp", + "in": "query", + "schema": { + "type": "integer", + "format": "int64", + "default": 0 + } + } + ], + "requestBody": { + "description": "Details of the Active Services Monitored Filter", + "content": { + "*/*": { + "schema": { + "$ref": "#/components/schemas/ActiveServiceMonitoredFilterParams" + } + } + } + }, + "responses": { + "default": { + "description": "Returns a list of active monitored services", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseDTOPageActiveMonitoredService" + } + } + } + } + } + } + }, + "/gitops/api/filters": { + "get": { + "summary": "List filters", + "description": "List returns a list of filters.", + "operationId": "FilterService_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1FilterList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "filterType", + "description": "Filter type. One of {APPLICATION}", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "FILTER_TYPE_UNSET", + "APPLICATION", + "AGENT", + "CLUSTER", + "REPO" + ], + "default": "FILTER_TYPE_UNSET" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Filters" + ] + }, + "post": { + "summary": "Create a filter", + "description": "CreateFilter creates a filter", + "operationId": "FilterService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Filter" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/v1Filter" + }, + "tags": [ + "Filters" + ] + }, + "put": { + "summary": "Update a filter", + "description": "Update updates a filter", + "operationId": "FilterService_Update", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Filter" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/v1Filter" + }, + "tags": [ + "Filters" + ] + } + }, + "/gitops/api/filters/{identifier}": { + "get": { + "summary": "Get get filter details", + "description": "Get filter details.", + "operationId": "FilterService_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Filter" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "description": "Identifier for the filter.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "filterType", + "description": "Filter type. One of {APPLICATION}", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "FILTER_TYPE_UNSET", + "APPLICATION", + "AGENT", + "CLUSTER", + "REPO" + ], + "default": "FILTER_TYPE_UNSET" + } + } + ], + "tags": [ + "Filters" + ] + }, + "delete": { + "summary": "Delete deletes a filter", + "description": "Delete filter.", + "operationId": "FilterService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "description": "Identifier for the filter.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "filterType", + "description": "Filter type. One of {APPLICATION}", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "FILTER_TYPE_UNSET", + "APPLICATION", + "AGENT", + "CLUSTER", + "REPO" + ], + "default": "FILTER_TYPE_UNSET" + } + } + ], + "tags": [ + "Filters" + ] + } + }, + "/gitops/api/v1/agents": { + "get": { + "description": "List agents.", + "operationId": "AgentServiceForServer_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AgentList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_TYPE_UNSET", + "CONNECTED_ARGO_PROVIDER", + "MANAGED_ARGO_PROVIDER", + "HOSTED_ARGO_PROVIDER" + ], + "default": "AGENT_TYPE_UNSET" + } + }, + { + "name": "tags", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "scope", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_SCOPE_UNSET", + "ACCOUNT", + "ORG", + "PROJECT" + ], + "default": "AGENT_SCOPE_UNSET" + } + }, + { + "name": "drIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sortBy", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "HEALTH_STATUS", + "CONNECTIVITY_STATUS", + "NAMESPACE", + "VERSION" + ], + "default": "SORT_BY_NOT_SET" + } + }, + { + "name": "sortOrder", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_ORDER_NOT_SET", + "ASC", + "DESC" + ], + "default": "SORT_ORDER_NOT_SET" + } + }, + { + "name": "metadataOnly", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "ignoreScope", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "connectedStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "CONNECTED_STATUS_UNSET", + "CONNECTED", + "DISCONNECTED" + ], + "default": "CONNECTED_STATUS_UNSET" + } + }, + { + "name": "healthStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "HEALTH_STATUS_UNSET", + "HEALTHY", + "UNHEALTHY" + ], + "default": "HEALTH_STATUS_UNSET" + } + }, + { + "name": "withCredentials", + "description": "Applicable when trying to retrieve an agent. Set to true to include the credentials for the agent in the response. (Private key may not be included in response if agent is already connected to harness). NOTE: Setting this to true requires the user to have edit permissions on Agent.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "includeSecondary", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + }, + "post": { + "description": "Create agent.", + "operationId": "AgentServiceForServer_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "$ref": "#/components/requestBodies/v1Agent" + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/ns": { + "get": { + "description": "Get agent namespaces.", + "operationId": "AgentServiceForServer_ListNamespaces", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gitopsservicev1NamespaceList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_TYPE_UNSET", + "CONNECTED_ARGO_PROVIDER", + "MANAGED_ARGO_PROVIDER", + "HOSTED_ARGO_PROVIDER" + ], + "default": "AGENT_TYPE_UNSET" + } + }, + { + "name": "tags", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "scope", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_SCOPE_UNSET", + "ACCOUNT", + "ORG", + "PROJECT" + ], + "default": "AGENT_SCOPE_UNSET" + } + }, + { + "name": "drIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sortBy", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "HEALTH_STATUS", + "CONNECTIVITY_STATUS", + "NAMESPACE", + "VERSION" + ], + "default": "SORT_BY_NOT_SET" + } + }, + { + "name": "sortOrder", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_ORDER_NOT_SET", + "ASC", + "DESC" + ], + "default": "SORT_ORDER_NOT_SET" + } + }, + { + "name": "metadataOnly", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "ignoreScope", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "connectedStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "CONNECTED_STATUS_UNSET", + "CONNECTED", + "DISCONNECTED" + ], + "default": "CONNECTED_STATUS_UNSET" + } + }, + { + "name": "healthStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "HEALTH_STATUS_UNSET", + "HEALTHY", + "UNHEALTHY" + ], + "default": "HEALTH_STATUS_UNSET" + } + }, + { + "name": "withCredentials", + "description": "Applicable when trying to retrieve an agent. Set to true to include the credentials for the agent in the response. (Private key may not be included in response if agent is already connected to harness). NOTE: Setting this to true requires the user to have edit permissions on Agent.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "includeSecondary", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/search": { + "post": { + "description": "Search agents.", + "operationId": "AgentServiceForServer_Search", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AgentList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AgentQuery" + } + } + }, + "required": true + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/versions": { + "get": { + "description": "Get agent versions.", + "operationId": "AgentServiceForServer_ListVersions", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1VersionList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_TYPE_UNSET", + "CONNECTED_ARGO_PROVIDER", + "MANAGED_ARGO_PROVIDER", + "HOSTED_ARGO_PROVIDER" + ], + "default": "AGENT_TYPE_UNSET" + } + }, + { + "name": "tags", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "scope", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_SCOPE_UNSET", + "ACCOUNT", + "ORG", + "PROJECT" + ], + "default": "AGENT_SCOPE_UNSET" + } + }, + { + "name": "drIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sortBy", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "HEALTH_STATUS", + "CONNECTIVITY_STATUS", + "NAMESPACE", + "VERSION" + ], + "default": "SORT_BY_NOT_SET" + } + }, + { + "name": "sortOrder", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_ORDER_NOT_SET", + "ASC", + "DESC" + ], + "default": "SORT_ORDER_NOT_SET" + } + }, + { + "name": "metadataOnly", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "ignoreScope", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "connectedStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "CONNECTED_STATUS_UNSET", + "CONNECTED", + "DISCONNECTED" + ], + "default": "CONNECTED_STATUS_UNSET" + } + }, + { + "name": "healthStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "HEALTH_STATUS_UNSET", + "HEALTHY", + "UNHEALTHY" + ], + "default": "HEALTH_STATUS_UNSET" + } + }, + { + "name": "withCredentials", + "description": "Applicable when trying to retrieve an agent. Set to true to include the credentials for the agent in the response. (Private key may not be included in response if agent is already connected to harness). NOTE: Setting this to true requires the user to have edit permissions on Agent.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "includeSecondary", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agent.identifier}": { + "put": { + "summary": "Update agents.", + "description": "This API can be used to update an agent's details in Harness. The following fields will be updated to the new values in the body - \"tags\", \"metadata\"(all nested fields in metadata will be replaced with new provided values including empty/nil values if they're sent), \"description\", \"type\".", + "operationId": "AgentServiceForServer_Update", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agent.identifier", + "description": "The gitops-server generated ID for this gitops-agent", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/v1Agent" + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications": { + "get": { + "summary": "List applications for a specific agent", + "description": "List returns a list of applications for a specific agent.", + "operationId": "AgentApplicationService_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "description": "the application's name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.refresh", + "description": "set to \"normal\" OR \"hard\" if an application refresh is required before fetching.\n\nnormal refresh only if source has changed(commit, helm chart version, etc.)\n\nhard refresh will invalidate all generated manifest caches and force regeneration.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "description": "the project names to restrict returned list applications.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.resourceVersion", + "description": "when specified with a watch call, shows changes that occur after that particular version of a resource.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.selector", + "description": "the selector to to restrict returned list to applications only with matched labels.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "the repoURL to restrict returned list applications.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "fetchFromHarness", + "description": "fetchFromHarness is used in Get Application API to fetch application directly from mongodb instead of from agent. Use in Get Application API to fetch application directly from harness. This is already the fallback if the task times out on Gitops Agent. Use with caution as this may not return the latest state of application.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Applications" + ] + }, + "post": { + "summary": "Create an application", + "description": "Create creates a new application in the specified project.", + "operationId": "AgentApplicationService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Application" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "clusterIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "skipRepoValidation", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "repoIdentifiers", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationCreateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/parent/{query.name}": { + "get": { + "summary": "Get parent application", + "description": "Parent returns a parent application (app of apps or appset) by child name", + "operationId": "AgentApplicationService_Parent", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Application" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "description": "the application's name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.refresh", + "description": "set to \"normal\" OR \"hard\" if an application refresh is required before fetching.\n\nnormal refresh only if source has changed(commit, helm chart version, etc.)\n\nhard refresh will invalidate all generated manifest caches and force regeneration.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "description": "the project names to restrict returned list applications.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.resourceVersion", + "description": "when specified with a watch call, shows changes that occur after that particular version of a resource.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.selector", + "description": "the selector to to restrict returned list to applications only with matched labels.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "the repoURL to restrict returned list applications.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "fetchFromHarness", + "description": "fetchFromHarness is used in Get Application API to fetch application directly from mongodb instead of from agent. Use in Get Application API to fetch application directly from harness. This is already the fallback if the task times out on Gitops Agent. Use with caution as this may not return the latest state of application.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.applicationName}/managed-resources": { + "get": { + "summary": "Get ManagedResources", + "description": "ManagedResources returns list of managed resources.", + "operationId": "AgentApplicationService_ManagedResources", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsManagedResourcesResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.applicationName", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.applicationName}/resource-tree": { + "get": { + "summary": "Get resource tree", + "description": "ResourceTree returns resource tree.", + "operationId": "AgentApplicationService_ResourceTree", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationTree" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.applicationName", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}": { + "get": { + "summary": "Get application", + "description": "Get returns an application by name.", + "operationId": "AgentApplicationService_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Application" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "description": "the application's name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.refresh", + "description": "set to \"normal\" OR \"hard\" if an application refresh is required before fetching.\n\nnormal refresh only if source has changed(commit, helm chart version, etc.)\n\nhard refresh will invalidate all generated manifest caches and force regeneration.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "description": "the project names to restrict returned list applications.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.resourceVersion", + "description": "when specified with a watch call, shows changes that occur after that particular version of a resource.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.selector", + "description": "the selector to to restrict returned list to applications only with matched labels.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "the repoURL to restrict returned list applications.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "fetchFromHarness", + "description": "fetchFromHarness is used in Get Application API to fetch application directly from mongodb instead of from agent. Use in Get Application API to fetch application directly from harness. This is already the fallback if the task times out on Gitops Agent. Use with caution as this may not return the latest state of application.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/events": { + "get": { + "summary": "List resource events", + "description": "ListResourceEvents returns a list of event resources.", + "operationId": "AgentApplicationService_ListResourceEvents", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsEventList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.resourceNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.resourceUID", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/logs": { + "get": { + "summary": "PodLogs returns stream of log entries for the specified pod(s).", + "description": "PodLogs returns stream of log entries for the specified pod(s).", + "operationId": "AgentApplicationService_PodLogs2", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/applicationsLogEntry" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of applicationsLogEntry" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.podName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.container", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sinceSeconds", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "query.tailLines", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.follow", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.untilTime", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.filter", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.previous", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/logs/batch": { + "get": { + "description": "PodLogsBatch returns stream of log entry in batches of upto 1000 entries for the specified pod(s).", + "operationId": "AgentApplicationService_PodLogsBatch2", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/applicationsLogEntriesBatch" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of applicationsLogEntriesBatch" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.podName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.container", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sinceSeconds", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "query.tailLines", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.follow", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.untilTime", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.filter", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.previous", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/manifests": { + "get": { + "summary": "Get application manifest", + "description": "GetManifests returns an application manifests.", + "operationId": "AgentApplicationService_GetManifests", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesManifestResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.revision", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sourcePositions", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string", + "format": "int64" + } + } + }, + { + "name": "query.revisions", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/pods/{query.podName}/logs": { + "get": { + "summary": "PodLogs returns stream of log entries for the specified pod(s).", + "description": "PodLogs returns stream of log entries for the specified pod(s).", + "operationId": "AgentApplicationService_PodLogs", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/applicationsLogEntry" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of applicationsLogEntry" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.podName", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.container", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sinceSeconds", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "query.tailLines", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.follow", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.untilTime", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.filter", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.previous", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/pods/{query.podName}/logs/batch": { + "get": { + "description": "PodLogsBatch returns stream of log entry in batches of upto 1000 entries for the specified pod(s).", + "operationId": "AgentApplicationService_PodLogsBatch", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/applicationsLogEntriesBatch" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of applicationsLogEntriesBatch" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.podName", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.container", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sinceSeconds", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.sinceTime.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.", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "query.tailLines", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "int64" + } + }, + { + "name": "query.follow", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.untilTime", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.filter", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.previous", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/revisions/{query.revision}/metadata": { + "get": { + "summary": "Get revision metadata", + "description": "RevisionMetadata returns metadata for a specific revision of the application.", + "operationId": "AgentApplicationService_RevisionMetadata", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRevisionMetadata" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "description": "the application's name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.revision", + "description": "the revision of the app", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "description": "the application's namespace.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sourceIndex", + "description": "source index (for multi source apps).", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "query.versionId", + "description": "versionId from historical data (for multi source apps).", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/syncwindows": { + "get": { + "summary": "Get sync windows of the application", + "description": "GetApplicationSyncWindows returns sync windows of the application.", + "operationId": "AgentApplicationService_GetApplicationSyncWindows", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSyncWindowsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.application.metadata.name}": { + "put": { + "summary": "Update an application", + "description": "Update updates an application.", + "operationId": "AgentApplicationService_Update", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Application" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.application.metadata.name", + "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", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "clusterIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "repoIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "skipRepoValidation", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "repoIdentifiers", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationUpdateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}": { + "delete": { + "summary": "Delete an application", + "description": "Delete deletes an application.", + "operationId": "AgentApplicationService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.cascade", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "request.propagationPolicy", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "options.removeExistingFinalizers", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Applications" + ] + }, + "patch": { + "summary": "Patch an application", + "description": "Patch applies a patch to an application.", + "operationId": "AgentApplicationService_Patch", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Application" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ApplicationPatchRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/operation": { + "delete": { + "summary": "Terminate operation", + "description": "TerminateOperation terminates the currently running operation.", + "operationId": "AgentApplicationService_TerminateOperation", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsOperationTerminateResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/resource": { + "get": { + "summary": "Get an application resource", + "description": "GetResource returns single application resource.", + "operationId": "AgentApplicationService_GetResource", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationResourceResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + }, + "delete": { + "summary": "Delete resource", + "description": "DeleteResource deletes a single application resource.", + "operationId": "AgentApplicationService_DeleteResource", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.force", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "request.orphan", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "request.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + }, + "post": { + "summary": "Patch an application resource", + "description": "PatchResource patch single application resource.", + "operationId": "AgentApplicationService_PatchResource", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationResourceResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationResourcePatchRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/resource/actions": { + "get": { + "summary": "List resource actions", + "description": "ListResourceActions returns a list of resource actions.", + "operationId": "AgentApplicationService_ListResourceActions", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsResourceActionsListResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + }, + "post": { + "summary": "Run resource action", + "description": "RunResourceAction runs a resource action.", + "operationId": "AgentApplicationService_RunResourceAction", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsResourceActionRunRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/rollback": { + "post": { + "summary": "Rollback syncs an application to its target state", + "description": "Rollback syncs an application to its target state. Harness Event type (rollback).", + "operationId": "AgentApplicationService_Rollback", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Application" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationRollbackRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/rollouts/status": { + "get": { + "description": "Get current status for the given Rollout resource", + "operationId": "RolloutsService_GetRolloutStatus", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1RolloutInfo" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.resourceName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "request.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Rollouts" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/spec": { + "put": { + "summary": "Update application spec", + "description": "UpdateSpec updates an application spec.", + "operationId": "AgentApplicationService_UpdateSpec", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSpec" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationUpdateSpecRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/sync": { + "post": { + "summary": "Sync an application", + "description": "Sync syncs an application to its target state. Harness Event type (deploy)", + "operationId": "AgentApplicationService_Sync", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Application" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSyncRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/appprojectsmapping": { + "get": { + "summary": "Get Harness-Argo project mapping by agent", + "description": "GetAppProjectMappingListByAgent retrieves Harness-Argo project mappings list by agent.", + "operationId": "AppProjectMappingService_GetAppProjectMappingListByAgent", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1AppProjectMapping" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Project mappings" + ] + }, + "post": { + "summary": "Create Harness-Argo project mapping", + "description": "Create creates Harness-Argo project mappings.", + "operationId": "AppProjectMappingService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Empty" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1AppProjectMapping" + } + } + }, + "required": true + }, + "tags": [ + "Project mappings" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/appprojectsmapping/{name}": { + "delete": { + "summary": "Delete Harness-Arog project mapping", + "description": "Delete deletes Harness-Argo project mapping.", + "operationId": "AppProjectMappingService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Empty" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Project mappings" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/certificates": { + "get": { + "summary": "List all available repository certificates", + "description": "List repository certificates.", + "operationId": "AgentCertificateService_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/certificatesRepositoryCertificateList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.hostNamePattern", + "description": "A file-glob pattern (not regular expression) the host name has to match.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.certType", + "description": "The type of the certificate to match (ssh or https).", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.certSubType", + "description": "The sub type of the certificate to match (protocol dependent, usually only used for ssh certs).", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repository Certificates" + ] + }, + "delete": { + "summary": "Delete the certificates that match the RepositoryCertificateQuery", + "description": "Delete repository certificates.", + "operationId": "AgentCertificateService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/certificatesRepositoryCertificateList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.hostNamePattern", + "description": "A file-glob pattern (not regular expression) the host name has to match.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.certType", + "description": "The type of the certificate to match (ssh or https).", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.certSubType", + "description": "The sub type of the certificate to match (protocol dependent, usually only used for ssh certs).", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repository Certificates" + ] + }, + "post": { + "summary": "Creates repository certificates on the server", + "description": "Create repository certificates.", + "operationId": "AgentCertificateService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/certificatesRepositoryCertificateList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/certificatesRepositoryCertificateCreateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Repository Certificates" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/cluster_byname": { + "get": { + "summary": "Get a cluster managed by an agent by name", + "description": "Get a cluster managed by agent using name", + "operationId": "AgentClusterService_GetByName", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Cluster" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "fetchScopePrefixedIdentifier", + "description": "Indicates whether the identifier of cluster fetched must contain harness scope prefix (account./org.)", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Clusters" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/cluster_byurl": { + "get": { + "summary": "Get a cluster managed by an agent by URL", + "description": "Get a cluster managed by agent using URL", + "operationId": "AgentClusterService_GetByUrl", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Cluster" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "server", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "fetchScopePrefixedIdentifier", + "description": "Indicates whether the identifier of cluster fetched must contain harness scope prefix (account./org.)", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Clusters" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/clusters": { + "get": { + "summary": "List returns list of clusters", + "description": "List clusters.", + "operationId": "AgentClusterService_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/clustersClusterList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.server", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.id.type", + "description": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" ).", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.id.value", + "description": "value holds the cluster server URL or cluster name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Clusters" + ] + }, + "post": { + "summary": "Create creates a cluster", + "description": "Create cluster.", + "operationId": "AgentClusterService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Cluster" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/clustersClusterCreateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Clusters" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/clusters/{identifier}": { + "get": { + "summary": "Get returns a cluster by identifier", + "description": "Get cluster.", + "operationId": "AgentClusterService_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Cluster" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.server", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.id.type", + "description": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" ).", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.id.value", + "description": "value holds the cluster server URL or cluster name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Clusters" + ] + }, + "delete": { + "summary": "Delete deletes a cluster", + "description": "Delete cluster.", + "operationId": "AgentClusterService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/clustersClusterResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.server", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.id.type", + "description": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" ).", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.id.value", + "description": "value holds the cluster server URL or cluster name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Clusters" + ] + }, + "put": { + "summary": "Update updates a cluster", + "description": "Update cluster.", + "operationId": "AgentClusterService_Update", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Cluster" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/clustersClusterUpdateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Clusters" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/deploy.yaml": { + "get": { + "description": "GetDeployYaml returns deployment yamls for agents.", + "operationId": "AgentServiceForServer_GetDeployYaml", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "disasterRecoveryIdentifier", + "description": "Disaster Recovery Identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "skipCrds", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "caData", + "description": "Certificate chain for the agent, must be base64 encoded.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.http", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.https", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.username", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.password", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.skipSSLVerify", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "privateKey", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "argocdSettings.enableHelmPathTraversal", + "description": "Controls the Environment variable HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny dot-dot-slash values file paths. Disabled by default for security reasons. This config is pushed as an env variable to the repo-server.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/deployment-spec/helm": { + "post": { + "description": "PostDeployHelmChart returns the Helm Chart for deploying the agents.", + "operationId": "AgentServiceForServer_PostDeployHelmChart", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/octet-stream": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/v1DownloadResponse" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of v1DownloadResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/octet-stream": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/v1AgentYamlQuery" + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/deployment-spec/yaml": { + "post": { + "description": "PostDeployYaml returns deployment yamls for agents.", + "operationId": "AgentServiceForServer_PostDeployYaml", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/v1AgentYamlQuery" + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/gpgkeys": { + "get": { + "summary": "List all available repository certificates", + "description": "List all available repository certificates.", + "operationId": "AgentGPGKeyService_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKeyList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.keyID", + "description": "The GPG key ID to query for.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Clusters" + ] + }, + "post": { + "summary": "Create one or more GPG public keys in the server's configuration", + "description": "Create one or more GPG public keys in the server's configuration.", + "operationId": "AgentGPGKeyService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKeyCreateResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKeyCreateRequest" + } + } + }, + "required": true + }, + "tags": [ + "GnuPGP Keys" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/gpgkeys/{query.keyID}": { + "get": { + "summary": "Get information about specified GPG public key from the server", + "description": "Get information about specified GPG public key from the server.", + "operationId": "AgentGPGKeyService_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKey" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.keyID", + "description": "The GPG key ID to query for", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "GnuPGP Keys" + ] + }, + "delete": { + "summary": "Delete specified GPG public key from the server's configuration", + "description": "Delete specified GPG public key from the server's configuration.", + "operationId": "AgentGPGKeyService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKeyResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.keyID", + "description": "The GPG key ID to query for", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "GnuPGP Keys" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/helm-chart": { + "get": { + "description": "GetDeployHelmChart returns the Helm Chart for deploying the agents.", + "operationId": "AgentServiceForServer_GetDeployHelmChart", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/octet-stream": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/v1DownloadResponse" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of v1DownloadResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/octet-stream": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "disasterRecoveryIdentifier", + "description": "Disaster Recovery Identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "skipCrds", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "caData", + "description": "Certificate chain for the agent, must be base64 encoded.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.http", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.https", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.username", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.password", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.skipSSLVerify", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "privateKey", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "argocdSettings.enableHelmPathTraversal", + "description": "Controls the Environment variable HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny dot-dot-slash values file paths. Disabled by default for security reasons. This config is pushed as an env variable to the repo-server.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/helm-overrides": { + "get": { + "description": "GetDeployOverrides returns the Helm Chart overrides for the agents.", + "operationId": "AgentServiceForServer_GetDeployOverrides", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "disasterRecoveryIdentifier", + "description": "Disaster Recovery Identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "skipCrds", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "caData", + "description": "Certificate chain for the agent, must be base64 encoded.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.http", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.https", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.username", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.password", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.skipSSLVerify", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "privateKey", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "argocdSettings.enableHelmPathTraversal", + "description": "Controls the Environment variable HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny dot-dot-slash values file paths. Disabled by default for security reasons. This config is pushed as an env variable to the repo-server.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + }, + "post": { + "description": "PostDeployOverrides returns the Helm Chart overrides for deploying the agents.", + "operationId": "AgentServiceForServer_PostDeployOverrides", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/v1AgentYamlQuery" + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/hosted/cluster": { + "post": { + "summary": "CreateHosted creates a harness hosted cluster", + "description": "Creates Harness hosted cluster.", + "operationId": "AgentClusterService_CreateHosted", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Cluster" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Clusters" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/operator/yaml": { + "get": { + "description": "GetOperatorYaml returns operator yaml for deploying the agents.", + "operationId": "AgentServiceForServer_GetOperatorYaml", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "disasterRecoveryIdentifier", + "description": "Disaster Recovery Identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "skipCrds", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "caData", + "description": "Certificate chain for the agent, must be base64 encoded.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.http", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.https", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.username", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.password", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "proxy.skipSSLVerify", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "privateKey", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "argocdSettings.enableHelmPathTraversal", + "description": "Controls the Environment variable HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny dot-dot-slash values file paths. Disabled by default for security reasons. This config is pushed as an env variable to the repo-server.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + }, + "post": { + "description": "PostOperatorYaml returns operator yaml for deploying the agents.", + "operationId": "AgentServiceForServer_PostOperatorYaml", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/yaml": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/v1AgentYamlQuery" + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/primaryNode": { + "patch": { + "description": "Set primary disaster recovery node.", + "operationId": "AgentServiceForServer_SetPrimaryNode", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AgentSetPrimaryNodeRequest" + } + } + }, + "required": true + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/projects": { + "get": { + "summary": "List returns list of Argo projects", + "description": "Lists lists Argo projects.", + "operationId": "AgentProjectService_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/appprojectsAppProjectList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Projects" + ] + }, + "post": { + "summary": "Create a new Argo project", + "description": "Create a new Argo project", + "operationId": "AgentProjectService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/appprojectsAppProject" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/projectsProjectCreateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Projects" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/projects/{query.name}": { + "get": { + "summary": "Get returns an Argo project by name", + "description": "Get returns an Argo project by name.", + "operationId": "AgentProjectService_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/appprojectsAppProject" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Projects" + ] + }, + "delete": { + "summary": "Delete deletes an Argo project", + "description": "Delete deletes an Argo project.", + "operationId": "AgentProjectService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/projectsEmptyResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Projects" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/projects/{request.project.metadata.name}": { + "put": { + "summary": "Update updates an Argo project", + "description": "Update updates an Argo project.", + "operationId": "AgentProjectService_Update", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/appprojectsAppProject" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "request.project.metadata.name", + "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", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/projectsProjectUpdateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Projects" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/reconcile/counts": { + "post": { + "summary": "Collect entity counts on cluster via agent", + "description": "Returns number of entities that exist in the cluster on the agent. \nFilter can be used to count only global entities (with empty project) and those specified by the filter.", + "operationId": "ReconcilerService_CollectCounts", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/reconcilerReconcileCountsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/servicev1ReconcilerFilter" + }, + "tags": [ + "Reconciler" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/reconcile/import": { + "post": { + "summary": "Import data from cluster via agent", + "description": "Imports data from cluster via agent. There must be at least one project mapping in the database.\nReturns number of entities imported.", + "operationId": "ReconcilerService_ImportData", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/reconcilerReconcileCountsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/servicev1ReconcilerFilter" + }, + "tags": [ + "Reconciler" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repocreds": { + "post": { + "summary": "Create a new repository credential", + "description": "CreateRepositoryCredentials creates a new repository credential.", + "operationId": "AgentRepositoryCredentialsService_CreateRepositoryCredentials", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1RepositoryCredentials" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/hrepocredsRepoCredsCreateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Repository credentials" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repocreds/get": { + "post": { + "summary": "Get credentials for repository url", + "description": "GetCredentialsForRepositoryUrl returns a repository credential given its url.", + "operationId": "AgentRepositoryCredentialsService_GetCredentialsForRepositoryUrl", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1RepositoryCredentials" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/hrepocredsRepoCredsQuery" + } + } + }, + "required": true + }, + "tags": [ + "Repository credentials" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repocreds/{identifier}": { + "get": { + "summary": "Get repository credential by identifier", + "description": "GetRepositoryCredentials retrieves a repository credential given its identifier.", + "operationId": "AgentRepositoryCredentialsService_GetRepositoryCredentials", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1RepositoryCredentials" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.url", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repoCredsType", + "description": "RepoCreds type - git or helm.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repository credentials" + ] + }, + "delete": { + "summary": "Delete a repository credential", + "description": "DeleteRepositoryCredentials deletes a specific repository credential.", + "operationId": "AgentRepositoryCredentialsService_DeleteRepositoryCredentials", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/hrepocredsRepoCredsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repository credentials" + ] + }, + "put": { + "summary": "Update a repository credential", + "description": "UpdateRepositoryCredentials updates a specific repository credential.", + "operationId": "AgentRepositoryCredentialsService_UpdateRepositoryCredentials", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1RepositoryCredentials" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/hrepocredsRepoCredsUpdateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Repository credentials" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories": { + "get": { + "summary": "ListRepositories gets a list of all configured repositories", + "description": "ListRepositories gets a list of all configured repositories.", + "operationId": "AgentRepositoryService_ListRepositories", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepositoryList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.forceRefresh", + "description": "Whether to force a cache refresh on repo's connection state.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.project", + "description": "The associated project project.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + }, + "post": { + "summary": "CreateRepository creates a new repository configuration", + "description": "CreateRepository creates a new repository configuration.", + "operationId": "AgentRepositoryService_CreateRepository", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Repository" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "repoCredsId", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoCreateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/eso/check": { + "get": { + "summary": "Checks whether External Secrets Operator is installed", + "description": "CheckExternalSecretsOperator Checks whether External Secrets Operator is installed or not", + "operationId": "AgentRepositoryService_CheckExternalSecretsOperator", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesCheckESOResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/eso/generators": { + "get": { + "summary": "Returns a list of ESO generators installed in agent namespace.", + "description": "Returns a list of ESO generators installed in agent namespace.", + "operationId": "AgentRepositoryService_ListESOGenerators", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesESOGeneratorResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "UNSET", + "AWS_ECR", + "GOOGLE_GCR" + ], + "default": "UNSET" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "url", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/oci/type": { + "post": { + "summary": "Returns the Repository type of OCI repo", + "description": "CheckOCIRepoType Returns the Repository type of OCI repo", + "operationId": "AgentRepositoryService_CheckOCIRepoType", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1OCIRepoTypeResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1OCIRepoType" + } + } + }, + "required": true + }, + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/validate": { + "post": { + "summary": "ValidateAccess gets connection state for a repository", + "description": "ValidateAccess gets connection state for a repository.", + "operationId": "AgentRepositoryService_ValidateAccess", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/commonsConnectionState" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoAccessQuery" + } + } + }, + "required": true + }, + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}": { + "get": { + "summary": "Get returns a repository or its credentials", + "description": "Get returns a repository or its credentials.", + "operationId": "AgentRepositoryService_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Repository" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.forceRefresh", + "description": "Whether to force a cache refresh on repo's connection state.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.project", + "description": "The associated project project.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + }, + "delete": { + "summary": "DeleteRepository deletes a repository from the configuration", + "description": "DeleteRepository deletes a repository from the configuration.", + "operationId": "AgentRepositoryService_DeleteRepository", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.forceRefresh", + "description": "Whether to force a cache refresh on repo's connection state.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.project", + "description": "The associated project project.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "forceDelete", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Repositories" + ] + }, + "put": { + "summary": "UpdateRepository updates a repository configuration", + "description": "UpdateRepository updates a repository configuration.", + "operationId": "AgentRepositoryService_UpdateRepository", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Repository" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoUpdateRequest" + } + } + }, + "required": true + }, + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/appdetails": { + "get": { + "summary": "GetAppDetails returns application details by given path", + "description": "GetAppDetails returns application details by given path.", + "operationId": "AgentRepositoryService_GetAppDetails", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoAppDetailsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.repoURL", + "description": "RepoURL is the URL to the repository (Git or Helm) that contains the application manifests.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.path", + "description": "Path is a directory path within the Git repository, and is only valid for applications sourced from Git.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.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.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.valueFiles", + "description": "ValuesFiles is a list of Helm value files to use when generating a template.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.helm.releaseName", + "description": "ReleaseName is the Helm release name to use. If omitted it will use the application name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.values", + "description": "Values specifies Helm values to be passed to helm template, typically defined as a block.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.version", + "description": "Version is the Helm version to use for templating (either \"2\" or \"3\").", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.passCredentials", + "description": "PassCredentials pass credentials to all domains (Helm's --pass-credentials).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.ignoreMissingValueFiles", + "description": "IgnoreMissingValueFiles prevents helm template from failing when valueFiles do not exist locally by not appending them to helm template --values.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.skipCrds", + "description": "SkipCrds skips custom resource definition installation step (Helm's --skip-crds).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.namespace", + "description": "Namespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.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.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.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.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.helm.skipTests", + "description": "SkipTests skips test manifest installation step (Helm's --skip-tests).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.skipSchemaValidation", + "description": "SkipSchemaValidation skips JSON schema validation (Helm's --skip-schema-validation).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.namePrefix", + "description": "NamePrefix is a prefix appended to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.nameSuffix", + "description": "NameSuffix is a suffix appended to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.images", + "description": "Images is a list of Kustomize image override specifications.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.kustomize.version", + "description": "Version controls which version of Kustomize to use for rendering manifests.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.forceCommonLabels", + "description": "ForceCommonLabels specifies whether to force applying common labels to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.forceCommonAnnotations", + "description": "ForceCommonAnnotations specifies whether to force applying common annotations to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.namespace", + "description": "Namespace sets the namespace that Kustomize adds to all resources.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.components", + "description": "Components specifies a list of kustomize components to add to the kustomization before building.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.kustomize.labelWithoutSelector", + "description": "LabelWithoutSelector specifies whether to apply common labels to resource selectors or not.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.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.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.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.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.ksonnet.environment", + "description": "Environment is a ksonnet application environment name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.directory.recurse", + "description": "Recurse specifies whether to scan a directory recursively for manifests.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.directory.jsonnet.libs", + "description": "Additional library search dirs.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.directory.exclude", + "description": "Exclude contains a glob pattern to match paths against that should be explicitly excluded from being used during manifest generation.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.directory.include", + "description": "Include contains a glob pattern to match paths against that should be explicitly included during manifest generation.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.plugin.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.chart", + "description": "Chart is a Helm chart name, and must be specified for applications sourced from a Helm repo.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.ref", + "description": "Ref is reference to another source within sources field. This field will not be used if used with a `source` tag.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.name", + "description": "Name is used to refer to a source and is displayed in the UI. It is used in multi-source Applications.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appProject", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sourceIndex", + "description": "source index (for multi source apps).", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "query.versionId", + "description": "versionId from historical data (for multi source apps).", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/apps": { + "get": { + "summary": "ListApps returns list of apps in the repo", + "description": "ListApps returns list of apps in the repo.", + "operationId": "AgentRepositoryService_ListApps", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoAppsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.revision", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appProject", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/helmcharts": { + "get": { + "summary": "GetHelmCharts returns list of helm charts in the specified repository", + "description": "GetHelmCharts returns list of helm charts in the specified repository.", + "operationId": "AgentRepositoryService_GetHelmCharts", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesHelmChartsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.forceRefresh", + "description": "Whether to force a cache refresh on repo's connection state.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.project", + "description": "The associated project project.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/refs": { + "get": { + "summary": "Returns a list of refs (e.g. branches and tags) in the repo", + "description": "Returns a list of refs (e.g. branches and tags) in the repo.", + "operationId": "AgentRepositoryService_ListRefs", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRefs" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.forceRefresh", + "description": "Whether to force a cache refresh on repo's connection state.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.project", + "description": "The associated project project.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/appdetails": { + "get": { + "summary": "GetAppDetailsByUrl returns application details by given path for repositories by URL", + "description": "GetAppDetails returns application details by given path.", + "operationId": "AgentRepositoryService_GetAppDetailsByUrl", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoAppDetailsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.repoURL", + "description": "RepoURL is the URL to the repository (Git or Helm) that contains the application manifests.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.path", + "description": "Path is a directory path within the Git repository, and is only valid for applications sourced from Git.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.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.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.valueFiles", + "description": "ValuesFiles is a list of Helm value files to use when generating a template.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.helm.releaseName", + "description": "ReleaseName is the Helm release name to use. If omitted it will use the application name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.values", + "description": "Values specifies Helm values to be passed to helm template, typically defined as a block.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.version", + "description": "Version is the Helm version to use for templating (either \"2\" or \"3\").", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.passCredentials", + "description": "PassCredentials pass credentials to all domains (Helm's --pass-credentials).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.ignoreMissingValueFiles", + "description": "IgnoreMissingValueFiles prevents helm template from failing when valueFiles do not exist locally by not appending them to helm template --values.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.skipCrds", + "description": "SkipCrds skips custom resource definition installation step (Helm's --skip-crds).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.namespace", + "description": "Namespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.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.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.helm.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.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.helm.skipTests", + "description": "SkipTests skips test manifest installation step (Helm's --skip-tests).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.helm.skipSchemaValidation", + "description": "SkipSchemaValidation skips JSON schema validation (Helm's --skip-schema-validation).", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.namePrefix", + "description": "NamePrefix is a prefix appended to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.nameSuffix", + "description": "NameSuffix is a suffix appended to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.images", + "description": "Images is a list of Kustomize image override specifications.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.kustomize.version", + "description": "Version controls which version of Kustomize to use for rendering manifests.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.forceCommonLabels", + "description": "ForceCommonLabels specifies whether to force applying common labels to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.forceCommonAnnotations", + "description": "ForceCommonAnnotations specifies whether to force applying common annotations to resources for Kustomize apps.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.namespace", + "description": "Namespace sets the namespace that Kustomize adds to all resources.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.components", + "description": "Components specifies a list of kustomize components to add to the kustomization before building.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.kustomize.labelWithoutSelector", + "description": "LabelWithoutSelector specifies whether to apply common labels to resource selectors or not.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.kustomize.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.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.kustomize.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.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.ksonnet.environment", + "description": "Environment is a ksonnet application environment name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.directory.recurse", + "description": "Recurse specifies whether to scan a directory recursively for manifests.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.source.directory.jsonnet.libs", + "description": "Additional library search dirs.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.source.directory.exclude", + "description": "Exclude contains a glob pattern to match paths against that should be explicitly excluded from being used during manifest generation.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.directory.include", + "description": "Include contains a glob pattern to match paths against that should be explicitly included during manifest generation.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.plugin.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.chart", + "description": "Chart is a Helm chart name, and must be specified for applications sourced from a Helm repo.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.ref", + "description": "Ref is reference to another source within sources field. This field will not be used if used with a `source` tag.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.source.name", + "description": "Name is used to refer to a source and is displayed in the UI. It is used in multi-source Applications.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appProject", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.sourceIndex", + "description": "source index (for multi source apps).", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "query.versionId", + "description": "versionId from historical data (for multi source apps).", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/apps": { + "get": { + "summary": "ListAppsByUrl returns list of apps in the repo", + "description": "ListApps returns list of apps in the repo.", + "operationId": "AgentRepositoryService_ListAppsByUrl", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRepoAppsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.revision", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appProject", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/helmcharts": { + "get": { + "summary": "GetHelmChartsByUrl returns list of helm charts in the repository by URL", + "description": "GetHelmCharts returns list of helm charts in the specified repository.", + "operationId": "AgentRepositoryService_GetHelmChartsByUrl", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesHelmChartsResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.forceRefresh", + "description": "Whether to force a cache refresh on repo's connection state.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.project", + "description": "The associated project project.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/refs": { + "get": { + "summary": "Returns a list of refs (e.g. branches and tags) in the repo by URL", + "description": "Returns a list of refs (e.g. branches and tags) in the repo.", + "operationId": "AgentRepositoryService_ListRefsByUrl", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/repositoriesRefs" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "Repo URL for query.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.forceRefresh", + "description": "Whether to force a cache refresh on repo's connection state.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "query.project", + "description": "The associated project project.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/repository_byurl": { + "get": { + "summary": "Get a repository configured in gitops by URL from Harness", + "description": "Returns a repository by URL ", + "operationId": "AgentRepositoryService_GetByUrl", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1RepoByUrlRespList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Agent.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Agent.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Agent.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "url", + "description": "URL by which to find the repository entity managed by agent.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "fetchScopePrefixedIdentifier", + "description": "Indicates whether the identifier of repo fetched must contain the harness scope prefix such (account./org.)", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/stream/applications": { + "get": { + "summary": "Watch returns stream of application change events", + "description": "Watch returns stream of application change events.", + "operationId": "AgentApplicationService_Watch", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/applicationsApplicationWatchEvent" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of applicationsApplicationWatchEvent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "description": "the application's name.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.refresh", + "description": "set to \"normal\" OR \"hard\" if an application refresh is required before fetching.\n\nnormal refresh only if source has changed(commit, helm chart version, etc.)\n\nhard refresh will invalidate all generated manifest caches and force regeneration.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "description": "the project names to restrict returned list applications.", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "query.resourceVersion", + "description": "when specified with a watch call, shows changes that occur after that particular version of a resource.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.selector", + "description": "the selector to to restrict returned list to applications only with matched labels.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.repo", + "description": "the repoURL to restrict returned list applications.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "fetchFromHarness", + "description": "fetchFromHarness is used in Get Application API to fetch application directly from mongodb instead of from agent. Use in Get Application API to fetch application directly from harness. This is already the fallback if the task times out on Gitops Agent. Use with caution as this may not return the latest state of application.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{agentIdentifier}/stream/applications/{query.applicationName}/resource-tree": { + "get": { + "summary": "WatchResourceTree returns stream of application resource tree", + "description": "WatchResourceTree returns stream of application resource tree.", + "operationId": "AgentApplicationService_WatchResourceTree", + "responses": { + "200": { + "description": "A successful response.(streaming responses)", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/applicationsApplicationTree" + }, + "error": { + "$ref": "#/components/schemas/runtimeStreamError" + } + }, + "title": "Stream result of applicationsApplicationTree" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "query.applicationName", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.group", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.kind", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appNamespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.project", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/agents/{identifier}": { + "get": { + "description": "Get agents.", + "operationId": "AgentServiceForServer_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_TYPE_UNSET", + "CONNECTED_ARGO_PROVIDER", + "MANAGED_ARGO_PROVIDER", + "HOSTED_ARGO_PROVIDER" + ], + "default": "AGENT_TYPE_UNSET" + } + }, + { + "name": "tags", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "scope", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_SCOPE_UNSET", + "ACCOUNT", + "ORG", + "PROJECT" + ], + "default": "AGENT_SCOPE_UNSET" + } + }, + { + "name": "drIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sortBy", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "HEALTH_STATUS", + "CONNECTIVITY_STATUS", + "NAMESPACE", + "VERSION" + ], + "default": "SORT_BY_NOT_SET" + } + }, + { + "name": "sortOrder", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_ORDER_NOT_SET", + "ASC", + "DESC" + ], + "default": "SORT_ORDER_NOT_SET" + } + }, + { + "name": "metadataOnly", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "ignoreScope", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "connectedStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "CONNECTED_STATUS_UNSET", + "CONNECTED", + "DISCONNECTED" + ], + "default": "CONNECTED_STATUS_UNSET" + } + }, + { + "name": "healthStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "HEALTH_STATUS_UNSET", + "HEALTHY", + "UNHEALTHY" + ], + "default": "HEALTH_STATUS_UNSET" + } + }, + { + "name": "withCredentials", + "description": "Applicable when trying to retrieve an agent. Set to true to include the credentials for the agent in the response. (Private key may not be included in response if agent is already connected to harness). NOTE: Setting this to true requires the user to have edit permissions on Agent.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "includeSecondary", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + }, + "delete": { + "description": "Delete agents.", + "operationId": "AgentServiceForServer_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_TYPE_UNSET", + "CONNECTED_ARGO_PROVIDER", + "MANAGED_ARGO_PROVIDER", + "HOSTED_ARGO_PROVIDER" + ], + "default": "AGENT_TYPE_UNSET" + } + }, + { + "name": "tags", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "scope", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_SCOPE_UNSET", + "ACCOUNT", + "ORG", + "PROJECT" + ], + "default": "AGENT_SCOPE_UNSET" + } + }, + { + "name": "drIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sortBy", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "HEALTH_STATUS", + "CONNECTIVITY_STATUS", + "NAMESPACE", + "VERSION" + ], + "default": "SORT_BY_NOT_SET" + } + }, + { + "name": "sortOrder", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_ORDER_NOT_SET", + "ASC", + "DESC" + ], + "default": "SORT_ORDER_NOT_SET" + } + }, + { + "name": "metadataOnly", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "ignoreScope", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "connectedStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "CONNECTED_STATUS_UNSET", + "CONNECTED", + "DISCONNECTED" + ], + "default": "CONNECTED_STATUS_UNSET" + } + }, + { + "name": "healthStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "HEALTH_STATUS_UNSET", + "HEALTHY", + "UNHEALTHY" + ], + "default": "HEALTH_STATUS_UNSET" + } + }, + { + "name": "withCredentials", + "description": "Applicable when trying to retrieve an agent. Set to true to include the credentials for the agent in the response. (Private key may not be included in response if agent is already connected to harness). NOTE: Setting this to true requires the user to have edit permissions on Agent.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "includeSecondary", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{identifier}/credentials": { + "post": { + "description": "Regenerate credentials for agents.", + "operationId": "AgentServiceForServer_RegenerateCredentials", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{identifier}/scale": { + "post": { + "description": "Scale the Hosted agent.", + "operationId": "AgentServiceForServer_Scale", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AgentScaleRequest" + } + } + }, + "required": true + }, + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/agents/{identifier}/unique": { + "get": { + "description": "Unique returns unique agents.", + "operationId": "AgentServiceForServer_Unique", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1UniqueMessage" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_TYPE_UNSET", + "CONNECTED_ARGO_PROVIDER", + "MANAGED_ARGO_PROVIDER", + "HOSTED_ARGO_PROVIDER" + ], + "default": "AGENT_TYPE_UNSET" + } + }, + { + "name": "tags", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "scope", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "AGENT_SCOPE_UNSET", + "ACCOUNT", + "ORG", + "PROJECT" + ], + "default": "AGENT_SCOPE_UNSET" + } + }, + { + "name": "drIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "sortBy", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "HEALTH_STATUS", + "CONNECTIVITY_STATUS", + "NAMESPACE", + "VERSION" + ], + "default": "SORT_BY_NOT_SET" + } + }, + { + "name": "sortOrder", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "SORT_ORDER_NOT_SET", + "ASC", + "DESC" + ], + "default": "SORT_ORDER_NOT_SET" + } + }, + { + "name": "metadataOnly", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "ignoreScope", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "connectedStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "CONNECTED_STATUS_UNSET", + "CONNECTED", + "DISCONNECTED" + ], + "default": "CONNECTED_STATUS_UNSET" + } + }, + { + "name": "healthStatus", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "HEALTH_STATUS_UNSET", + "HEALTHY", + "UNHEALTHY" + ], + "default": "HEALTH_STATUS_UNSET" + } + }, + { + "name": "withCredentials", + "description": "Applicable when trying to retrieve an agent. Set to true to include the credentials for the agent in the response. (Private key may not be included in response if agent is already connected to harness). NOTE: Setting this to true requires the user to have edit permissions on Agent.", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "includeSecondary", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/gitops/api/v1/applications": { + "post": { + "summary": "List applications", + "description": "ListApps retrieves a list of applications.", + "operationId": "ApplicationService_ListApps", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1Applicationlist" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "$ref": "#/components/requestBodies/servicev1ApplicationQuery" + }, + "tags": [ + "Application" + ] + } + }, + "/gitops/api/v1/applications/attributes": { + "get": { + "summary": "List attributes for applications", + "description": "ListAttributes returns a list of attributes for applications", + "operationId": "ApplicationService_ListAttributes", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1ApplicationAttributesList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "applicationIdentifiers", + "description": "List of application identifiers", + "in": "query", + "required": false, + "explode": true, + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applications/bulk/refresh": { + "post": { + "summary": "Bulk refresh multiple applications", + "description": "BulkRefresh refreshes the status of multiple applications at once, optionally performing a hard refresh if refresh is set to hard.", + "operationId": "ApplicationService_BulkRefresh", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationBulkRefreshResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationBulkRefreshRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applications/bulk/sync": { + "post": { + "summary": "Bulk sync multiple applications", + "description": "BulkSync initiates sync for multiple applications to their target states.", + "operationId": "ApplicationService_BulkSync", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationBulkSyncResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationBulkSyncRequest" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applications/multisource": { + "get": { + "summary": "Check if multisource feature is enabled", + "description": "IsMultiSourceEnabled checks if multiple sources for an application feature is enabled", + "operationId": "ApplicationService_IsMultiSourceEnabled", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Enabled" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "disasterRecoveryIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applications/ns": { + "post": { + "summary": "List namespaces for a specific query", + "description": "ListNs retrieves a list of namespaces for a specific query.", + "operationId": "ApplicationService_ListNs", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gitopsservicev1NamespaceList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "$ref": "#/components/requestBodies/servicev1ApplicationQuery" + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applications/sets": { + "get": { + "summary": "List LegacyApplicationSets", + "description": "ListAppSets lists LegacyApplicationSets in the specified project", + "operationId": "ApplicationService_ListAppSets", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1LegacyApplicationSetList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applications/sync": { + "post": { + "summary": "List application sync status", + "description": "ListAppSync returns a list of application sync status", + "operationId": "ApplicationService_ListAppSync", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1ApplicationSyncStatuslist" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1ApplicationSyncStatusQuery" + } + } + }, + "required": true + }, + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applications/{name}/exists": { + "get": { + "summary": "Check if an application exists", + "description": "Exists checks whether an application with the given name exists.", + "operationId": "ApplicationService_Exists", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "name", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Applications" + ] + } + }, + "/gitops/api/v1/applicationset": { + "post": { + "summary": "Update updates an applicationset", + "description": "Update applicationset.", + "operationId": "ApplicationSetService_Create", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ApplicationSet" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/applicationsApplicationSetCreateRequest" + }, + "tags": [ + "ApplicationSet" + ] + }, + "put": { + "summary": "Update updates an applicationset", + "description": "Update existing applicationset.", + "operationId": "ApplicationSetService_Update", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ApplicationSet" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/applicationsApplicationSetCreateRequest" + }, + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/applicationset/generate": { + "post": { + "summary": "Generate child applications from application set", + "description": "Generate child applications from application set.", + "operationId": "ApplicationSetService_Generate", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSetGenerateResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSetGenerateRequest" + } + } + }, + "required": true + }, + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/applicationset/generators": { + "get": { + "summary": "List applicationset generators", + "description": "List applicationset generators", + "operationId": "ApplicationSetService_ListApplicationSetGenerators", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1ApplicationSetGeneratorList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/applicationset/generators/{type}": { + "get": { + "summary": "Get applicationset generator", + "description": "Get applicationset generator", + "operationId": "ApplicationSetService_GetApplicationSetGenerator", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "type", + "in": "path", + "required": true, + "schema": { + "type": "string", + "enum": [ + "GENERATOR_TYPE_NOT_SET", + "LIST", + "CLUSTERS", + "GIT", + "SCM_PROVIDER_GITHUB", + "SCM_PROVIDER_GITLAB", + "SCM_PROVIDER_GITEA", + "SCM_PROVIDER_BITBUCKET", + "SCM_PROVIDER_AZURE", + "SCM_PROVIDER_BITBUCKET_CLOUD", + "SCM_PROVIDER_AWS_CODE_COMMIT", + "DUCK_TYPE", + "PULL_REQUEST_GITHUB", + "PULL_REQUEST_GITLAB", + "PULL_REQUEST_GITEA", + "PULL_REQUEST_BITBUCKET", + "PULL_REQUEST_BITBUCKET_CLOUD", + "PULL_REQUEST_AZURE", + "MATRIX", + "MERGE", + "PLUGIN" + ] + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/applicationset/templates/{type}": { + "get": { + "summary": "Get applicationset template", + "description": "Get applicationset template", + "operationId": "ApplicationSetService_GetApplicationSetTemplate", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "type": "string" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "type", + "in": "path", + "required": true, + "schema": { + "type": "string", + "enum": [ + "GENERATOR_TYPE_NOT_SET", + "LIST", + "CLUSTERS", + "GIT", + "SCM_PROVIDER_GITHUB", + "SCM_PROVIDER_GITLAB", + "SCM_PROVIDER_GITEA", + "SCM_PROVIDER_BITBUCKET", + "SCM_PROVIDER_AZURE", + "SCM_PROVIDER_BITBUCKET_CLOUD", + "SCM_PROVIDER_AWS_CODE_COMMIT", + "DUCK_TYPE", + "PULL_REQUEST_GITHUB", + "PULL_REQUEST_GITLAB", + "PULL_REQUEST_GITEA", + "PULL_REQUEST_BITBUCKET", + "PULL_REQUEST_BITBUCKET_CLOUD", + "PULL_REQUEST_AZURE", + "MATRIX", + "MERGE", + "PLUGIN" + ] + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/applicationset/{identifier}": { + "get": { + "summary": "Get applicationset", + "description": "Returns an applicationset by identifier.", + "operationId": "ApplicationSetService_Get", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ApplicationSet" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "description": "UUID for the Application Set.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "fetchMode", + "description": "Fetch mode for the entity.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "NOT_SET", + "LIVE", + "CACHED" + ], + "default": "NOT_SET" + } + } + ], + "tags": [ + "ApplicationSet" + ] + }, + "delete": { + "summary": "Delete applicationset by id", + "description": "Delete applicationset.", + "operationId": "ApplicationSetService_Delete", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSetResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "description": "UUID for the Application Set.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/applicationset/{identifier}/resource-tree": { + "get": { + "summary": "ResourceTree returns resource tree", + "description": "ResourceTree returns resource tree", + "operationId": "ApplicationSetService_ResourceTree", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSetTree" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "identifier", + "description": "UUID for the Application Set.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "query.appsetNamespace", + "description": "The application set namespace. Default empty is argocd control plane namespace.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/applicationsets": { + "post": { + "summary": "List applicationsets", + "description": "List applicationsets", + "operationId": "ApplicationSetService_List", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ApplicationSetList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1ApplicationSetQuery" + } + } + }, + "required": true + }, + "tags": [ + "ApplicationSet" + ] + } + }, + "/gitops/api/v1/appprojectsmapping": { + "get": { + "summary": "Get Harness-Argo project mappings", + "description": "GetAppProjectMappingList retrieves Harness-Argo project mappings list.", + "operationId": "AppProjectMappingService_GetAppProjectMappingList", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1AppProjectMapping" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Project mappings" + ] + } + }, + "/gitops/api/v1/certificates": { + "get": { + "summary": "List certificates", + "description": "ListCerts retrieves a list of certificates", + "operationId": "CertificateService_ListCerts", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Certificatelist" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "name", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Certificates" + ] + } + }, + "/gitops/api/v1/clusters": { + "post": { + "summary": "List clusters", + "description": "ListClusters returns a list of clusters.", + "operationId": "ClusterService_ListClusters", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Clusterlist" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ClusterQuery" + } + } + }, + "required": true + }, + "tags": [ + "Clusters" + ] + } + }, + "/gitops/api/v1/clusters/exists": { + "get": { + "summary": "Check if a cluster exists", + "description": "Exists checks whether a cluster with the given identifier exists.", + "operationId": "ClusterService_Exists", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "server", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Clusters" + ] + } + }, + "/gitops/api/v1/dashboard/activity": { + "post": { + "summary": "Get recent deployment statistics", + "description": "RecentDeployments returns aggregate statistics of recent deployments.", + "operationId": "DashboardService_RecentDeployments", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1RecentDeploymentsDetailsList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1RecentDeploymentQuery" + } + } + }, + "required": true + }, + "tags": [ + "Dashboard Aggregates" + ] + } + }, + "/gitops/api/v1/dashboard/counts": { + "get": { + "summary": "Get recently created app, cluster, repo counts", + "description": "RecentlyCreatedCounts lists the count of clusters, repositories, and applications created within a specified time period.", + "operationId": "DashboardService_RecentlyCreatedCounts", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1RecentlyCreatedOverview" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "endTime", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "startTime", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Dashboards" + ] + } + }, + "/gitops/api/v1/dashboard/overview": { + "get": { + "summary": "Get dashboard overview", + "description": "GetDashboardOverview provides an overview of the dashboard including key metrics.", + "operationId": "DashboardService_GetDashboardOverview", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1DashboardOverview" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "disasterRecoveryIdentifier", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Dashboards" + ] + } + }, + "/gitops/api/v1/dashboard/topapps": { + "get": { + "summary": "List top 5 most deployed apps", + "description": "TopApplicationPhaseStats lists phase status counts for the top 5 most deployed applications.", + "operationId": "DashboardService_TopApplicationPhaseStats", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1TopApplicationPhaseStatsList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "endTime", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "startTime", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Dashboard Aggregates" + ] + } + }, + "/gitops/api/v1/gpgkeys": { + "get": { + "summary": "List all GPG keys", + "description": "ListGPGKeys retrieves all available GPG public keys.", + "operationId": "GnuPGKeyService_ListGPGKeys", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1GnuPGPublicKeyList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "gnuPG", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "searchTerm", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "GPG Keys" + ] + } + }, + "/gitops/api/v1/repocreds": { + "post": { + "summary": "List repository credentials", + "description": "ListRepositoryCredentials retrieves a list of all repository credentials.", + "operationId": "AgentRepositoryCredentialsService_ListRepositoryCredentials", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1RepositoryCredentialsList" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1RepositoryCredentialsQuery" + } + } + }, + "required": true + }, + "tags": [ + "Repository credentials" + ] + } + }, + "/gitops/api/v1/repositories": { + "get": { + "summary": "List Repositories by repository credential template", + "description": "ListRepositoriesByRepositoryCredentialTemplate lists Repositories by repositories credential template", + "operationId": "RepositoryService_ListRepositoriesByRepositoryCredentialTemplate", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Repositorylist" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "repositoryCredentialURL", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "pageSize", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "pageIndex", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "tags": [ + "Repositories" + ] + }, + "post": { + "summary": "List repositories", + "description": "ListRepositories retrieves a list of all configured repositories.", + "operationId": "RepositoryService_ListRepositories", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Repositorylist" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1RepoListReq" + } + } + }, + "required": true + }, + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v1/repositories/exists": { + "get": { + "summary": "Check if a repository exists", + "description": "Exists checks whether a repository with the given URL exists.", + "operationId": "RepositoryService_Exists", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "url", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Repositories" + ] + } + }, + "/gitops/api/v2/agents/{agentIdentifier}/appprojectsmapping": { + "post": { + "summary": "Create Harness-Argo project mapping V2", + "description": "CreateV2 creates Harness-Argo project mappings.", + "operationId": "AppProjectMappingService_CreateV2", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AppProjectMappingV2" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AppProjectMappingCreateRequestV2" + } + } + }, + "required": true + }, + "tags": [ + "Project mappings" + ] + } + }, + "/gitops/api/v2/agents/{agentIdentifier}/appprojectsmapping/{identifier}": { + "get": { + "summary": "Get Harness-Argo project mapping V2", + "description": "GetAppProjectMappingV2 retrieves Harness-Argo project mapping for the given identifier.", + "operationId": "AppProjectMappingService_GetAppProjectMappingV2", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AppProjectMappingV2" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "description": "app project mapping identifier.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "argoProjectName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Project mappings" + ] + }, + "delete": { + "summary": "Delete Harness-Argo project mapping", + "description": "DeleteV2 deletes Harness-Argo project mappings.", + "operationId": "AppProjectMappingService_DeleteV2", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Empty" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "description": "app project mapping identifier.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "argoProjectName", + "description": "Argo Project name for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Project mappings" + ] + }, + "put": { + "summary": "Update Harness-Argo project mappings V2", + "description": "UpdateV2 updates Harness-Argo project mappings.", + "operationId": "AppProjectMappingService_UpdateV2", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AppProjectMappingV2" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "description": "app project mapping identifier.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AppProjectMappingQueryV2" + } + } + }, + "required": true + }, + "tags": [ + "Project mappings" + ] + } + }, + "/gitops/api/v2/agents/{agentIdentifier}/appprojectsmappings": { + "get": { + "summary": "Get Harness-Argo project mapping list by agent V2", + "description": "GetAppProjectMappingsListByAgentV2 retrieves Harness-Argo project mappings list by agent.", + "operationId": "AppProjectMappingService_GetAppProjectMappingsListByAgentV2", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AppProjectMappingV2List" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "agentIdentifier", + "description": "Agent identifier for entity.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "identifier", + "description": "app project mapping identifier.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "accountIdentifier", + "description": "Account Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "orgIdentifier", + "description": "Organization Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "projectIdentifier", + "description": "Project Identifier for the Entity.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "argoProjectName", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Project mappings" + ] + } + }, + "/gitops/api/v2/versions/agents/upgrade-available": { + "get": { + "description": "Check for version updates.", + "operationId": "VersionUpgradeService_UpgradeAvailableV2", + "responses": { + "200": { + "description": "A successful response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1VersionUpgradeResponse" + } + } + } + }, + "default": { + "description": "An unexpected error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/gatewayruntimeError" + } + } + } + } + }, + "parameters": [ + { + "name": "existingVersion", + "description": "Current Agent Version", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "tags": [ + "Agents" + ] + } + }, + "/pm/api/v1/aida/analyze": { + "post": { + "tags": [ + "aida" + ], + "description": "Describe Policy On Basis of rego", + "operationId": "aida#analyze", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Dolor iusto alias esse sequi." + }, + "example": "Fugit molestiae harum nesciunt non." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnalyzeRequestBody" + }, + "example": { + "entityType": "encryptedJsonData example", + "rego": "query example" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnalyzeResponse" + }, + "example": { + "desc": "policy example", + "status": "SUCCESS" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/aida/generate": { + "post": { + "tags": [ + "aida" + ], + "description": "Generate Policy On Basis of free Text", + "operationId": "aida#generate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Deserunt ab fuga veritatis quo non rerum." + }, + "example": "Sapiente rerum excepturi ut omnis deleniti." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GenerateRequestBody" + }, + "example": { + "policyData": "encryptedJsonData example", + "query": "query example" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicySample" + }, + "example": { + "policy": "policy example", + "status": "SUCCESS" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/dashboard": { + "get": { + "tags": [ + "dashboard" + ], + "description": "Get metrics about policies, policy sets and evaluations", + "operationId": "dashboard#metrics", + "parameters": [ + { + "name": "range", + "in": "query", + "description": "The time period over which to aggregate dashboard data. Can be: 24 hours, 7 days or 30 days", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The time period over which to aggregate dashboard data. Can be: 24 hours, 7 days or 30 days", + "default": "30d", + "example": "30d", + "enum": [ + "24h", + "7d", + "30d" + ] + }, + "example": "30d" + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Consequatur occaecati aut." + }, + "example": "Magni quidem natus." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardMetrics" + }, + "example": { + "aggregates": [ + { + "error": 793292374565649800, + "pass": 7952439296093139000, + "time": 5372466697083487000, + "warning": 1084035802756070100 + }, + { + "error": 793292374565649800, + "pass": 7952439296093139000, + "time": 5372466697083487000, + "warning": 1084035802756070100 + } + ], + "policy_health": { + "total_evaluation_count": 1586567418904594200, + "total_evaluation_entity_count": { + "error": 6575232042203289000, + "pass": 6693795997184111000, + "warning": 6980779131913748000 + }, + "total_policy_count": 1711618585904184300, + "total_policy_set_count": 8265194202066287000, + "total_policy_set_entity_count": { + "Consequatur doloribus voluptatem est.": 7647236864312285000, + "Eum commodi quasi aut sapiente.": 3188015681251562500, + "Necessitatibus quasi ut.": 1215199620673400000 + } + } + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/evaluate": { + "post": { + "tags": [ + "evaluate" + ], + "description": "Evaluate arbitrary rego", + "operationId": "evaluate#evaluate", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Beatae autem." + }, + "example": "Qui vero deleniti." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EvaluateRequestBody" + }, + "example": { + "input": { + "message": "everyone" + }, + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EvaluatedPolicy" + }, + "example": { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + } + } + }, + "400": { + "description": "PolicySetNotFound: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + }, + "example": { + "fault": true, + "id": "123abc", + "identifier": "policy-1", + "message": "parameter 'p' must be an integer", + "name": "bad_request", + "temporary": true, + "timeout": true + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/evaluations": { + "get": { + "tags": [ + "evaluations" + ], + "description": "List evaluations", + "operationId": "evaluations#list", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "per_page", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 50, + "example": 20, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 20 + }, + { + "name": "page", + "in": "query", + "description": "Page number (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "entity", + "in": "query", + "description": "Filter by the entity associated with the evaluation", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by the entity associated with the evaluation", + "example": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e" + }, + "example": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e" + }, + { + "name": "type", + "in": "query", + "description": "Filter by the type associated with the evaluation", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by the type associated with the evaluation", + "example": "pipeline" + }, + "example": "pipeline" + }, + { + "name": "action", + "in": "query", + "description": "Filter by the action associated with the evaluation", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by the action associated with the evaluation", + "example": "onrun" + }, + "example": "onrun" + }, + { + "name": "last_seen", + "in": "query", + "description": "Retrieve results starting after this last-seen result", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Retrieve results starting after this last-seen result", + "example": 123, + "format": "int64" + }, + "example": 123 + }, + { + "name": "created_date_from", + "in": "query", + "description": "Retrieve results created from this date", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Retrieve results created from this date", + "example": 123, + "format": "int64" + }, + "example": 123 + }, + { + "name": "created_date_to", + "in": "query", + "description": "Retrieve results created up to this date", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Retrieve results created up to this date", + "example": 123, + "format": "int64" + }, + "example": 123 + }, + { + "name": "status", + "in": "query", + "description": "Retrieve results with these statuses", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Retrieve results with these statuses", + "example": "pass,warning,error" + }, + "example": "pass,warning,error" + }, + { + "name": "includeChildScopes", + "in": "query", + "description": "When true, evaluations from child scopes will be inculded in the results", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "When true, evaluations from child scopes will be inculded in the results", + "default": false, + "example": true + }, + "example": false + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Voluptatem asperiores magni et iste." + }, + "example": "Dolorum sint voluptatem in." + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "Link": { + "description": "Link-based paging", + "schema": { + "type": "string", + "description": "Link-based paging", + "example": "" + }, + "example": "" + }, + "X-Page-Index": { + "description": "Page number", + "schema": { + "type": "integer", + "description": "Page number", + "example": 4, + "format": "int64" + }, + "example": 4 + }, + "X-Page-Item-Count": { + "description": "Number of results in this page", + "schema": { + "type": "integer", + "description": "Number of results in this page", + "example": 20, + "format": "int64" + }, + "example": 20 + }, + "X-Page-Size": { + "description": "Requested page size", + "schema": { + "type": "integer", + "description": "Requested page size", + "example": 20, + "format": "int64" + }, + "example": 20 + }, + "X-Total-Items": { + "description": "Total results available", + "schema": { + "type": "integer", + "description": "Total results available", + "example": 230, + "format": "int64" + }, + "example": 230 + }, + "X-Total-Pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 12, + "format": "int64" + }, + "example": 12 + } + }, + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Evaluation" + }, + "example": [ + { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + ] + }, + "example": [ + { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + ] + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicySets_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/evaluations/getYaml": { + "get": { + "tags": [ + "evaluations" + ], + "description": "Get entity yaml", + "operationId": "evaluations#getYaml", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "entityIdentifier", + "in": "query", + "description": "Entity identifier", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Entity identifier", + "example": "testPipelineName" + }, + "example": "testPipelineName" + }, + { + "name": "entityType", + "in": "query", + "description": "Entity type", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Entity type", + "example": "pipeline", + "enum": [ + "pipeline" + ] + }, + "example": "pipeline" + }, + { + "name": "validateAsync", + "in": "query", + "description": "Validate Async", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "Validate Async", + "example": true + }, + "example": true + }, + { + "name": "parentEntityConnectorRef", + "in": "query", + "description": "Connector Reference", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Connector Reference", + "example": "github_connector" + }, + "example": "github_connector" + }, + { + "name": "parentEntityRepoName", + "in": "query", + "description": "Repo Name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Repo Name", + "example": "testrepo" + }, + "example": "testrepo" + }, + { + "name": "loadFromFallbackBranch", + "in": "query", + "description": "Load from fall back branch", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "Load from fall back branch", + "example": true + }, + "example": true + }, + { + "name": "branch", + "in": "query", + "description": "Git Branch", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Git Branch", + "example": "main" + }, + "example": "main" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Accusantium minima accusamus laboriosam possimus illo." + }, + "example": "Modi deleniti veniam." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EntityYaml" + }, + "example": { + "yaml": "x: asdf" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/evaluations/{id}": { + "get": { + "tags": [ + "evaluations" + ], + "description": "Find an evaluation by ID", + "operationId": "evaluations#find", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the evaluation to retrieve", + "required": true, + "schema": { + "type": "integer", + "description": "The ID of the evaluation to retrieve", + "example": 123, + "format": "int64" + }, + "examples": { + "default": { + "summary": "default", + "value": 123 + } + } + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Qui et non aut." + }, + "example": "Laborum iusto veniam quidem ut qui." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Evaluation" + }, + "example": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicySets_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/examples": { + "get": { + "tags": [ + "examples" + ], + "description": "list examples", + "operationId": "examples#list", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Mollitia odio molestiae qui sed aperiam eos." + }, + "example": "Voluptas fuga." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyExample" + }, + "example": [ + { + "desc": "This is a pipeline example", + "input": "{\"message\": \"everyone\"}", + "name": "Pipeline example", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}", + "type": "pipeline", + "variables": [ + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + } + ] + }, + { + "desc": "This is a pipeline example", + "input": "{\"message\": \"everyone\"}", + "name": "Pipeline example", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}", + "type": "pipeline", + "variables": [ + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + } + ] + } + ] + }, + "example": [ + { + "desc": "This is a pipeline example", + "input": "{\"message\": \"everyone\"}", + "name": "Pipeline example", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}", + "type": "pipeline", + "variables": [ + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + } + ] + }, + { + "desc": "This is a pipeline example", + "input": "{\"message\": \"everyone\"}", + "name": "Pipeline example", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}", + "type": "pipeline", + "variables": [ + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + } + ] + } + ] + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/policies": { + "get": { + "tags": [ + "policies" + ], + "description": "List all policies", + "operationId": "policies#list", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "per_page", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 50, + "example": 20, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 20 + }, + { + "name": "page", + "in": "query", + "description": "Page number (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "identifierFilter", + "in": "query", + "description": "Comma separated List of Identifiers to filter on", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Comma separated List of Identifiers to filter on", + "default": "", + "example": "test-projectId1, test-projectId2" + }, + "example": "test-projectId1, test-projectId2" + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter results by partial name match", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by partial name match", + "default": "", + "example": "poli" + }, + "example": "poli" + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "name,ASC", + "example": "name,DESC", + "enum": [ + "name,ASC", + "name,DESC", + "updated,ASC", + "updated,DESC" + ] + }, + "example": "updated,ASC" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Sit explicabo." + }, + "example": "Error incidunt eligendi quisquam." + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "Link": { + "description": "Link-based paging", + "schema": { + "type": "string", + "description": "Link-based paging", + "example": "" + }, + "example": "" + }, + "X-Page-Index": { + "description": "Page number", + "schema": { + "type": "integer", + "description": "Page number", + "example": 4, + "format": "int64" + }, + "example": 4 + }, + "X-Page-Item-Count": { + "description": "Number of results in this page", + "schema": { + "type": "integer", + "description": "Number of results in this page", + "example": 20, + "format": "int64" + }, + "example": 20 + }, + "X-Page-Size": { + "description": "Requested page size", + "schema": { + "type": "integer", + "description": "Requested page size", + "example": 20, + "format": "int64" + }, + "example": 20 + }, + "X-Total-Items": { + "description": "Total results available", + "schema": { + "type": "integer", + "description": "Total results available", + "example": 230, + "format": "int64" + }, + "example": 230 + }, + "X-Total-Pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 12, + "format": "int64" + }, + "example": 12 + } + }, + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyManagementPolicy" + }, + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + } + ] + }, + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + } + ] + } + } + }, + "400": { + "description": "GitError: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + }, + "example": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + }, + "post": { + "tags": [ + "policies" + ], + "description": "Create a policy", + "operationId": "policies#create", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "git_commit_msg", + "in": "query", + "description": "The commit message used in git when creating the policy", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The commit message used in git when creating the policy", + "example": "harness policy commit msg" + }, + "example": "harness policy commit msg" + }, + { + "name": "git_import", + "in": "query", + "description": "A flag to determine if the api should try and import and existing policy from git", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "A flag to determine if the api should try and import and existing policy from git", + "example": true + }, + "example": true + }, + { + "name": "git_branch", + "in": "query", + "description": "The git branch the policy will be created in", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The git branch the policy will be created in", + "example": "main" + }, + "example": "main" + }, + { + "name": "git_is_new_branch", + "in": "query", + "description": "A flag to determine if the api should try and commit to a new branch", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "A flag to determine if the api should try and commit to a new branch", + "example": true + }, + "example": true + }, + { + "name": "git_base_branch", + "in": "query", + "description": "If committing to a new branch, git_base_branch tells the api which branch to base the new branch from", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "If committing to a new branch, git_base_branch tells the api which branch to base the new branch from", + "example": "main" + }, + "example": "main" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Deleniti dolorum natus aut." + }, + "example": "Quia et sed." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRequestBody" + }, + "example": { + "git_connector_ref": ".", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo", + "identifier": "policy-1", + "name": "Check that an approval step is present", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementPolicy" + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + } + } + } + }, + "400": { + "description": "GitError: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + }, + "example": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_create" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/policies/{identifier}": { + "delete": { + "tags": [ + "policies" + ], + "description": "Delete a policy by identifier", + "operationId": "policies#delete", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the policy", + "required": true, + "schema": { + "type": "string", + "description": "Identifier of the policy", + "example": "policy-1", + "minLength": 1 + }, + "examples": { + "default": { + "summary": "default", + "value": "policy-1" + } + } + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Sed tenetur." + }, + "example": "Necessitatibus excepturi et." + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "GitError: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + }, + "example": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_delete" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + }, + "get": { + "tags": [ + "policies" + ], + "description": "Find a policy by identifier", + "operationId": "policies#find", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "git_branch", + "in": "query", + "description": "The git branch the policy resides in", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The git branch the policy resides in", + "example": "main" + }, + "example": "main" + }, + { + "name": "show_summary", + "in": "query", + "description": "Setting to true returns the metadata about the\n\t\t\t requested policy including the information held about the status of this policy in the default branch.\n\t\t\t git_branch is ignored as no git operation takes place.", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "Setting to true returns the metadata about the\n\t\t\t requested policy including the information held about the status of this policy in the default branch.\n\t\t\t git_branch is ignored as no git operation takes place.", + "example": true + }, + "example": true + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the policy to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "Identifier of the policy to retrieve", + "example": "policy-1", + "minLength": 1 + }, + "examples": { + "default": { + "summary": "default", + "value": "policy-1" + } + } + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Deleniti nulla." + }, + "example": "Odio aut id consequatur." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementPolicy" + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + } + } + } + }, + "400": { + "description": "GitError: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + }, + "example": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + }, + "patch": { + "tags": [ + "policies" + ], + "description": "Update a policy by identifier", + "operationId": "policies#update", + "parameters": [ + { + "name": "git_commit_msg", + "in": "query", + "description": "The commit message used in git when creating the policy", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The commit message used in git when creating the policy", + "example": "harness policy commit msg" + }, + "example": "harness policy commit msg" + }, + { + "name": "git_is_new_branch", + "in": "query", + "description": "A flag to determine if the api should try and commit to a new branch", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "A flag to determine if the api should try and commit to a new branch", + "example": true + }, + "example": true + }, + { + "name": "git_base_branch", + "in": "query", + "description": "If committing to a new branch, git_base_branch tells the api which branch to base the new branch from", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "If committing to a new branch, git_base_branch tells the api which branch to base the new branch from", + "example": "main" + }, + "example": "main" + }, + { + "name": "git_branch", + "in": "query", + "description": "The git branch the policy resides in", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The git branch the policy resides in", + "example": "main" + }, + "example": "main" + }, + { + "name": "git_commit_sha", + "in": "query", + "description": "The existing commit sha of the file being updated", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The existing commit sha of the file being updated", + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + { + "name": "git_file_id", + "in": "query", + "description": "The existing file id of the file being updated, not required for bitbucket files", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The existing file id of the file being updated, not required for bitbucket files", + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the policy", + "required": true, + "schema": { + "type": "string", + "description": "Identifier of the policy", + "example": "policy-1" + }, + "example": "policy-1" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Aliquam dicta." + }, + "example": "Ipsum ducimus." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateRequestBody" + }, + "example": { + "name": "Check that an approval step is present", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + } + } + } + }, + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "GitError: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + }, + "example": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicy_edit" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/policysets": { + "get": { + "tags": [ + "policysets" + ], + "description": "List all policy sets", + "operationId": "policysets#list", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "per_page", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 50, + "example": 20, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 20 + }, + { + "name": "page", + "in": "query", + "description": "Page number (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "identifierFilter", + "in": "query", + "description": "Comma separated List of Identifiers to filter on", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Comma separated List of Identifiers to filter on", + "default": "", + "example": "test-projectId1, test-projectId2" + }, + "example": "test-projectId1, test-projectId2" + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter results by partial name match", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by partial name match", + "default": "", + "example": "poli" + }, + "example": "poli" + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "name,ASC", + "example": "updated,DESC", + "enum": [ + "name,ASC", + "name,DESC", + "updated,ASC", + "updated,DESC" + ] + }, + "example": "updated,DESC" + }, + { + "name": "type", + "in": "query", + "description": "Filter results by type", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by type", + "example": "pipeline", + "minLength": 1 + }, + "example": "pipeline" + }, + { + "name": "action", + "in": "query", + "description": "Filter results by action", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by action", + "example": "onrun", + "minLength": 1 + }, + "example": "onrun" + }, + { + "name": "yaml_version", + "in": "query", + "description": "Harness yaml version associated with this policySet", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness yaml version associated with this policySet", + "default": "0", + "example": "0", + "enum": [ + "0", + "1" + ] + }, + "example": "0" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Quas aspernatur aperiam sit." + }, + "example": "Laborum tempore maiores illum corrupti quas." + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "Link": { + "description": "Link-based paging", + "schema": { + "type": "string", + "description": "Link-based paging", + "example": "" + }, + "example": "" + }, + "X-Page-Index": { + "description": "Page number", + "schema": { + "type": "integer", + "description": "Page number", + "example": 4, + "format": "int64" + }, + "example": 4 + }, + "X-Page-Item-Count": { + "description": "Number of results in this page", + "schema": { + "type": "integer", + "description": "Number of results in this page", + "example": 20, + "format": "int64" + }, + "example": 20 + }, + "X-Page-Size": { + "description": "Requested page size", + "schema": { + "type": "integer", + "description": "Requested page size", + "example": 20, + "format": "int64" + }, + "example": 20 + }, + "X-Total-Items": { + "description": "Total results available", + "schema": { + "type": "integer", + "description": "Total results available", + "example": 230, + "format": "int64" + }, + "example": 230 + }, + "X-Total-Pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 12, + "format": "int64" + }, + "example": 12 + } + }, + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyManagementPolicySet" + }, + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + } + ] + }, + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + } + ] + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicySets_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + }, + "post": { + "tags": [ + "policysets" + ], + "description": "Create a policy set", + "operationId": "policysets#create", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Rem veritatis fugit quia." + }, + "example": "Accusamus aut sit." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRequestBody2" + }, + "example": { + "action": "onrun", + "description": "Captures critical production policies", + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "type": "pipeline", + "yaml_version": "0" + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementPolicySet" + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Rerum ut in non voluptas.", + "created": 6314309071949452000, + "identifier": "Illo eaque.", + "name": "Eius illum.", + "org_id": "Natus autem inventore ut ea voluptates sunt.", + "project_id": "Error et rerum nam." + }, + { + "account_id": "Rerum ut in non voluptas.", + "created": 6314309071949452000, + "identifier": "Illo eaque.", + "name": "Eius illum.", + "org_id": "Natus autem inventore ut ea voluptates sunt.", + "project_id": "Error et rerum nam." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicySets_create" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/policysets/{identifier}": { + "delete": { + "tags": [ + "policysets" + ], + "description": "Delete a policy set by identifier", + "operationId": "policysets#delete", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the policy set", + "required": true, + "schema": { + "type": "string", + "description": "Identifier of the policy set", + "example": "policyset-1", + "minLength": 1 + }, + "examples": { + "default": { + "summary": "default", + "value": "policyset-1" + } + } + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Iste adipisci harum." + }, + "example": "Quis est ut numquam consequatur voluptatem velit." + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicySets_delete" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + }, + "get": { + "tags": [ + "policysets" + ], + "description": "Find a policy set by identifier", + "operationId": "policysets#find", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the policy set to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "Identifier of the policy set to retrieve", + "example": "policyset-1", + "minLength": 1 + }, + "examples": { + "default": { + "summary": "default", + "value": "policyset-1" + } + } + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Ducimus dolores cumque impedit." + }, + "example": "Hic vel." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementPolicySet" + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Rerum ut in non voluptas.", + "created": 6314309071949452000, + "identifier": "Illo eaque.", + "name": "Eius illum.", + "org_id": "Natus autem inventore ut ea voluptates sunt.", + "project_id": "Error et rerum nam." + }, + { + "account_id": "Rerum ut in non voluptas.", + "created": 6314309071949452000, + "identifier": "Illo eaque.", + "name": "Eius illum.", + "org_id": "Natus autem inventore ut ea voluptates sunt.", + "project_id": "Error et rerum nam." + }, + { + "account_id": "Rerum ut in non voluptas.", + "created": 6314309071949452000, + "identifier": "Illo eaque.", + "name": "Eius illum.", + "org_id": "Natus autem inventore ut ea voluptates sunt.", + "project_id": "Error et rerum nam." + }, + { + "account_id": "Rerum ut in non voluptas.", + "created": 6314309071949452000, + "identifier": "Illo eaque.", + "name": "Eius illum.", + "org_id": "Natus autem inventore ut ea voluptates sunt.", + "project_id": "Error et rerum nam." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicySets_view" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + }, + "patch": { + "tags": [ + "policysets" + ], + "description": "Update a policy set by identifier", + "operationId": "policysets#update", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Harness account ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness account ID", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + { + "name": "orgIdentifier", + "in": "query", + "description": "Harness organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness organization ID", + "default": "", + "example": "test-org" + }, + "example": "test-org" + }, + { + "name": "projectIdentifier", + "in": "query", + "description": "Harness project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness project ID", + "default": "", + "example": "test-project" + }, + "example": "test-project" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier of the policy set", + "required": true, + "schema": { + "type": "string", + "description": "Identifier of the policy set", + "example": "policyset-1" + }, + "example": "policyset-1" + }, + { + "name": "x-api-key", + "in": "header", + "description": "Harness PAT key used to perform authorization", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness PAT key used to perform authorization", + "example": "Non illum necessitatibus facere ullam suscipit nisi." + }, + "example": "Non enim culpa sint eum." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateRequestBody2" + }, + "example": { + "action": "onrun", + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_scope", + "name": "Production Policies", + "policies": [ + { + "identifier": "policy-1", + "severity": "warning" + }, + { + "identifier": "policy-1", + "severity": "warning" + } + ], + "resource_groups": [ + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + }, + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + }, + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + }, + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + } + ], + "type": "pipeline" + } + } + } + }, + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + }, + "security": [ + { + "jwt_header_Authorization": [ + "core_governancePolicySets_edit" + ] + }, + { + "api_key_header_x-api-key": [] + } + ] + } + }, + "/pm/api/v1/system/health": { + "get": { + "tags": [ + "system" + ], + "description": "Check service health", + "operationId": "system#health", + "responses": { + "204": { + "description": "No Content response." + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + } + } + }, + "/pm/api/v1/system/version": { + "get": { + "tags": [ + "system" + ], + "description": "Check service version", + "operationId": "system#version", + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceVersion" + }, + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "version": "v0.123.0" + } + } + } + }, + "500": { + "description": "InternalServer: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + }, + "502": { + "description": "BadGateway: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyManagementError" + } + } + } + } + } + } + }, + "/dashboard/api/dashboards/{dashboard_id}/download": { + "get": { + "tags": [ + "dashboards" + ], + "description": "Download the data of all tiles within a Dashboard.", + "summary": "Download data within a Dashboard", + "operationId": "get_dashboard_data", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "file_type", + "schema": { + "type": "string", + "enum": [ + "csv" + ] + }, + "required": true + }, + { + "in": "query", + "name": "filters", + "schema": { + "type": "string" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns files of a specified type within a ZIP file for each tile within a Dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardDownloadResponse" + } + } + } + }, + "400": { + "description": "Please specify a valid File Type.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "404": { + "description": "Dashboard not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/dashboards/{dashboard_id}/elements": { + "get": { + "tags": [ + "dashboards" + ], + "description": "Get all elements within a dashboard by ID.", + "operationId": "get_dashboard_elements", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns all of the elements within a dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetDashboardElementsResponse" + } + } + } + }, + "404": { + "description": "Dashboard or dashboard elements not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/dashboards/{dashboard_id}/filters": { + "get": { + "tags": [ + "dashboards" + ], + "description": "Get all filters within a dashboard by ID.", + "operationId": "get_dashboard_filters", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns all of the filters within a dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetDashboardFiltersResponse" + } + } + } + }, + "404": { + "description": "Dashboard or dashboard filters not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/clone": { + "post": { + "tags": [ + "dashboards" + ], + "description": "Clone a dashboard.", + "operationId": "clone_dashboard", + "parameters": [ + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "requestBody": { + "description": "Clone a Dashboard", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CloneDashboardRequestBody" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created dashboard's details.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ClonedDashboardResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/dashboards/{dashboard_id}": { + "get": { + "tags": [ + "dashboards" + ], + "description": "Get all details of a dashboard by ID.", + "operationId": "get_dashboard", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns the details of a dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetDashboardResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/": { + "patch": { + "tags": [ + "dashboards" + ], + "description": "Update a dashboards name, tags or folder.", + "operationId": "update_dashboard", + "parameters": [ + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "requestBody": { + "description": "Update dashboard fields.", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateDashboardRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the updated fields of the dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateDashboardResponse" + } + } + } + } + } + } + }, + "/dashboard/remove": { + "delete": { + "tags": [ + "dashboards" + ], + "description": "Delete a dashboard.", + "operationId": "delete_dashboard", + "parameters": [ + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + }, + { + "in": "query", + "name": "folderId", + "schema": { + "type": "string" + }, + "required": true + } + ], + "requestBody": { + "description": "Delete a Dashboard by ID.", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteDashboardRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns if Dashboard deletion was successful.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteDashboardResponse" + } + } + } + } + } + } + }, + "/dashboard/folders": { + "post": { + "tags": [ + "folders" + ], + "description": "Create a new folder.", + "operationId": "create_folder", + "parameters": [ + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "requestBody": { + "description": "Create a new folder", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateFolderRequestBody" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the newly created folder's details.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetFolderResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/folders/{folder_id}": { + "get": { + "tags": [ + "folders" + ], + "description": "Get a folder by ID.", + "operationId": "get_folder", + "parameters": [ + { + "in": "path", + "name": "folder_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns the folder details.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetFolderResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + }, + "patch": { + "tags": [ + "folders" + ], + "description": "Update a folder's name.", + "operationId": "update_folder", + "parameters": [ + { + "in": "path", + "name": "folder_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "requestBody": { + "description": "Change the name of a folder", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateFolderRequestBody" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the updated folder.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetFolderResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + }, + "delete": { + "tags": [ + "folders" + ], + "description": "Delete a folder along with any dashboards it contains.", + "operationId": "delete_folder", + "parameters": [ + { + "in": "path", + "name": "folder_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns the deleted folder.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetFolderResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/dashboards/{dashboard_id}/filters/{filter_id}": { + "patch": { + "tags": [ + "dashboards" + ], + "description": "Update a specific filter within a dashboard by ID.", + "operationId": "update_dashboard_filter", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "path", + "name": "filter_id", + "schema": { + "type": "string" + }, + "required": true + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateDashboardFilterRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Returns the updated dashboard filter.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetDashboardFilterResponse" + } + } + } + }, + "400": { + "description": "Bad request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "403": { + "description": "User does not have permission to update this dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "404": { + "description": "Dashboard or dashboard filter not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/download/dashboards/{dashboard_id}/csv": { + "get": { + "tags": [ + "dashboards" + ], + "description": "Download a Dashboard in CSV format.", + "summary": "Download a Dashboard CSV", + "operationId": "get_dashboard_download_csv", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + }, + { + "in": "query", + "name": "filters", + "schema": { + "type": "string" + }, + "required": false + }, + { + "in": "query", + "name": "expanded_tables", + "schema": { + "type": "boolean" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns a zip of CSV files containing raw data of each tile within a Dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DownloadCsvDashboardResponse" + } + } + } + }, + "400": { + "description": "Download Task has failed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "404": { + "description": "Dashboard not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "504": { + "description": "Querying Dashboard to build CSV has timed out.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/download/dashboards/{dashboard_id}/pdf": { + "get": { + "tags": [ + "dashboards" + ], + "description": "Download a Dashboard in PDF format.", + "summary": "Download a Dashboard PDF", + "operationId": "get_dashboard_download_pdf", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + }, + { + "in": "query", + "name": "filters", + "schema": { + "type": "string" + }, + "required": false + }, + { + "in": "query", + "name": "expanded_tables", + "schema": { + "type": "boolean" + }, + "required": false + }, + { + "in": "query", + "name": "landscape", + "schema": { + "type": "boolean" + }, + "required": false + }, + { + "in": "query", + "name": "paper_size", + "schema": { + "type": "string", + "enum": [ + "letter", + "legal", + "tabloid", + "a0", + "a1", + "a2", + "a3", + "a4", + "a5" + ] + }, + "required": false + }, + { + "in": "query", + "name": "style", + "schema": { + "type": "string", + "enum": [ + "single_column", + "tiled" + ] + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Returns a PDF file containing the visualization of a Dashboard.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DownloadPdfDashboardResponse" + } + } + } + }, + "400": { + "description": "Render Task has failed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "403": { + "description": "Forbidden.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "404": { + "description": "Dashboard not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "504": { + "description": "Render Task has timed out.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/schedules/run_once": { + "post": { + "tags": [ + "dashboards" + ], + "description": "Run a schedule delivery once", + "summary": "Runs a schedule delivery once that is then immediately sent via email to recipients", + "operationId": "schedules_run_once", + "parameters": [ + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + } + ], + "requestBody": { + "description": "Run a Dashboard Schedule Delivery once", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScheduleReportRequestBody" + } + } + } + }, + "responses": { + "200": { + "description": "A successful request does not necessarily mean successful delivery of emails", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScheduleReportResponse" + } + } + } + }, + "400": { + "description": "Please specify a valid File Type.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "404": { + "description": "Dashboard not found.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/download/tasks/{task_id}": { + "get": { + "tags": [ + "downloads" + ], + "description": "Get the current status of a download task", + "operationId": "get_download_task_status", + "parameters": [ + { + "in": "path", + "name": "task_id", + "schema": { + "type": "string" + }, + "required": true, + "description": "ID of the download task to check" + } + ], + "responses": { + "200": { + "description": "Task status retrieved successfully", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DownloadQueryTaskResponse" + } + } + } + }, + "404": { + "description": "Task not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "429": { + "description": "Rate limit exceeded", + "headers": { + "Retry-After": { + "schema": { + "type": "integer" + }, + "description": "Number of seconds to wait before retrying" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/dashboard/download/dashboards/{dashboard_id}/dashboard_elements/{dashboard_element_id}": { + "post": { + "tags": [ + "downloads" + ], + "description": "Creates an asynchronous download task for a specific element within a dashboard.", + "operationId": "create_dashboard_element_download_task", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "path", + "name": "dashboard_element_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "accountId", + "schema": { + "type": "string" + }, + "required": false + }, + { + "in": "query", + "name": "expanded_tables", + "schema": { + "type": "boolean" + }, + "required": false + }, + { + "in": "query", + "name": "filters", + "schema": { + "type": "string" + }, + "required": false + } + ], + "responses": { + "200": { + "description": "Download task created successfully", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DownloadQueryTaskResponse" + } + } + } + }, + "400": { + "description": "Invalid request parameters", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "404": { + "description": "Dashboard or Element not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "429": { + "description": "Rate limit exceeded", + "headers": { + "Retry-After": { + "schema": { + "type": "integer" + }, + "description": "Number of seconds to wait before retrying" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + }, + "get": { + "tags": [ + "downloads" + ], + "description": "Get the results of a download task for a specific element within a dashboard.", + "operationId": "get_dashboard_element_download_task_results", + "parameters": [ + { + "in": "path", + "name": "dashboard_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "path", + "name": "dashboard_element_id", + "schema": { + "type": "string" + }, + "required": true + }, + { + "in": "query", + "name": "task_id", + "required": true, + "schema": { + "type": "string" + }, + "description": "ID of the download task to get results for" + } + ], + "responses": { + "200": { + "description": "Download task results retrieved successfully", + "content": { + "application/zip": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "404": { + "description": "Dashboard, element, or task not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + }, + "default": { + "description": "Unexpected error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DashboardsErrorResponse" + } + } + } + } + } + } + }, + "/code/api/v1/checks/recent": { + "get": { + "operationId": "listStatusCheckRecentSpace", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring which is used to filter the status checks by their UID.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The timestamp (in Unix time millis) since the status checks have been run.", + "in": "query", + "name": "since", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "The result should include entities from child spaces.", + "in": "query", + "name": "recursive", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List recent status check for acc, org or proj", + "tags": [ + "status_checks" + ] + } + }, + "/code/api/v1/labels": { + "get": { + "operationId": "listSpaceLabels", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The result should inherit entities from parent spaces.", + "in": "query", + "name": "inherited", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The substring which is used to filter the labels by their key.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesLabel" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List labels at account, org or project level", + "tags": [ + "labels" + ] + }, + "post": { + "operationId": "defineSpaceLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "description": { + "type": "string" + }, + "key": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumLabelType" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabel" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create label at account, org or project level", + "tags": [ + "labels" + ] + }, + "put": { + "operationId": "saveSpaceLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "label": { + "$ref": "#/components/schemas/TypesSaveLabelInput" + }, + "values": { + "items": { + "$ref": "#/components/schemas/TypesSaveLabelValueInput" + }, + "type": "array" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabelWithValues" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Save label and values at account, org or project level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/labels/{key}": { + "delete": { + "operationId": "deleteSpaceLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete label at account, org or project level", + "tags": [ + "labels" + ] + }, + "patch": { + "operationId": "updateSpaceLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "description": { + "type": "string" + }, + "key": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumLabelType" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabel" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update label at account, org or project level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/labels/{key}/values": { + "get": { + "operationId": "listSpaceLabelValues", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesLabelValue" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List label values at account, org or project level", + "tags": [ + "labels" + ] + }, + "post": { + "operationId": "defineSpaceLabelValue", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "value": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabelValue" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create label value at account, org or project level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/labels/{key}/values/{value}": { + "delete": { + "operationId": "deleteSpaceLabelValue", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "value", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete label value at account, org or project level", + "tags": [ + "labels" + ] + }, + "patch": { + "operationId": "updateSpaceLabelValue", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "value", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "value": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabelValue" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update label value at account, org or project level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/principals": { + "get": { + "operationId": "listPrincipals", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring by which the principals are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The types of principals to include.", + "in": "query", + "name": "type", + "required": false, + "schema": { + "items": { + "enum": [ + "service", + "serviceaccount", + "user" + ], + "type": "string" + }, + "type": "array" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "tags": [ + "principals" + ] + } + }, + "/code/api/v1/pullreq": { + "get": { + "operationId": "listPullReqSpace", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The state of the pull requests to include in the result.", + "explode": true, + "in": "query", + "name": "state", + "required": false, + "schema": { + "items": { + "default": "open", + "enum": [ + "closed", + "merged", + "open" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Source repository ref of the pull requests.", + "in": "query", + "name": "source_repo_ref", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Source branch of the pull requests.", + "in": "query", + "name": "source_branch", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Target branch of the pull requests.", + "in": "query", + "name": "target_branch", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring by which the pull requests are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "List of principal IDs who created pull requests.", + "explode": true, + "in": "query", + "name": "created_by", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "The result should contain only entries created before this timestamp (unix millis).", + "in": "query", + "name": "created_lt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries created after this timestamp (unix millis).", + "in": "query", + "name": "created_gt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries updated before this timestamp (unix millis).", + "in": "query", + "name": "updated_lt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "By providing this parameter the description would be excluded from the response.", + "in": "query", + "name": "exclude_description", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The result should contain entries from the desired space and of its subspaces.", + "in": "query", + "name": "include_subspaces", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "List of label ids used to filter pull requests.", + "explode": true, + "in": "query", + "name": "label_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "List of label value ids used to filter pull requests.", + "explode": true, + "in": "query", + "name": "value_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return only pull requests where this user is the author.", + "in": "query", + "name": "author_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has created at least one comment.", + "in": "query", + "name": "commenter_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has been mentioned.", + "in": "query", + "name": "mentioned_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has been added as a reviewer.", + "in": "query", + "name": "reviewer_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Require only this review decision of the reviewer. Requires reviewer_id parameter.", + "explode": true, + "in": "query", + "name": "review_decision", + "required": false, + "schema": { + "items": { + "enum": [ + "approved", + "changereq", + "pending", + "reviewed" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "If true, the git diff stats would be included in the response.", + "in": "query", + "name": "include_git_stats", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, the summary of check for the branch commit SHA would be included in the response.", + "in": "query", + "name": "include_checks", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, a list of rules that apply to this branch would be included in the response.", + "in": "query", + "name": "include_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesPullReqRepo" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List pull requests in account/org/project", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/pullreq/count": { + "get": { + "operationId": "countPullReqSpace", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The state of the pull requests to include in the result.", + "explode": true, + "in": "query", + "name": "state", + "required": false, + "schema": { + "items": { + "default": "open", + "enum": [ + "closed", + "merged", + "open" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Source repository ref of the pull requests.", + "in": "query", + "name": "source_repo_ref", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Source branch of the pull requests.", + "in": "query", + "name": "source_branch", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Target branch of the pull requests.", + "in": "query", + "name": "target_branch", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring by which the pull requests are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "List of principal IDs who created pull requests.", + "explode": true, + "in": "query", + "name": "created_by", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "The result should contain only entries created before this timestamp (unix millis).", + "in": "query", + "name": "created_lt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries created after this timestamp (unix millis).", + "in": "query", + "name": "created_gt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries updated before this timestamp (unix millis).", + "in": "query", + "name": "updated_lt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain entries from the desired space and of its subspaces.", + "in": "query", + "name": "include_subspaces", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "List of label ids used to filter pull requests.", + "explode": true, + "in": "query", + "name": "label_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "List of label value ids used to filter pull requests.", + "explode": true, + "in": "query", + "name": "value_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return only pull requests where this user is the author.", + "in": "query", + "name": "author_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has created at least one comment.", + "in": "query", + "name": "commenter_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has been mentioned.", + "in": "query", + "name": "mentioned_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has been added as a reviewer.", + "in": "query", + "name": "reviewer_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Require only this review decision of the reviewer. Requires reviewer_id parameter.", + "explode": true, + "in": "query", + "name": "review_decision", + "required": false, + "schema": { + "items": { + "enum": [ + "approved", + "changereq", + "pending", + "reviewed" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "If true, a list of rules that apply to this branch would be included in the response.", + "in": "query", + "name": "include_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "type": "integer" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Count pull requests in account/org/project", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos": { + "get": { + "operationId": "listRepos", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring which is used to filter the repositories by their path name.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The data by which the repositories are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "identifier", + "enum": [ + "identifier", + "created", + "updated" + ], + "type": "string" + } + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/RepoRepositoryOutput" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List repositories", + "tags": [ + "repository" + ] + }, + "post": { + "operationId": "createRepository", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCreateRepositoryRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoRepositoryOutput" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create repository", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}": { + "delete": { + "operationId": "deleteRepository", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoSoftDeleteResponse" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Soft delete repository", + "tags": [ + "repository" + ] + }, + "get": { + "operationId": "getRepository", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoRepositoryOutput" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get repository", + "tags": [ + "repository" + ] + }, + "patch": { + "operationId": "updateRepository", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiUpdateRepoRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoRepositoryOutput" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update repository", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/archive/{git_ref}.{format}": { + "get": { + "operationId": "archive", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Without an optional path parameter, all files and subdirectories of the current working directory are included in the archive. If one or more paths are specified, only these are included.", + "in": "query", + "name": "path", + "required": false, + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + { + "description": "Prepend / to paths in the archive.", + "in": "query", + "name": "prefix", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Look for attributes in .gitattributes files in the working tree as well", + "in": "query", + "name": "attributes", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Set modification time of archive entries. Without this option the committer time is used if is a commit or tag, and the current time if it is a tree.", + "in": "query", + "name": "time", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Specify compression level. Larger values allow the command to spend more time to compress to smaller size.", + "in": "query", + "name": "compression", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "git_ref", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "format", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/gzip": { + "schema": { + "type": "string" + } + }, + "application/tar": { + "schema": { + "type": "string" + } + }, + "application/zip": { + "schema": { + "type": "string" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Download repo in archived format", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/blame/{path}": { + "get": { + "operationId": "getBlame", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The git reference (branch / tag / commitID) that will be used to retrieve the data. If no value is provided the default branch of the repository is used.", + "in": "query", + "name": "git_ref", + "required": false, + "schema": { + "default": "{Repository Default Branch}", + "type": "string" + } + }, + { + "description": "Line number from which the file data is considered", + "in": "query", + "name": "line_from", + "required": false, + "schema": { + "default": 0, + "type": "integer" + } + }, + { + "description": "Line number to which the file data is considered", + "in": "query", + "name": "line_to", + "required": false, + "schema": { + "default": 0, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/GitBlamePart" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get git blame", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/branches": { + "get": { + "operationId": "listBranches", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Indicates whether optional commit information should be included in the response.", + "in": "query", + "name": "include_commit", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The substring by which the branches are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The data by which the branches are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "name", + "enum": [ + "name", + "date" + ], + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "If true, the summary of check for the branch commit SHA would be included in the response.", + "in": "query", + "name": "include_checks", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, a list of rules that apply to this branch would be included in the response.", + "in": "query", + "name": "include_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, a list of pull requests from the branch would be included in the response.", + "in": "query", + "name": "include_pullreqs", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If greater than zero, branch divergence from the default branch will be included in the response. The divergence would be calculated up the this many commits.", + "in": "query", + "name": "max_divergence", + "required": false, + "schema": { + "default": 0, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesBranchExtended" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List branches", + "tags": [ + "repository" + ] + }, + "post": { + "operationId": "createBranch", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCreateBranchRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesCreateBranchOutput" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRulesViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create branch", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/branches/{branch_name}": { + "delete": { + "operationId": "deleteBranch", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Bypass rule violations if possible.", + "in": "query", + "name": "bypass_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "Dry run rules for operations", + "in": "query", + "name": "dry_run_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "branch_name", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesDeleteBranchOutput" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRulesViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete branch", + "tags": [ + "repository" + ] + }, + "get": { + "operationId": "getBranch", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "If true, the summary of check for the branch commit SHA would be included in the response.", + "in": "query", + "name": "include_checks", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, a list of rules that apply to this branch would be included in the response.", + "in": "query", + "name": "include_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, a list of pull requests from the branch would be included in the response.", + "in": "query", + "name": "include_pullreqs", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If greater than zero, branch divergence from the default branch will be included in the response. The divergence would be calculated up the this many commits.", + "in": "query", + "name": "max_divergence", + "required": false, + "schema": { + "default": 0, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "branch_name", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesBranchExtended" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get branch", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/checks/commits/{commit_sha}": { + "get": { + "operationId": "listStatusCheckResults", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The substring which is used to filter the status checks by their UID.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "commit_sha", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesCheck" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List status check results", + "tags": [ + "status_checks" + ] + }, + "put": { + "operationId": "reportStatusCheckResults", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "commit_sha", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "check_uid": { + "deprecated": true, + "type": "string" + }, + "ended": { + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "link": { + "type": "string" + }, + "payload": { + "$ref": "#/components/schemas/TypesCheckPayload" + }, + "started": { + "type": "integer" + }, + "status": { + "$ref": "#/components/schemas/EnumCheckStatus" + }, + "summary": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesCheck" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Report status check results", + "tags": [ + "status_checks" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/checks/recent": { + "get": { + "operationId": "listStatusCheckRecent", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring which is used to filter the status checks by their UID.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The timestamp (in Unix time millis) since the status checks have been run.", + "in": "query", + "name": "since", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List recent status check", + "tags": [ + "status_checks" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/codeowners/validate": { + "get": { + "operationId": "codeOwnersValidate", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The git reference (branch / tag / commitID) that will be used to retrieve the data. If no value is provided the default branch of the repository is used.", + "in": "query", + "name": "git_ref", + "required": false, + "schema": { + "default": "{Repository Default Branch}", + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Validate code owners file", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/commits": { + "get": { + "operationId": "listCommits", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The git reference (branch / tag / commitID) that will be used to retrieve the data. If no value is provided the default branch of the repository is used.", + "in": "query", + "name": "git_ref", + "required": false, + "schema": { + "default": "{Repository Default Branch}", + "type": "string" + } + }, + { + "description": "The result should only contain commits that occurred after the provided reference.", + "in": "query", + "name": "after", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Path for which commit information should be retrieved", + "in": "query", + "name": "path", + "required": false, + "schema": { + "default": "", + "type": "string" + } + }, + { + "description": "Epoch timestamp since when commit information should be retrieved.", + "in": "query", + "name": "since", + "required": false, + "schema": { + "example": 1728348213, + "type": "integer" + } + }, + { + "description": "Epoch timestamp until when commit information should be retrieved.", + "in": "query", + "name": "until", + "required": false, + "schema": { + "example": 1746668446, + "type": "integer" + } + }, + { + "description": "Committer pattern for which commit information should be retrieved.", + "in": "query", + "name": "committer", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Committer principal IDs list for which commit information should be retrieved.", + "explode": true, + "in": "query", + "name": "committer_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Author pattern for which commit information should be retrieved.", + "in": "query", + "name": "author", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Author principal IDs for which commit information should be retrieved.", + "explode": true, + "in": "query", + "name": "author_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "Indicates whether optional stats should be included in the response.", + "in": "query", + "name": "include_stats", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesListCommitResponse" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List commits", + "tags": [ + "repository" + ] + }, + "post": { + "operationId": "commitFiles", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCommitFilesRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesCommitFilesResponse" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRulesViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Commit files", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/commits/{commit_sha}": { + "get": { + "operationId": "getCommit", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "commit_sha", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesCommit" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get commit", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/commits/{commit_sha}/diff": { + "get": { + "operationId": "getCommitDiff", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "commit_sha", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get raw git diff of a commit", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/commits/calculate-divergence": { + "post": { + "operationId": "calculateCommitDivergence", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCalculateCommitDivergenceRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesCommitDivergence" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get commit divergence", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/content/{path}": { + "get": { + "operationId": "getContent", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The git reference (branch / tag / commitID) that will be used to retrieve the data. If no value is provided the default branch of the repository is used.", + "in": "query", + "name": "git_ref", + "required": false, + "schema": { + "default": "{Repository Default Branch}", + "type": "string" + } + }, + { + "description": "Indicates whether optional commit information should be included in the response.", + "in": "query", + "name": "include_commit", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "Flatten directories that contain just one subdirectory.", + "in": "query", + "name": "flatten_directories", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiGetContentOutput" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get content of a file", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/default-branch": { + "post": { + "operationId": "updateDefaultBranch", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiUpdateDefaultBranchRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoRepositoryOutput" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update default branch", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/diff-stats/{range}": { + "get": { + "operationId": "diffStats", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "provide path for diff operation", + "in": "query", + "name": "path", + "schema": { + "description": "provide path for diff operation", + "items": { + "type": "string" + }, + "type": "array" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "range", + "required": true, + "schema": { + "example": "main..dev", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesDiffStats" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get diff stats", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/diff/{range}": { + "get": { + "operationId": "rawDiff", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "provide path for diff operation", + "in": "query", + "name": "path", + "schema": { + "description": "provide path for diff operation", + "items": { + "type": "string" + }, + "type": "array" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "range", + "required": true, + "schema": { + "example": "main..dev", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/GitFileDiff" + }, + "type": "array" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get raw diff", + "tags": [ + "repository" + ] + }, + "post": { + "operationId": "rawDiffPost", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "range", + "required": true, + "schema": { + "example": "main..dev", + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiPostRawDiffRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/GitFileDiff" + }, + "type": "array" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get raw diff", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/labels": { + "get": { + "operationId": "listRepoLabels", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The result should inherit entities from parent spaces.", + "in": "query", + "name": "inherited", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The substring which is used to filter the labels by their key.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesLabel" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List labels at repo level", + "tags": [ + "labels" + ] + }, + "post": { + "operationId": "defineRepoLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "description": { + "type": "string" + }, + "key": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumLabelType" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabel" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create label at repo level", + "tags": [ + "labels" + ] + }, + "put": { + "operationId": "saveRepoLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "label": { + "$ref": "#/components/schemas/TypesSaveLabelInput" + }, + "values": { + "items": { + "$ref": "#/components/schemas/TypesSaveLabelValueInput" + }, + "type": "array" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabelWithValues" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Save label and values at repo level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/labels/{key}": { + "delete": { + "operationId": "deleteRepoLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete label at repo level", + "tags": [ + "labels" + ] + }, + "patch": { + "operationId": "updateRepoLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "description": { + "type": "string" + }, + "key": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumLabelType" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabel" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update label at repo level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/labels/{key}/values": { + "get": { + "operationId": "listRepoLabelValues", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesLabelValue" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List label values at repo level", + "tags": [ + "labels" + ] + }, + "post": { + "operationId": "defineRepoLabelValue", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "value": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabelValue" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create label value at repo level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/labels/{key}/values/{value}": { + "delete": { + "operationId": "deleteRepoLabelValue", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "value", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete label value at repo level", + "tags": [ + "labels" + ] + }, + "patch": { + "operationId": "updateRepoLabelValue", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "value", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "value": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesLabelValue" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update label value at repo level", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/merge-check/{range}": { + "post": { + "operationId": "mergeCheck", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "provide path for diff operation", + "in": "query", + "name": "path", + "schema": { + "description": "provide path for diff operation", + "items": { + "type": "string" + }, + "type": "array" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "range", + "required": true, + "schema": { + "example": "main..dev", + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoMergeCheck" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Check mergeability", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/path-details": { + "post": { + "operationId": "pathDetails", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The git reference (branch / tag / commitID) that will be used to retrieve the data. If no value is provided the default branch of the repository is used.", + "in": "query", + "name": "git_ref", + "required": false, + "schema": { + "default": "{Repository Default Branch}", + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiPathsDetailsRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoPathsDetailsOutput" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get commit details", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/paths": { + "get": { + "operationId": "listPaths", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The git reference (branch / tag / commitID) that will be used to retrieve the data. If no value is provided the default branch of the repository is used.", + "in": "query", + "name": "git_ref", + "required": false, + "schema": { + "default": "{Repository Default Branch}", + "type": "string" + } + }, + { + "description": "Indicates whether directories should be included in the response.", + "in": "query", + "name": "include_directories", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoListPathsOutput" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List all paths", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq": { + "get": { + "operationId": "listPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The state of the pull requests to include in the result.", + "explode": true, + "in": "query", + "name": "state", + "required": false, + "schema": { + "items": { + "default": "open", + "enum": [ + "closed", + "merged", + "open" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Source repository ref of the pull requests.", + "in": "query", + "name": "source_repo_ref", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Source branch of the pull requests.", + "in": "query", + "name": "source_branch", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Target branch of the pull requests.", + "in": "query", + "name": "target_branch", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring by which the pull requests are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "List of principal IDs who created pull requests.", + "explode": true, + "in": "query", + "name": "created_by", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The data by which the pull requests are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "number", + "enum": [ + "created", + "edited", + "merged", + "number", + "updated" + ], + "type": "string" + } + }, + { + "description": "The result should contain only entries created before this timestamp (unix millis).", + "in": "query", + "name": "created_lt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries created after this timestamp (unix millis).", + "in": "query", + "name": "created_gt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries updated before this timestamp (unix millis).", + "in": "query", + "name": "updated_lt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries updated after this timestamp (unix millis).", + "in": "query", + "name": "updated_gt", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "By providing this parameter the description would be excluded from the response.", + "in": "query", + "name": "exclude_description", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "List of label ids used to filter pull requests.", + "explode": true, + "in": "query", + "name": "label_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "List of label value ids used to filter pull requests.", + "explode": true, + "in": "query", + "name": "value_id", + "required": false, + "schema": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "Return only pull requests where this user is the author.", + "in": "query", + "name": "author_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has created at least one comment.", + "in": "query", + "name": "commenter_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has been mentioned.", + "in": "query", + "name": "mentioned_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Return only pull requests where this user has been added as a reviewer.", + "in": "query", + "name": "reviewer_id", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "description": "Require only this review decision of the reviewer. Requires reviewer_id parameter.", + "explode": true, + "in": "query", + "name": "review_decision", + "required": false, + "schema": { + "items": { + "enum": [ + "approved", + "changereq", + "pending", + "reviewed" + ], + "type": "string" + }, + "type": "array" + }, + "style": "form" + }, + { + "description": "If true, the git diff stats would be included in the response.", + "in": "query", + "name": "include_git_stats", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, the summary of check for the branch commit SHA would be included in the response.", + "in": "query", + "name": "include_checks", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "If true, a list of rules that apply to this branch would be included in the response.", + "in": "query", + "name": "include_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesPullReq" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List pull requests", + "tags": [ + "pullreq" + ] + }, + "post": { + "operationId": "createPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCreatePullReqRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReq" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create pull request", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}": { + "get": { + "operationId": "getPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReq" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get pull request", + "tags": [ + "pullreq" + ] + }, + "patch": { + "operationId": "updatePullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiUpdatePullReqRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReq" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update pull request", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/activities": { + "get": { + "operationId": "listPullReqActivities", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The kind of the pull request activity to include in the result.", + "in": "query", + "name": "kind", + "required": false, + "schema": { + "items": { + "enum": [ + "change-comment", + "comment", + "system" + ], + "type": "string" + }, + "type": "array" + } + }, + { + "description": "The type of the pull request activity to include in the result.", + "in": "query", + "name": "type", + "required": false, + "schema": { + "items": { + "enum": [ + "branch-delete", + "branch-restore", + "branch-update", + "code-comment", + "comment", + "label-modify", + "merge", + "review-submit", + "reviewer-add", + "reviewer-delete", + "state-change", + "target-branch-change", + "title-change" + ], + "type": "string" + }, + "type": "array" + } + }, + { + "description": "The result should contain only entries created at and after this timestamp (unix millis).", + "in": "query", + "name": "after", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The result should contain only entries created before this timestamp (unix millis).", + "in": "query", + "name": "before", + "required": false, + "schema": { + "minimum": 0, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesPullReqActivity" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List activities", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/branch": { + "post": { + "operationId": "restorePullReqSourceBranch", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "bypass_rules": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesCreateBranchOutput" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "409": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Conflict" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRulesViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Restore source branch", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/checks": { + "get": { + "operationId": "checksPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqChecks" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get status checks", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/codeowners": { + "get": { + "operationId": "codeownersPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesCodeOwnerEvaluation" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get code owners", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments": { + "post": { + "operationId": "commentCreatePullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCommentCreatePullReqRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqActivity" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create new pull request comment", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments/{pullreq_comment_id}": { + "delete": { + "operationId": "commentDeletePullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "pullreq_comment_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete pull request comment", + "tags": [ + "pullreq" + ] + }, + "patch": { + "operationId": "commentUpdatePullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "pullreq_comment_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCommentUpdatePullReqRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqActivity" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update pull request comment", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments/{pullreq_comment_id}/status": { + "put": { + "operationId": "commentStatusPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "pullreq_comment_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCommentStatusPullReqRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqActivity" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update status of pull request comment", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments/apply-suggestions": { + "post": { + "operationId": "commentApplySuggestions", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCommentApplySuggestionstRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PullreqCommentApplySuggestionsOutput" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRulesViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Apply pull request code comment suggestions", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/commits": { + "get": { + "operationId": "listPullReqCommits", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesCommit" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List commits", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/diff": { + "get": { + "operationId": "diffPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "provide path for diff operation", + "in": "query", + "name": "path", + "schema": { + "description": "provide path for diff operation", + "items": { + "type": "string" + }, + "type": "array" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/GitFileDiff" + }, + "type": "array" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get file changes", + "tags": [ + "pullreq" + ] + }, + "post": { + "operationId": "diffPullReqPost", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiPostRawPRDiffRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/GitFileDiff" + }, + "type": "array" + } + }, + "text/plain": { + "schema": { + "type": "string" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get file changes", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/file-views": { + "get": { + "operationId": "fileViewListPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesPullReqFileView" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List viewed files", + "tags": [ + "pullreq" + ] + }, + "put": { + "operationId": "fileViewAddPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiFileViewAddPullReqRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqFileView" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Mark file as viewed", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/file-views/{file_path}": { + "delete": { + "operationId": "fileViewDeletePullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "file_path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Remove file view", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/labels": { + "get": { + "operationId": "listPullReqLabels", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The result should contain all labels assignable to the pullreq.", + "in": "query", + "name": "assignable", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The substring which is used to filter the labels by their key.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesScopesLabels" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List labels assigned to pull request", + "tags": [ + "labels" + ] + }, + "put": { + "operationId": "assignLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiPullReqAssignLabelInput" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqLabel" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Assign label to pull request", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/labels/{label_id}": { + "delete": { + "operationId": "unassignLabel", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "label_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Unassign label from pull request", + "tags": [ + "labels" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/merge": { + "post": { + "operationId": "mergePullReqOp", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiMergePullReq" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesMergeResponse" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "405": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Method Not Allowed" + }, + "409": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Conflict" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesMergeViolations" + } + } + }, + "description": "Unprocessable Entity" + } + }, + "summary": "Merge", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/metadata": { + "get": { + "operationId": "pullReqMetaData", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqStats" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get metadata", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/revert": { + "post": { + "operationId": "revertPullReqOp", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "message": { + "type": "string" + }, + "revert_branch": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRevertResponse" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "405": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Method Not Allowed" + } + }, + "summary": "Revert of a merged pull request", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviewers": { + "get": { + "operationId": "reviewerListPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesPullReqReviewer" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List reviewers", + "tags": [ + "pullreq" + ] + }, + "put": { + "operationId": "reviewerAddPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiReviewerAddPullReqRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReqReviewer" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Add reviewer", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviewers/{pullreq_reviewer_id}": { + "delete": { + "operationId": "reviewerDeletePullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "pullreq_reviewer_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Remove reviewer", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviews": { + "post": { + "operationId": "reviewSubmitPullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiReviewSubmitPullReqRequest" + } + } + } + }, + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Submit review", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/state": { + "post": { + "operationId": "statePullReq", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "pullreq_number", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiStatePullReqRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesPullReq" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update state of pull request", + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/pullreq/candidates": { + "get": { + "operationId": "prCandidates", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesBranchTable" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "tags": [ + "pullreq" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/purge": { + "post": { + "operationId": "purgeRepository", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The exact time the resource was delete at in epoch format.", + "in": "query", + "name": "deleted_at", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Purge repository", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/raw/{path}": { + "get": { + "operationId": "getRaw", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The git reference (branch / tag / commitID) that will be used to retrieve the data. If no value is provided the default branch of the repository is used.", + "in": "query", + "name": "git_ref", + "required": false, + "schema": { + "default": "{Repository Default Branch}", + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get raw file content", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/rebase": { + "post": { + "operationId": "rebaseBranch", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "base_branch": { + "type": "string" + }, + "base_commit_sha": { + "$ref": "#/components/schemas/ShaSHA" + }, + "bypass_rules": { + "type": "boolean" + }, + "dry_run": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "head_branch": { + "type": "string" + }, + "head_commit_sha": { + "$ref": "#/components/schemas/ShaSHA" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRebaseResponse" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesMergeViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Rebase a branch relative to another branch or a commit", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/restore": { + "post": { + "operationId": "restoreRepository", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The exact time the resource was delete at in epoch format.", + "in": "query", + "name": "deleted_at", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiRestoreRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoRepositoryOutput" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Restore repository", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/rules": { + "get": { + "operationId": "repoRuleList", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring by which the repository protection rules are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The field by which the protection rules are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "created_at", + "enum": [ + "created_at", + "identifier", + "uid", + "updated_at" + ], + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The result should inherit entities from parent spaces.", + "in": "query", + "name": "inherited", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/OpenapiRule" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List repo protection rules", + "tags": [ + "rules" + ] + }, + "post": { + "operationId": "repoRuleAdd", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "definition": { + "$ref": "#/components/schemas/OpenapiRuleDefinition" + }, + "description": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "pattern": { + "$ref": "#/components/schemas/ProtectionPattern" + }, + "state": { + "$ref": "#/components/schemas/EnumRuleState" + }, + "type": { + "$ref": "#/components/schemas/OpenapiRuleType" + }, + "uid": { + "deprecated": true, + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiRule" + } + } + }, + "description": "Created" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Add repo protection rule", + "tags": [ + "rules" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/rules/{rule_identifier}": { + "delete": { + "operationId": "repoRuleDelete", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "rule_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete repo protection rule", + "tags": [ + "rules" + ] + }, + "get": { + "operationId": "repoRuleGet", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "rule_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiRule" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get repo protection rule", + "tags": [ + "rules" + ] + }, + "patch": { + "operationId": "repoRuleUpdate", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "rule_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "definition": { + "$ref": "#/components/schemas/OpenapiRuleDefinition" + }, + "description": { + "nullable": true, + "type": "string" + }, + "identifier": { + "nullable": true, + "type": "string" + }, + "pattern": { + "$ref": "#/components/schemas/ProtectionPattern" + }, + "state": { + "$ref": "#/components/schemas/EnumRuleState" + }, + "type": { + "$ref": "#/components/schemas/OpenapiRuleType" + }, + "uid": { + "deprecated": true, + "nullable": true, + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiRule" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update repo protection rule", + "tags": [ + "rules" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/settings/general": { + "get": { + "operationId": "findGeneralSettings", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReposettingsGeneralSettings" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get general settings", + "tags": [ + "repository" + ] + }, + "patch": { + "operationId": "updateGeneralSettings", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiGeneralSettingsRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReposettingsGeneralSettings" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update general settings", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/settings/security": { + "get": { + "operationId": "findSecuritySettings", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReposettingsSecuritySettings" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get security settings", + "tags": [ + "repository" + ] + }, + "patch": { + "operationId": "updateSecuritySettings", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiSecuritySettingsRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReposettingsSecuritySettings" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update security settings", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/squash": { + "post": { + "operationId": "squashBranch", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "base_branch": { + "type": "string" + }, + "base_commit_sha": { + "$ref": "#/components/schemas/ShaSHA" + }, + "bypass_rules": { + "type": "boolean" + }, + "dry_run": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "head_branch": { + "type": "string" + }, + "head_commit_sha": { + "$ref": "#/components/schemas/ShaSHA" + }, + "message": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesSquashResponse" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesMergeViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Squashes commits in a branch relative to another branch or a commit", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/summary": { + "get": { + "operationId": "summary", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRepositorySummary" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get repository summary", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/tags": { + "get": { + "operationId": "listTags", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Indicates whether optional commit information should be included in the response.", + "in": "query", + "name": "include_commit", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "description": "The substring by which the tags are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The data by which the tags are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "name", + "enum": [ + "name", + "date" + ], + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/RepoCommitTag" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List tags", + "tags": [ + "repository" + ] + }, + "post": { + "operationId": "createTag", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCreateTagRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoCommitTag" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "409": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Conflict" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRulesViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create tag", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/tags/{tag_name}": { + "delete": { + "operationId": "deleteTag", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Bypass rule violations if possible.", + "in": "query", + "name": "bypass_rules", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "tag_name", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "409": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Conflict" + }, + "422": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesRulesViolations" + } + } + }, + "description": "Unprocessable Entity" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete tag", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/uploads": { + "post": { + "operationId": "repoArtifactUpload", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/octet-stream": { + "schema": {} + } + }, + "description": "Binary file to upload", + "required": true + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UploadResult" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Repo artifact upload", + "tags": [ + "upload" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/uploads/{file_ref}": { + "get": { + "operationId": "repoArtifactDownload", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "file_ref", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "OK" + }, + "307": { + "description": "Temporary Redirect" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Repo artifact download", + "tags": [ + "upload" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/webhooks": { + "get": { + "operationId": "listRepoWebhooks", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring which is used to filter the webhooks by their identifier.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The data by which the webhooks are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "identifier", + "enum": [ + "id", + "uid", + "display_name", + "created", + "updated" + ], + "type": "string" + } + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/OpenapiWebhookType" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List repo webhooks", + "tags": [ + "webhook" + ] + }, + "post": { + "operationId": "createRepoWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiCreateRepoWebhookRequest" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiWebhookType" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create repo webhook", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}": { + "delete": { + "operationId": "deleteRepoWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete repo webhook", + "tags": [ + "webhook" + ] + }, + "get": { + "operationId": "getRepoWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiWebhookType" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get repo webhook", + "tags": [ + "webhook" + ] + }, + "patch": { + "operationId": "updateRepoWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiUpdateRepoWebhookRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiWebhookType" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update repo webhook", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}/executions": { + "get": { + "operationId": "listRepoWebhookExecutions", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesWebhookExecution" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List repo webhook executions", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}": { + "get": { + "operationId": "getRepoWebhookExecution", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_execution_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesWebhookExecution" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get repo webhook execution", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}/retrigger": { + "post": { + "operationId": "retriggerRepoWebhookExecution", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "repo_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_execution_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesWebhookExecution" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Retrigger repo webhook execution", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/repos/import": { + "post": { + "operationId": "importRepository", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "description": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "parent_ref": { + "type": "string" + }, + "pipelines": { + "$ref": "#/components/schemas/ImporterPipelineOption" + }, + "provider": { + "$ref": "#/components/schemas/ImporterProvider" + }, + "provider_repo": { + "type": "string" + }, + "uid": { + "deprecated": true, + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepoRepositoryOutput" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Import repository", + "tags": [ + "repository" + ] + } + }, + "/code/api/v1/resources/gitignore": { + "get": { + "operationId": "listGitignore", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List available gitignore names", + "tags": [ + "resource" + ] + } + }, + "/code/api/v1/resources/license": { + "get": { + "operationId": "listLicenses", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "properties": { + "label": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List available license names", + "tags": [ + "resource" + ] + } + }, + "/code/api/v1/rules": { + "get": { + "operationId": "spaceRuleList", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring by which the repository protection rules are filtered.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The field by which the protection rules are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "created_at", + "enum": [ + "created_at", + "identifier", + "uid", + "updated_at" + ], + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The result should inherit entities from parent spaces.", + "in": "query", + "name": "inherited", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/OpenapiRule" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List acc/org/proj protection rules", + "tags": [ + "rules" + ] + }, + "post": { + "operationId": "spaceRuleAdd", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "definition": { + "$ref": "#/components/schemas/OpenapiRuleDefinition" + }, + "description": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "pattern": { + "$ref": "#/components/schemas/ProtectionPattern" + }, + "state": { + "$ref": "#/components/schemas/EnumRuleState" + }, + "type": { + "$ref": "#/components/schemas/OpenapiRuleType" + }, + "uid": { + "deprecated": true, + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiRule" + } + } + }, + "description": "Created" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Add acc/org/proj protection rule", + "tags": [ + "rules" + ] + } + }, + "/code/api/v1/rules/{rule_identifier}": { + "delete": { + "operationId": "spaceRuleDelete", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "rule_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete acc/org/proj protection rule", + "tags": [ + "rules" + ] + }, + "get": { + "operationId": "spaceRuleGet", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "rule_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiRule" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get acc/org/proj protection rule", + "tags": [ + "rules" + ] + }, + "patch": { + "operationId": "spaceRuleUpdate", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "rule_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "definition": { + "$ref": "#/components/schemas/OpenapiRuleDefinition" + }, + "description": { + "nullable": true, + "type": "string" + }, + "identifier": { + "nullable": true, + "type": "string" + }, + "pattern": { + "$ref": "#/components/schemas/ProtectionPattern" + }, + "state": { + "$ref": "#/components/schemas/EnumRuleState" + }, + "type": { + "$ref": "#/components/schemas/OpenapiRuleType" + }, + "uid": { + "deprecated": true, + "nullable": true, + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiRule" + } + } + }, + "description": "OK" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "404": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Not Found" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update acc/org/proj protection rule", + "tags": [ + "rules" + ] + } + }, + "/code/api/v1/webhooks": { + "get": { + "operationId": "listSpaceWebhooks", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The substring which is used to filter the webhooks by their identifier.", + "in": "query", + "name": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The data by which the webhooks are sorted.", + "in": "query", + "name": "sort", + "required": false, + "schema": { + "default": "identifier", + "enum": [ + "id", + "uid", + "display_name", + "created", + "updated" + ], + "type": "string" + } + }, + { + "description": "The order of the output.", + "in": "query", + "name": "order", + "required": false, + "schema": { + "default": "asc", + "enum": [ + "asc", + "desc" + ], + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/OpenapiWebhookType" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List acc, org or proj webhooks", + "tags": [ + "webhook" + ] + }, + "post": { + "operationId": "createSpaceWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesWebhookCreateInput" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiWebhookType" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Create acc, org or proj webhook", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/webhooks/{webhook_identifier}": { + "delete": { + "operationId": "deleteSpaceWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Delete acc, org or proj webhook", + "tags": [ + "webhook" + ] + }, + "get": { + "operationId": "getSpaceWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiWebhookType" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get acc, org or proj webhook", + "tags": [ + "webhook" + ] + }, + "patch": { + "operationId": "updateSpaceWebhook", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiUpdateSpaceWebhookRequest" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OpenapiWebhookType" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Update acc, org or proj webhook", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/webhooks/{webhook_identifier}/executions": { + "get": { + "operationId": "listSpaceWebhookExecutions", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/TypesWebhookExecution" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "List acc, org or proj webhook executions", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/webhooks/{webhook_identifier}/executions/{webhook_execution_id}": { + "get": { + "operationId": "getSpaceWebhookExecution", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "The page to return.", + "in": "query", + "name": "page", + "required": false, + "schema": { + "default": 1, + "minimum": 1, + "type": "integer" + } + }, + { + "description": "The maximum number of results to return.", + "in": "query", + "name": "limit", + "required": false, + "schema": { + "default": 30, + "maximum": 100, + "minimum": 1, + "type": "integer" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_execution_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesWebhookExecution" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Get acc, org or proj webhook execution", + "tags": [ + "webhook" + ] + } + }, + "/code/api/v1/webhooks/{webhook_identifier}/executions/{webhook_execution_id}/retrigger": { + "post": { + "operationId": "retriggerSpaceWebhookExecution", + "parameters": [ + { + "description": "Account Identifier for the Entity.", + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Organization Identifier for the Entity.", + "in": "query", + "name": "orgIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "description": "Project Identifier for the Entity.", + "in": "query", + "name": "projectIdentifier", + "required": false, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "webhook_execution_id", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TypesWebhookExecution" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Bad Request" + }, + "401": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Forbidden" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsererrorError" + } + } + }, + "description": "Internal Server Error" + } + }, + "summary": "Retrigger acc, org or proj webhook execution", + "tags": [ + "webhook" + ] + } + }, + "/har/api/v1/registry": { + "post": { + "description": "Create a Registry.", + "operationId": "CreateRegistry", + "parameters": [ + { + "$ref": "#/components/parameters/spaceRefQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RegistryRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/RegistryResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Create Registry.", + "tags": [ + "Registries" + ] + } + }, + "/har/api/v1/registry/{registry_identifier}/artifact/{artifact}/redirect": { + "get": { + "description": "Redirect to Harness Artifact Page", + "operationId": "RedirectHarnessArtifact", + "parameters": [ + { + "$ref": "#/components/parameters/RegistryIdentifierPathParam" + }, + { + "$ref": "#/components/parameters/AccountIdentifierParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionParam" + } + ], + "responses": { + "302": { + "$ref": "#/components/responses/Redirect" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Redirect to Harness Artifact Page", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}": { + "delete": { + "description": "Delete a Registry in the account for the given key", + "operationId": "DeleteRegistry", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/Success" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete a Registry", + "tags": [ + "Registries" + ] + }, + "get": { + "description": "Returns Registry Details in the account for the given key", + "operationId": "GetRegistry", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/RegistryResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns Registry Details", + "tags": [ + "Registries" + ] + }, + "put": { + "description": "Updates a Registry in the account for the given key", + "operationId": "ModifyRegistry", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RegistryRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/RegistryResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Updates a Registry", + "tags": [ + "Registries" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}": { + "delete": { + "description": "Delete Artifact.", + "operationId": "DeleteArtifact", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/Success" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete Artifact", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/labels": { + "put": { + "description": "Update Artifact Labels.", + "operationId": "UpdateArtifactLabels", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ArtifactLabelRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactLabelResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Update Artifact Labels", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/stats": { + "get": { + "description": "Get Artifact Stats.", + "operationId": "GetArtifactStats", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/fromDateParam" + }, + { + "$ref": "#/components/parameters/toDateParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactStatsResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get Artifact Stats", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/summary": { + "get": { + "description": "Get Artifact Summary.", + "operationId": "GetArtifactSummary", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactSummaryResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get Artifact Summary", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}": { + "delete": { + "description": "Delete Artifact Version.", + "operationId": "DeleteArtifactVersion", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/Success" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete an Artifact Version", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/deploymentdetails": { + "get": { + "description": "Get Artifact Deployments", + "operationId": "GetArtifactDeployments", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/envType" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + }, + { + "$ref": "#/components/parameters/searchTerm" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactDeploymentsResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Artifact Deployments", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/details": { + "get": { + "description": "Get Artifact Details", + "operationId": "GetArtifactDetails", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/childVersionParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactDetailResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Artifact Details", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/details": { + "get": { + "description": "Get Docker Artifact Details", + "operationId": "GetDockerArtifactDetails", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/digestParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/DockerArtifactDetailResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Docker Artifact Detail", + "tags": [ + "Docker Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/integrationdetails": { + "get": { + "description": "Get Docker Artifact Integration Details", + "operationId": "GetDockerArtifactIntegrationDetails", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/digestParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/DockerArtifactDetailIntegrationResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Docker Artifact Integration Detail", + "tags": [ + "Docker Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/layers": { + "get": { + "description": "Get Docker Artifact Layers", + "operationId": "GetDockerArtifactLayers", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/digestParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/DockerLayersResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Docker Artifact Layers", + "tags": [ + "Docker Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/manifest": { + "get": { + "description": "Get Docker Artifact Manifest", + "operationId": "GetDockerArtifactManifest", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/digestParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/DockerArtifactManifestResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Docker Artifact Manifest", + "tags": [ + "Docker Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/manifests": { + "get": { + "description": "Get Docker Artifact Manifests", + "operationId": "GetDockerArtifactManifests", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/DockerManifestsResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Docker Artifact Manifests", + "tags": [ + "Docker Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/files": { + "get": { + "description": "Get Artifact files", + "operationId": "GetArtifactFiles", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + }, + { + "$ref": "#/components/parameters/searchTerm" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/FileDetailResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Artifact files", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/helm/details": { + "get": { + "description": "Get Helm Artifact Details", + "operationId": "GetHelmArtifactDetails", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/HelmArtifactDetailResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Helm Artifact Detail", + "tags": [ + "Helm Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/helm/manifest": { + "get": { + "description": "Get Helm Artifact Manifest", + "operationId": "GetHelmArtifactManifest", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/HelmArtifactManifestResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Describe Helm Artifact Manifest", + "tags": [ + "Helm Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/summary": { + "get": { + "description": "Get Artifact Version Summary.", + "operationId": "GetArtifactVersionSummary", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/versionPathParam" + }, + { + "$ref": "#/components/parameters/digestOptParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactVersionSummaryResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get Artifact Version Summary", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/{artifact}/versions": { + "get": { + "description": "Lists all the Artifact Versions.", + "operationId": "GetAllArtifactVersions", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactPathParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + }, + { + "$ref": "#/components/parameters/searchTerm" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListArtifactVersionResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "List Artifact Versions", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/labels": { + "get": { + "description": "List Artifact Labels.", + "operationId": "ListArtifactLabels", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/searchTerm" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListArtifactLabelResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "List Artifact Labels", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifact/stats": { + "get": { + "description": "Get Artifact Stats.", + "operationId": "GetArtifactStatsForRegistry", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/fromDateParam" + }, + { + "$ref": "#/components/parameters/toDateParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactStatsResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get Artifact Stats", + "tags": [ + "Artifacts" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/artifacts": { + "get": { + "description": "Lists all the Artifacts for Registry", + "operationId": "GetAllArtifactsByRegistry", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/LabelsParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + }, + { + "$ref": "#/components/parameters/searchTerm" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListRegistryArtifactResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "List Artifacts for Registry", + "tags": [ + "Registries" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/client-setup-details": { + "get": { + "description": "Returns CLI Client Setup Details based on package type", + "operationId": "GetClientSetupDetails", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/artifactParam" + }, + { + "$ref": "#/components/parameters/versionParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ClientSetupDetailsResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Returns CLI Client Setup Details", + "tags": [ + "Registries" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/webhooks": { + "get": { + "description": "Returns List of Webhook Details", + "operationId": "ListWebhooks", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + }, + { + "$ref": "#/components/parameters/searchTerm" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListWebhooksResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "ListWebhooks", + "tags": [ + "Webhooks" + ] + }, + "post": { + "description": "Returns Webhook Details", + "operationId": "CreateWebhook", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/WebhookRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/WebhookResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "CreateWebhook", + "tags": [ + "Webhooks" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}": { + "delete": { + "description": "Delete a Webhook", + "operationId": "DeleteWebhook", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/webhookIdentifierPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/Success" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "DeleteWebhook", + "tags": [ + "Webhooks" + ] + }, + "get": { + "description": "Returns Webhook Details", + "operationId": "GetWebhook", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/webhookIdentifierPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/WebhookResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "GetWebhook", + "tags": [ + "Webhooks" + ] + }, + "put": { + "description": "Returns Webhook Details", + "operationId": "UpdateWebhook", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/webhookIdentifierPathParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/WebhookRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/WebhookResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "UpdateWebhook", + "tags": [ + "Webhooks" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}/executions": { + "get": { + "description": "Returns Webhook Execution Details List", + "operationId": "ListWebhookExecutions", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/webhookIdentifierPathParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListWebhooksExecutionResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "ListWebhookExecutions", + "tags": [ + "Webhooks" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}": { + "get": { + "description": "Returns Webhook Execution Details", + "operationId": "GetWebhookExecution", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/webhookIdentifierPathParam" + }, + { + "$ref": "#/components/parameters/webhookExecutionIdPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/WebhookExecutionResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "GetWebhookExecution", + "tags": [ + "Webhooks" + ] + } + }, + "/har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}/retrigger": { + "get": { + "description": "Retrigger Webhook Execution", + "operationId": "ReTriggerWebhookExecution", + "parameters": [ + { + "$ref": "#/components/parameters/registryRefPathParam" + }, + { + "$ref": "#/components/parameters/webhookIdentifierPathParam" + }, + { + "$ref": "#/components/parameters/webhookExecutionIdPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/WebhookExecutionResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "ReTriggerWebhookExecution", + "tags": [ + "Webhooks" + ] + } + }, + "/har/api/v1/replication/rules": { + "get": { + "description": "List all replication rules", + "operationId": "listReplicationRules", + "parameters": [ + { + "$ref": "#/components/parameters/spaceRefQueryParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListReplicationRuleResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "List replication rules", + "tags": [ + "Replication" + ] + }, + "post": { + "description": "Create a replication rule", + "operationId": "createReplicationRule", + "parameters": [ + { + "$ref": "#/components/parameters/spaceRefQueryParam" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ReplicationRuleRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/ReplicationRuleResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Create a replication rule", + "tags": [ + "Replication" + ] + } + }, + "/har/api/v1/replication/rules/{id}": { + "delete": { + "description": "Delete a replication rule", + "operationId": "deleteReplicationRule", + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/Success" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Delete a replication rule", + "tags": [ + "Replication" + ] + }, + "get": { + "description": "Get a replication rule", + "operationId": "getReplicationRule", + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ReplicationRuleResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get a replication rule", + "tags": [ + "Replication" + ] + }, + "put": { + "description": "Update a replication rule", + "operationId": "updateReplicationRule", + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ReplicationRuleRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/ReplicationRuleResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Update a replication rule", + "tags": [ + "Replication" + ] + } + }, + "/har/api/v1/replication/rules/{id}/migration/images": { + "get": { + "description": "List migration images given an id", + "operationId": "listMigrationImages", + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListMigrationImageResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "List migration images", + "tags": [ + "Replication" + ] + } + }, + "/har/api/v1/replication/rules/{id}/migration/images/{image_id}/logs": { + "get": { + "operationId": "getMigrationLogsForImage", + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "image_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/PlainTextResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get migration logs for an image", + "tags": [ + "Replication" + ] + } + }, + "/har/api/v1/replication/rules/{id}/migration/start": { + "post": { + "description": "Start migration given an id", + "operationId": "startMigration", + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/Success" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Start migration", + "tags": [ + "Replication" + ] + } + }, + "/har/api/v1/replication/rules/{id}/migration/stop": { + "post": { + "description": "Stop migration given an id", + "operationId": "stopMigration", + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/Success" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Stop migration", + "tags": [ + "Replication" + ] + } + }, + "/har/api/v1/spaces/{space_ref}/artifact/stats": { + "get": { + "description": "Get artifact stats", + "operationId": "GetArtifactStatsForSpace", + "parameters": [ + { + "$ref": "#/components/parameters/spaceRefPathParam" + }, + { + "$ref": "#/components/parameters/fromDateParam" + }, + { + "$ref": "#/components/parameters/toDateParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactStatsResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get artifact stats", + "tags": [ + "Spaces" + ] + } + }, + "/har/api/v1/spaces/{space_ref}/artifacts": { + "get": { + "description": "Lists all the Harness Artifacts.", + "operationId": "GetAllHarnessArtifacts", + "parameters": [ + { + "$ref": "#/components/parameters/spaceRefPathParam" + }, + { + "$ref": "#/components/parameters/RegistryIdentifierParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + }, + { + "$ref": "#/components/parameters/searchTerm" + }, + { + "$ref": "#/components/parameters/latestVersion" + }, + { + "$ref": "#/components/parameters/deployedArtifact" + }, + { + "$ref": "#/components/parameters/packageTypeParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListArtifactResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "List Harness Artifacts", + "tags": [ + "Spaces" + ] + } + }, + "/har/api/v1/spaces/{space_ref}/details": { + "get": { + "description": "Get storage details for given space", + "operationId": "GetStorageDetails", + "parameters": [ + { + "$ref": "#/components/parameters/spaceRefPathParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/StorageDetailsResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "Get storage details for given space", + "tags": [ + "Spaces" + ] + } + }, + "/har/api/v1/spaces/{space_ref}/registries": { + "get": { + "description": "Lists all the registries.", + "operationId": "GetAllRegistries", + "parameters": [ + { + "$ref": "#/components/parameters/spaceRefPathParam" + }, + { + "$ref": "#/components/parameters/packageTypeParam" + }, + { + "$ref": "#/components/parameters/RegistryTypeParam" + }, + { + "$ref": "#/components/parameters/RegistrypageNumber" + }, + { + "$ref": "#/components/parameters/RegistrypageSize" + }, + { + "$ref": "#/components/parameters/RegistrysortOrder" + }, + { + "$ref": "#/components/parameters/sortField" + }, + { + "$ref": "#/components/parameters/searchTerm" + }, + { + "$ref": "#/components/parameters/recursiveParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListRegistryResponse" + }, + "400": { + "$ref": "#/components/responses/RegistryBadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthenticated" + }, + "403": { + "$ref": "#/components/responses/Unauthorized" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "500": { + "$ref": "#/components/responses/InternalServerError" + } + }, + "summary": "List registries", + "tags": [ + "Spaces" + ] + } + }, + "/iacm/api/enforcement/client/usage/{metric}": { + "put": { + "tags": [ + "usage" + ], + "summary": "Show usage", + "description": "Retrieve a single usage", + "operationId": "usage#getUsage", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account identifier", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account identifier", + "example": "Minima earum quibusdam voluptatem quam rerum." + }, + "example": "Quae quia." + }, + { + "name": "metric", + "in": "path", + "description": "Usage metric", + "required": true, + "schema": { + "type": "string", + "description": "Usage metric", + "example": "Ipsa ut dolor dolores aut." + }, + "example": "Officia unde consequuntur culpa fugiat autem eos." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowUsageResponse" + }, + "example": { + "data": { + "count": 5169585703414810000 + }, + "status": "Ipsam necessitatibus ipsum voluptate." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/health": { + "get": { + "tags": [ + "system" + ], + "summary": "health system", + "description": "Check server health", + "operationId": "IaCMsystem#health", + "responses": { + "200": { + "description": "OK response." + } + } + } + }, + "/iacm/api/latest-plugin-version": { + "post": { + "tags": [ + "system" + ], + "summary": "latest-plugin-version system", + "description": "Get the latest plugin version", + "operationId": "system#latest-plugin-version", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PluginReportedVersion" + }, + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "version": "v0.123.0" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmPluginversion" + }, + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "version": "0.2.0" + } + } + } + } + } + } + }, + "/iacm/api/modules": { + "get": { + "tags": [ + "module-registry" + ], + "summary": "List modules", + "description": "List all modules from the module registry", + "operationId": "module-registry#list_modules-by-account", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter results by partial name match", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by partial name match", + "default": "", + "example": "mymod" + }, + "example": "mymod" + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "name,ASC", + "example": "name,ASC", + "enum": [ + "name,ASC", + "name,DESC", + "updated,ASC", + "updated,DESC" + ] + }, + "example": "name,DESC" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Eligendi laboriosam omnis soluta delectus sit." + }, + "example": "Et enim eligendi illo ipsam." + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ModuleResourceCollection" + }, + "example": [ + { + "account": "grs", + "created": 2771718328132106000, + "description": "Sunt vel est.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Qui esse qui omnis.", + "name": "ljs", + "repository": "Rem deleniti repellat atque enim voluptas earum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Saepe molestias.", + "repository_path": "", + "repository_url": "Non omnis iusto perspiciatis occaecati iste.", + "synced": 4758614571764785000, + "system": "mf", + "tags": "Nihil aut.", + "testing_enabled": true, + "testing_metadata": { + "account": "r", + "org": "x", + "pipelines": [ + "Quia iste nobis dolor eligendi mollitia.", + "Odio ipsam laborum.", + "Aspernatur quia corrupti vel accusantium eos voluptas.", + "Quia quae blanditiis nisi." + ], + "project": "qv", + "provider_connector": "Et qui fugiat.", + "provisioner_type": "Tempore illo saepe voluptas.", + "provisioner_version": "Aut alias qui consectetur.", + "release_pipeline": "Dolores nam consequatur cum totam." + }, + "updated": 1501293329391327200, + "versions": [ + "Qui sed quibusdam id nostrum.", + "Est deleniti.", + "Aut quibusdam omnis ullam quod eaque.", + "Incidunt eum qui odio eligendi hic dolores." + ] + }, + { + "account": "grs", + "created": 2771718328132106000, + "description": "Sunt vel est.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Qui esse qui omnis.", + "name": "ljs", + "repository": "Rem deleniti repellat atque enim voluptas earum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Saepe molestias.", + "repository_path": "", + "repository_url": "Non omnis iusto perspiciatis occaecati iste.", + "synced": 4758614571764785000, + "system": "mf", + "tags": "Nihil aut.", + "testing_enabled": true, + "testing_metadata": { + "account": "r", + "org": "x", + "pipelines": [ + "Quia iste nobis dolor eligendi mollitia.", + "Odio ipsam laborum.", + "Aspernatur quia corrupti vel accusantium eos voluptas.", + "Quia quae blanditiis nisi." + ], + "project": "qv", + "provider_connector": "Et qui fugiat.", + "provisioner_type": "Tempore illo saepe voluptas.", + "provisioner_version": "Aut alias qui consectetur.", + "release_pipeline": "Dolores nam consequatur cum totam." + }, + "updated": 1501293329391327200, + "versions": [ + "Qui sed quibusdam id nostrum.", + "Est deleniti.", + "Aut quibusdam omnis ullam quod eaque.", + "Incidunt eum qui odio eligendi hic dolores." + ] + }, + { + "account": "grs", + "created": 2771718328132106000, + "description": "Sunt vel est.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Qui esse qui omnis.", + "name": "ljs", + "repository": "Rem deleniti repellat atque enim voluptas earum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Saepe molestias.", + "repository_path": "", + "repository_url": "Non omnis iusto perspiciatis occaecati iste.", + "synced": 4758614571764785000, + "system": "mf", + "tags": "Nihil aut.", + "testing_enabled": true, + "testing_metadata": { + "account": "r", + "org": "x", + "pipelines": [ + "Quia iste nobis dolor eligendi mollitia.", + "Odio ipsam laborum.", + "Aspernatur quia corrupti vel accusantium eos voluptas.", + "Quia quae blanditiis nisi." + ], + "project": "qv", + "provider_connector": "Et qui fugiat.", + "provisioner_type": "Tempore illo saepe voluptas.", + "provisioner_version": "Aut alias qui consectetur.", + "release_pipeline": "Dolores nam consequatur cum totam." + }, + "updated": 1501293329391327200, + "versions": [ + "Qui sed quibusdam id nostrum.", + "Est deleniti.", + "Aut quibusdam omnis ullam quod eaque.", + "Incidunt eum qui odio eligendi hic dolores." + ] + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "module-registry" + ], + "summary": "Create module", + "description": "Create a new module in the module registry", + "operationId": "module-registry#create-module", + "parameters": [ + { + "name": "Harness-Account", + "in": "header", + "description": "account that owns the module", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account that owns the module", + "example": "et", + "minLength": 1, + "maxLength": 128 + }, + "example": "dz" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateModuleRequest" + }, + "example": { + "description": "Tempora porro tenetur earum dolor aut.", + "git_tag_style": "Et eum.", + "name": "a43", + "org": "l0c", + "project": "ao8", + "repository": "Atque molestiae vero iste.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Mollitia dolorem reprehenderit esse maxime est.", + "repository_path": "", + "system": "uoy", + "tags": "Aperiam cum dolorum molestiae et sed." + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ModuleRegistryCreateModuleResponseBody" + }, + "example": { + "account": "k", + "created": 2893139918729080300, + "description": "Consequatur sed repellendus cupiditate enim.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "name": "fq", + "repository": "Placeat eum nihil quasi cupiditate ducimus at.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Non aut sit.", + "repository_path": "", + "system": "5", + "tags": "Provident esse distinctio dicta cumque.", + "updated": 128654031569769420 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{id}": { + "delete": { + "tags": [ + "module-registry" + ], + "summary": "Delete module", + "description": "Delete a module from the module registry", + "operationId": "module-registry#delete-module", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "id", + "required": true, + "schema": { + "type": "string", + "description": "id", + "example": "Aut consequuntur quo voluptatem facere et est." + }, + "example": "Eos voluptas." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "At occaecati vero nisi eum." + }, + "example": "Voluptas voluptas est." + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "module-registry" + ], + "summary": "List module by id", + "description": "List a module from the module registry by ID", + "operationId": "module-registry#list-modules-by-id", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "string", + "description": "module id", + "example": "Veritatis pariatur molestiae." + }, + "example": "Omnis dicta et minima quaerat excepturi." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Aspernatur nam ut qui consequatur amet." + }, + "example": "Dicta et tempora quisquam voluptates non." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListModuleByIDResponse" + }, + "example": { + "account": "n", + "created": 8628888575541807000, + "description": "Iste vel vel id voluptatem.", + "git_tag_style": "Quas nihil nihil aut sequi quod eius.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Molestiae necessitatibus voluptates omnis voluptatibus ut.", + "name": "a", + "org": "r8u", + "project": "x", + "repository": "Est omnis.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Assumenda commodi commodi voluptatem magni.", + "repository_path": "", + "repository_url": "Quis consequatur quo molestias et placeat esse.", + "synced": 3980191978657367000, + "system": "a6u", + "tags": "Aut alias mollitia repellat et nisi.", + "testing_enabled": true, + "testing_metadata": { + "account": "s", + "org": "4", + "pipelines": [ + "Autem beatae sit ratione odio.", + "Provident voluptatem iure ratione.", + "Cumque eos quaerat quos est.", + "In qui non unde aperiam amet in." + ], + "project": "q0o", + "provider_connector": "Pariatur sunt nulla.", + "provisioner_type": "Est quisquam autem.", + "provisioner_version": "Nemo voluptatem sapiente nisi quae vitae facilis.", + "release_pipeline": "Ipsa perspiciatis est." + }, + "updated": 6069250488747483000, + "versions": [ + "Nostrum non ullam.", + "Omnis sunt quas cum sed nostrum.", + "Quaerat voluptatem et dolor." + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "module-registry" + ], + "summary": "Update module", + "description": "Update a module in the module registry", + "operationId": "module-registry#update-module", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account that owns the module", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account that owns the module", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "example": "1nz" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateModuleRequest" + }, + "example": { + "description": "Fugiat dolores ducimus.", + "git_tag_style": "Consequatur ut sit sit necessitatibus explicabo.", + "name": "nyj", + "org": "hp", + "project": "p9", + "repository": "Libero qui aut ut iste quibusdam.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nostrum dicta minus ex magnam.", + "repository_path": "", + "system": "ef0", + "tags": "Ut eveniet id aperiam." + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{id}/pipeline": { + "post": { + "tags": [ + "module-registry" + ], + "summary": "Create testing pipeline", + "description": "Create a new testing pipeline for a given module", + "operationId": "module-registry#create-testing-pipelines", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "string", + "description": "module id", + "example": "Quisquam consequatur eligendi doloremque." + }, + "example": "Aut inventore et." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "1", + "minLength": 1, + "maxLength": 128 + }, + "example": "ydu" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTestingPipelineRequest" + }, + "example": { + "org": "o", + "project": "o43" + } + } + } + }, + "responses": { + "201": { + "description": "Created response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{id}/sync": { + "post": { + "tags": [ + "module-registry" + ], + "summary": "Sync module metadata", + "description": "Sync the module metadata from the module registry", + "operationId": "module-registry#sync-module-metadata", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "id", + "required": true, + "schema": { + "type": "string", + "description": "id", + "example": "Aut deleniti." + }, + "example": "Dolores totam." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Fugit voluptatibus illum." + }, + "example": "Voluptatibus aut." + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{id}/testing": { + "delete": { + "tags": [ + "module-registry" + ], + "summary": "Disable testing", + "description": "Disable testing for a module", + "operationId": "module-registry#disable-testing", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "integer", + "description": "module id", + "example": 156642773316378940, + "format": "int64" + }, + "example": 6441682581977287000 + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Qui eos et consequatur occaecati porro deleniti." + }, + "example": "Quo officia in non." + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "module-registry" + ], + "summary": "Enable testing", + "description": "Enable testing for a module", + "operationId": "module-registry#enable-testing", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "string", + "description": "module id", + "example": "Dicta eaque sed debitis voluptate." + }, + "example": "Voluptatum corrupti dolore exercitationem." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "2c", + "minLength": 1, + "maxLength": 128 + }, + "example": "e" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnableTestingRequest" + }, + "example": { + "org": "p4", + "pipeline_id": [ + "Et tempora commodi eius vero.", + "Quod qui ad illo ut." + ], + "project": "wb", + "provider_connector": "Consequatur nisi nobis.", + "provisioner_type": "Id quis laboriosam porro.", + "provisioner_version": "Suscipit praesentium nesciunt tempore facilis.", + "release_pipeline": "Quisquam odio consequatur consectetur non." + } + } + } + }, + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "module-registry" + ], + "summary": "Update module testing", + "description": "Update module testing metadata", + "operationId": "module-registry#update-module-testing", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "string", + "description": "module id", + "example": "Doloribus voluptas illo porro ratione qui." + }, + "example": "Perspiciatis libero voluptatem iure possimus." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "tv", + "minLength": 1, + "maxLength": 128 + }, + "example": "e" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateTestingRequest" + }, + "example": { + "org": "ic8", + "pipeline_id": [ + "Rerum dolorum qui.", + "Facilis corporis cum ipsam sequi aut.", + "Quo vel aut quis dolorum." + ], + "project": "vwk", + "provider_connector": "Quos id consequatur corporis.", + "provisioner_type": "Nostrum ut ut esse excepturi quos dolore.", + "provisioner_version": "Iusto qui consequuntur iure maxime vel.", + "release_pipeline": "Neque dolore quod accusantium." + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{module_id}/metadata": { + "get": { + "tags": [ + "module-registry" + ], + "summary": "List module metadata", + "description": "List the module metadata from the module registry", + "operationId": "module-registry#list-metadata-by-module", + "parameters": [ + { + "name": "version", + "in": "query", + "description": "version of the module", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "version of the module", + "example": "Magnam optio qui fugit similique voluptatum." + }, + "example": "Dolore maiores sit quidem quo." + }, + { + "name": "submodule", + "in": "query", + "description": "submodule name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "submodule name", + "example": "Aperiam qui tempora est." + }, + "example": "Veritatis non consequatur." + }, + { + "name": "module_id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "string", + "description": "module id", + "example": "Itaque nulla officiis ullam id quibusdam qui." + }, + "example": "Et minima sit a blanditiis." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Sunt voluptas ut." + }, + "example": "Magnam voluptatem quisquam consequuntur ex corporis et." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListModuleMetadataResponse" + }, + "example": { + "account": "Ipsa ipsam in fuga facere numquam.", + "dependencies": [ + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + }, + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + }, + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + }, + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + } + ], + "metadata_error": "At deserunt.", + "module_version": "Odio ea reprehenderit recusandae magni et sapiente.", + "name": "Vero esse ipsum repellendus nulla et nesciunt.", + "outputs": [ + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + } + ], + "providers": [ + { + "provider_name": "Aut doloribus fuga quasi dolores iure.", + "provider_source": "Neque asperiores quo aliquid.", + "provider_version": "Quod assumenda molestias aut." + }, + { + "provider_name": "Aut doloribus fuga quasi dolores iure.", + "provider_source": "Neque asperiores quo aliquid.", + "provider_version": "Quod assumenda molestias aut." + } + ], + "resources": [ + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + }, + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + } + ], + "submodule": [ + "Possimus consequatur omnis sed in.", + "Amet consequatur.", + "Molestias error excepturi laudantium dignissimos." + ], + "system": "Facilis cum.", + "variables": [ + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + }, + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + }, + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + }, + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{module_id}/readme": { + "get": { + "tags": [ + "module-registry" + ], + "summary": "List module readme", + "description": "List the module readme from the module registry", + "operationId": "module-registry#list-readme-by-id", + "parameters": [ + { + "name": "version", + "in": "query", + "description": "version of the module", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "version of the module", + "example": "Assumenda at." + }, + "example": "Amet vel quae." + }, + { + "name": "submodule", + "in": "query", + "description": "submodule name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "submodule name", + "example": "Dolores est voluptatem." + }, + "example": "Repellat consequatur vel qui non et." + }, + { + "name": "module_id", + "in": "path", + "description": "module id", + "required": true, + "schema": { + "type": "string", + "description": "module id", + "example": "Voluptas voluptatem voluptatem." + }, + "example": "Saepe et ut minus enim repellendus." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Quidem animi." + }, + "example": "Voluptas doloribus sapiente." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{moduleId}/events": { + "post": { + "tags": [ + "module-registry" + ], + "summary": "Send an event related with a module execution", + "description": "Send an event related with a module execution", + "operationId": "module-registry#send-module-event", + "parameters": [ + { + "name": "moduleId", + "in": "path", + "description": "module id associated with this event", + "required": true, + "schema": { + "type": "string", + "description": "module id associated with this event", + "example": "k", + "minLength": 1, + "maxLength": 1024 + }, + "example": "u0" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SendModuleEventRequest" + }, + "example": { + "account": "ndo", + "eventType": "Sit autem.", + "metadata": { + "pipeline": "Eius nemo tempora quo.", + "pipeline_execution_id": "Recusandae atque eum repellat consequatur accusamus deleniti.", + "pipeline_execution_number": "Atque earum voluptatum.", + "pipeline_name": "Magni excepturi eos quo provident.", + "pipeline_stage_id": "Cumque laudantium et ea aut.", + "trigger": { + "Illum vel optio sit id.": "Et nemo in.", + "Ut et.": "Fuga in et sit ut id." + } + }, + "org": "06k", + "project": "i5" + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{moduleId}/executions": { + "get": { + "tags": [ + "module-registry" + ], + "summary": "List executions for a specific module", + "description": "List all module executions for a module.", + "operationId": "module-registry#list-module-executions-id", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "pipeline_execution_id", + "in": "query", + "description": "Pipeline identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline identifier", + "example": "Est quo fugit." + }, + "example": "Cumque similique." + }, + { + "name": "status", + "in": "query", + "description": "Status of the execution", + "allowEmptyValue": true, + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Dolor fuga." + }, + "description": "Status of the execution", + "example": [ + "Vel suscipit veniam aut corporis accusantium vel.", + "Magnam rerum cumque similique.", + "Repellendus voluptatem fugit inventore." + ] + }, + "example": [ + "Soluta natus molestias ut accusantium ipsa.", + "Placeat quasi necessitatibus eos culpa.", + "Enim optio commodi odio facilis." + ] + }, + { + "name": "start_time", + "in": "query", + "description": "Specify the start time for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the start time for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "end_time", + "in": "query", + "description": "Specify the end time limit for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the end time limit for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "moduleId", + "in": "path", + "description": "Module identifier", + "required": true, + "schema": { + "type": "string", + "description": "Module identifier", + "example": "Dolores voluptas." + }, + "example": "Aperiam exercitationem dolorem accusantium laboriosam." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "z", + "minLength": 1, + "maxLength": 128 + }, + "example": "5d" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ModuleExecutionResourceCollection" + }, + "example": [ + { + "account": "p", + "created": 7292717116780788000, + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "Modi atque cum a.", + "org": "5q", + "project": "ax2", + "status": "Qui numquam." + }, + { + "account": "p", + "created": 7292717116780788000, + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "Modi atque cum a.", + "org": "5q", + "project": "ax2", + "status": "Qui numquam." + }, + { + "account": "p", + "created": 7292717116780788000, + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "Modi atque cum a.", + "org": "5q", + "project": "ax2", + "status": "Qui numquam." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "module-registry" + ], + "summary": "Create a new module execution", + "description": "Create a new module execution.", + "operationId": "module-registry#create-module-execution", + "parameters": [ + { + "name": "moduleId", + "in": "path", + "description": "The unique identifier for the associated module", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated module", + "example": "Ea est autem." + }, + "example": "Quisquam laboriosam at ab velit omnis." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateModuleExecutionRequest" + }, + "example": { + "account": "a6", + "org": "u", + "pipeline": "Dignissimos tempore ratione.", + "pipelineExecutionId": "Praesentium illum eius.", + "pipelineStageId": "Dolor exercitationem officiis.", + "project": "c" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateModuleExecutionResponse" + }, + "example": { + "account": "n", + "created": 3965277890972858400, + "metadata": { + "pipeline": "Sequi alias praesentium.", + "pipeline_execution_id": "Ad est vero.", + "pipeline_execution_number": "Necessitatibus qui eligendi aut sit cum praesentium.", + "pipeline_name": "Fugiat modi tenetur et deserunt qui ipsam.", + "pipeline_stage_id": "Aut earum et molestiae.", + "trigger": { + "Nisi ad impedit officiis voluptas id.": "Recusandae et facere enim.", + "Quis ullam incidunt amet explicabo aut animi.": "Voluptatem est id aut hic doloremque illum.", + "Voluptate itaque iusto et eum.": "Laboriosam omnis esse delectus." + } + }, + "moduleId": "Ad debitis alias amet tempore dolorum.", + "org": "m3", + "project": "11", + "status": "Perferendis est est sint dolor." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{name}/{system}/{version}/metadata": { + "post": { + "tags": [ + "module-registry" + ], + "summary": "Create module data", + "description": "Create a new module in the module registry", + "operationId": "module-registry#module-parsed-data", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "module name", + "required": true, + "schema": { + "type": "string", + "description": "module name", + "example": "Totam soluta natus debitis." + }, + "example": "Ut fugiat magni repellendus non blanditiis." + }, + { + "name": "system", + "in": "path", + "description": "system name", + "required": true, + "schema": { + "type": "string", + "description": "system name", + "example": "Vel tempora illo voluptatem laborum sit." + }, + "example": "Aliquid mollitia autem dolores perferendis enim." + }, + { + "name": "version", + "in": "path", + "description": "version of the module", + "required": true, + "schema": { + "type": "string", + "description": "version of the module", + "example": "Architecto fugit voluptates repellendus eum assumenda." + }, + "example": "Maxime maiores aut eum dolor." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Pariatur nulla quis voluptatum qui animi consequuntur." + }, + "example": "Repudiandae ea occaecati nobis facere." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateModuleDataRequest" + }, + "example": { + "download_url": "Cupiditate ipsum eos amet corrupti rerum.", + "error": { + "A excepturi.": "Molestiae officiis magni odit sed nihil explicabo.", + "Eveniet perspiciatis quia fugiat omnis reprehenderit error.": "Dolorem reprehenderit aut facere aut voluptas." + }, + "examples_paths": [ + "Quidem est recusandae necessitatibus.", + "Sit dolorem commodi nisi totam atque hic.", + "Alias reprehenderit consequatur quidem aut aliquid expedita.", + "Fugiat tempora vel sit similique ex." + ], + "git_tag": "Ipsum autem delectus veritatis sunt perspiciatis ab.", + "metadata": "Sunt est corrupti et nihil.", + "repo_url": "Excepturi ea nulla.", + "submodule_name": "Sunt consequatur mollitia consequatur magnam eaque dolores.", + "submodule_paths": [ + "Quis rem.", + "Quas temporibus nemo.", + "Modi quia qui quibusdam." + ] + } + } + } + }, + "responses": { + "201": { + "description": "Created response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{name}/{system}/{version}/readme": { + "post": { + "tags": [ + "module-registry" + ], + "summary": "Create module readme", + "description": "Endpoint to push the Readme for a given module", + "operationId": "module-registry#post-module-readme", + "parameters": [ + { + "name": "submoduleName", + "in": "query", + "description": "submodule name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "submodule name", + "example": "Explicabo repudiandae consequatur animi et rerum quia." + }, + "example": "Dolor soluta porro vero unde aperiam." + }, + { + "name": "name", + "in": "path", + "description": "module name", + "required": true, + "schema": { + "type": "string", + "description": "module name", + "example": "Earum blanditiis labore molestias adipisci aut veritatis." + }, + "example": "Aut amet aliquid adipisci architecto quam esse." + }, + { + "name": "system", + "in": "path", + "description": "system name", + "required": true, + "schema": { + "type": "string", + "description": "system name", + "example": "Quidem quia." + }, + "example": "Ut qui ut eveniet molestiae." + }, + { + "name": "version", + "in": "path", + "description": "version of the module", + "required": true, + "schema": { + "type": "string", + "description": "version of the module", + "example": "Itaque quia possimus qui laudantium dolorum." + }, + "example": "Reiciendis et." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Laborum aut atque nam." + }, + "example": "Enim quo sit dolores rerum commodi sunt." + }, + { + "name": "Content-Length", + "in": "header", + "description": "Size in bytes of the readme", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Size in bytes of the readme", + "example": 8467649137165463000, + "format": "int64" + }, + "example": 1248628763415340800 + } + ], + "responses": { + "201": { + "description": "Created response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/{name}/{system}/tags": { + "post": { + "tags": [ + "module-registry" + ], + "summary": "Create module tags", + "description": "List all tags for a given module", + "operationId": "module-registry#post-module-tags", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "module name", + "required": true, + "schema": { + "type": "string", + "description": "module name", + "example": "7le", + "minLength": 1, + "maxLength": 128 + }, + "example": "vg" + }, + { + "name": "system", + "in": "path", + "description": "system name", + "required": true, + "schema": { + "type": "string", + "description": "system name", + "example": "0", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "example": "k" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "account that owns the module", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account that owns the module", + "example": "zy3", + "minLength": 1, + "maxLength": 128 + }, + "example": "l" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateModuleTagsRequest" + }, + "example": { + "error": { + "Rem porro quo voluptatem.": "Dolore consequuntur dolores architecto autem autem ea.", + "Temporibus et sint fugiat ad fugit doloremque.": "Magnam ab.", + "Veritatis ut rerum modi minima.": "Error et aut culpa temporibus optio corporis." + }, + "tags": [ + "Consequuntur ut dolor eos deleniti et.", + "Facere reprehenderit tempore impedit suscipit." + ] + } + } + } + }, + "responses": { + "201": { + "description": "Created response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/modules/connectors": { + "get": { + "tags": [ + "module-registry" + ], + "summary": "List connectors", + "description": "List all connectors from the module registry for a specific account", + "operationId": "module-registry#list-connectors", + "parameters": [ + { + "name": "Harness-Account", + "in": "header", + "description": "account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Et odio perspiciatis." + }, + "example": "Eligendi recusandae." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Nam sit quo fugit." + }, + "example": [ + "Ex et veritatis aut similique.", + "Dolor id est.", + "Ullam molestias recusandae." + ] + }, + "example": [ + "Id ut.", + "Voluptate qui porro occaecati placeat." + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/activities": { + "get": { + "tags": [ + "activities" + ], + "summary": "List activities", + "description": "List all activities", + "operationId": "activities#list-activities", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "workspace", + "in": "query", + "description": "Workspace identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "Saepe ipsum omnis adipisci voluptate illo recusandae." + }, + "example": "Rerum et et odit est." + }, + { + "name": "pipeline", + "in": "query", + "description": "Pipeline filter", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline filter", + "example": "Quas rerum illum porro iusto." + }, + "example": "Accusantium fuga tempora." + }, + { + "name": "pipeline_execution_id", + "in": "query", + "description": "Pipeline execution filter", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline execution filter", + "example": "Ipsam error cupiditate numquam libero tenetur." + }, + "example": "Enim quod molestias." + }, + { + "name": "pipeline_stage_id", + "in": "query", + "description": "Pipeline stage filter", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline stage filter", + "example": "Sed et ratione accusamus cum repellendus." + }, + "example": "Est vero quidem est voluptatibus." + }, + { + "name": "activity_type", + "in": "query", + "description": "Activity type filter", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Activity type filter", + "example": "Beatae nostrum est illo minima voluptatem." + }, + "example": "Possimus ut perferendis." + }, + { + "name": "activity_status", + "in": "query", + "description": "Activity status filter", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Activity status filter", + "example": "Officiis esse fugiat rerum ut porro." + }, + "example": "Vel autem porro non repudiandae temporibus." + }, + { + "name": "start_time", + "in": "query", + "description": "Start time filter (Unix timestamp)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Start time filter (Unix timestamp)", + "example": 4879208973764510000, + "format": "int64" + }, + "example": 7379055122571881000 + }, + { + "name": "end_time", + "in": "query", + "description": "End time filter (Unix timestamp)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "End time filter (Unix timestamp)", + "example": 7962499478721054000, + "format": "int64" + }, + "example": 6849761191533075000 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "example": "9w" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "example": "a" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "example": "h" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ActivityResourceCollection" + }, + "example": [ + { + "account": "q2", + "created": 5866788083526893000, + "id": "Et odio nam.", + "metadata": { + "PlannedChangesCount": 4038944726028888000, + "activity_status": "failure", + "activity_type": "drifted", + "cost_breakdown_uuid": "Optio nobis explicabo sit possimus accusamus deserunt.", + "cost_currency": "Facilis enim quo ea temporibus esse.", + "cost_diff_total_monthly": "Voluptatem eligendi reiciendis doloribus.", + "cost_diff_uuid": "Voluptas autem iste.", + "cost_past_total_monthly": "Assumenda voluptates officiis.", + "cost_total_monthly": "Odit suscipit nesciunt voluptate.", + "cost_total_monthly_percentage_change": "Dolorem natus velit aspernatur in eos blanditiis.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": true, + "git_branch": "Quidem quasi eligendi at eveniet quaerat.", + "git_commit_message": "Voluptatibus debitis vitae dolor.", + "git_commit_sha": "Quidem omnis autem et et magni.", + "git_repo": "Ex molestiae iusto voluptate enim.", + "modules_uuid": "Inventore aut quaerat.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Ipsum expedita.", + "pipeline_execution_id": "Tenetur ipsum autem doloremque est itaque.", + "pipeline_execution_number": "Doloremque rerum perspiciatis et.", + "pipeline_name": "Consequatur quibusdam aut eligendi in voluptatem.", + "pipeline_stage_id": "Nesciunt nobis eos qui ea et.", + "plan_uuid": "Vel occaecati veritatis deserunt ipsum.", + "providers_uuid": "Unde est unde esse.", + "provisioner": "Quia provident cupiditate consequatur veniam dolores.", + "provisioner_version": "Non eaque et praesentium voluptas iure.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "Dolores neque.", + "state_uuid": "Expedita exercitationem.", + "trigger": { + "Animi nesciunt adipisci dolores.": "In enim soluta.", + "Numquam reiciendis ex quia fuga vel est.": "Vel eius aut omnis." + } + }, + "org": "tw", + "project": "ksp", + "workspace": "Ipsam sed et." + }, + { + "account": "q2", + "created": 5866788083526893000, + "id": "Et odio nam.", + "metadata": { + "PlannedChangesCount": 4038944726028888000, + "activity_status": "failure", + "activity_type": "drifted", + "cost_breakdown_uuid": "Optio nobis explicabo sit possimus accusamus deserunt.", + "cost_currency": "Facilis enim quo ea temporibus esse.", + "cost_diff_total_monthly": "Voluptatem eligendi reiciendis doloribus.", + "cost_diff_uuid": "Voluptas autem iste.", + "cost_past_total_monthly": "Assumenda voluptates officiis.", + "cost_total_monthly": "Odit suscipit nesciunt voluptate.", + "cost_total_monthly_percentage_change": "Dolorem natus velit aspernatur in eos blanditiis.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": true, + "git_branch": "Quidem quasi eligendi at eveniet quaerat.", + "git_commit_message": "Voluptatibus debitis vitae dolor.", + "git_commit_sha": "Quidem omnis autem et et magni.", + "git_repo": "Ex molestiae iusto voluptate enim.", + "modules_uuid": "Inventore aut quaerat.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Ipsum expedita.", + "pipeline_execution_id": "Tenetur ipsum autem doloremque est itaque.", + "pipeline_execution_number": "Doloremque rerum perspiciatis et.", + "pipeline_name": "Consequatur quibusdam aut eligendi in voluptatem.", + "pipeline_stage_id": "Nesciunt nobis eos qui ea et.", + "plan_uuid": "Vel occaecati veritatis deserunt ipsum.", + "providers_uuid": "Unde est unde esse.", + "provisioner": "Quia provident cupiditate consequatur veniam dolores.", + "provisioner_version": "Non eaque et praesentium voluptas iure.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "Dolores neque.", + "state_uuid": "Expedita exercitationem.", + "trigger": { + "Animi nesciunt adipisci dolores.": "In enim soluta.", + "Numquam reiciendis ex quia fuga vel est.": "Vel eius aut omnis." + } + }, + "org": "tw", + "project": "ksp", + "workspace": "Ipsam sed et." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/activities/{id}/resource-changes": { + "get": { + "tags": [ + "activities" + ], + "summary": "List resource changes", + "description": "List resource changes associated with this activity", + "operationId": "activities#list-activity-resource-changes", + "parameters": [ + { + "name": "workspace", + "in": "query", + "description": "The unique identifier for the associated workspace", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Non maxime." + }, + "example": "Nemo assumenda iure omnis." + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "z", + "minLength": 1, + "maxLength": 128 + }, + "example": "96" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "fe", + "minLength": 1, + "maxLength": 128 + }, + "example": "1" + }, + { + "name": "id", + "in": "path", + "description": "The unique identifier for this activity", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for this activity", + "example": "Facere qui." + }, + "example": "Voluptatum voluptas nisi quia quia." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "il", + "minLength": 1, + "maxLength": 128 + }, + "example": "5p" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListActivityResourceChangesResponse" + }, + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Assumenda illum dolores quis ratione.", + "pipeline_stage": "Rerum nemo quod.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Numquam accusantium inventore.", + "workspace_id": "Ut debitis impedit esse." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/activities": { + "get": { + "tags": [ + "ansible" + ], + "summary": "List Ansible Activities", + "description": "List all activities.", + "operationId": "ansible#list-ansible-activities", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "created,DESC", + "example": "created,DESC", + "enum": [ + "created,ASC", + "created,DESC" + ] + }, + "example": "created,DESC" + }, + { + "name": "InventorySearchTerm", + "in": "query", + "description": "Search term to filter by inventory identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Search term to filter by inventory identifier", + "example": "inventory_1" + }, + "example": "inventory_1" + }, + { + "name": "PlaybookSearchTerm", + "in": "query", + "description": "Search term to filter by playbook identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Search term to filter by playbook identifier", + "example": "playbook_1" + }, + "example": "playbook_1" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "14s", + "minLength": 1, + "maxLength": 128 + }, + "example": "1" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "8", + "minLength": 1, + "maxLength": 128 + }, + "example": "b" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "example": "rrn" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnsibleActivityResourceCollection" + }, + "example": [ + { + "account": "8a", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "squ", + "playbooks": [ + "init_webservers" + ], + "project": "d" + }, + { + "account": "8a", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "squ", + "playbooks": [ + "init_webservers" + ], + "project": "d" + }, + { + "account": "8a", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "squ", + "playbooks": [ + "init_webservers" + ], + "project": "d" + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/activities/{id}": { + "get": { + "tags": [ + "ansible" + ], + "summary": "Show ansible activity", + "description": "Show an individual ansible activity.", + "operationId": "ansible#show-ansible-activity", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "nx", + "minLength": 1, + "maxLength": 128 + }, + "example": "ftc" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "5g", + "minLength": 1, + "maxLength": 128 + }, + "example": "km" + }, + { + "name": "id", + "in": "path", + "description": "The unique ID for this activity", + "required": true, + "schema": { + "type": "string", + "description": "The unique ID for this activity", + "example": "Aliquam quod velit cupiditate quibusdam nihil." + }, + "example": "Quibusdam ad aut modi ut." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "as", + "minLength": 1, + "maxLength": 128 + }, + "example": "h" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowAnsibleActivityResponse" + }, + "example": { + "account": "n", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "failure", + "git_branch": "Quos harum quisquam aut ea.", + "git_commit_message": "Eius veritatis nihil.", + "git_commit_sha": "Labore asperiores eum impedit.", + "git_repo": "Sapiente sed optio.", + "pipeline": "Voluptate unde.", + "pipeline_execution_id": "Ut cumque aut quia praesentium.", + "pipeline_execution_number": "Sint laboriosam iste iusto totam id nostrum.", + "pipeline_name": "Veniam quo quas hic dolorum.", + "pipeline_stage_id": "Accusantium aperiam est et aut temporibus.", + "results_uuid": "Dolor et qui autem consequuntur.", + "trigger": { + "Cum quisquam ut quo alias similique.": "Alias perspiciatis odit eligendi quidem." + } + }, + "org": "e4", + "playbooks": [ + "init_webservers" + ], + "project": "9ei" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/data": { + "get": { + "tags": [ + "ansible" + ], + "summary": "List data", + "description": "List all stored data for a inventory or playbook.", + "operationId": "ansible#list-data", + "parameters": [ + { + "name": "inventory_search_term", + "in": "query", + "description": "Inventory search term", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Inventory search term", + "example": "Et molestiae." + }, + "example": "Aut laboriosam et dicta vitae sit." + }, + { + "name": "playbook_search_term", + "in": "query", + "description": "Playbook search term", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Playbook search term", + "example": "Tempore facere voluptatem et unde officiis." + }, + "example": "Beatae error placeat ut." + }, + { + "name": "pipeline_execution_id", + "in": "query", + "description": "Filter by pipeline execution ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by pipeline execution ID", + "example": "Earum quasi hic in itaque." + }, + "example": "Maiores laudantium." + }, + { + "name": "pipeline_stage_id", + "in": "query", + "description": "Filter by pipeline execution stage ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by pipeline execution stage ID", + "example": "Et et adipisci aut et iusto rerum." + }, + "example": "Enim dignissimos id fuga quisquam." + }, + { + "name": "data_type", + "in": "query", + "description": "Filter by data type", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by data type", + "example": "Quae quia." + }, + "example": "Assumenda quos magni quibusdam." + }, + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ax", + "minLength": 1, + "maxLength": 128 + }, + "example": "lpl" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "gg", + "minLength": 1, + "maxLength": 128 + }, + "example": "s" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "0fq", + "minLength": 1, + "maxLength": 128 + }, + "example": "q6" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnsibleDataResourceCollection" + }, + "example": [ + { + "account": "bx", + "created": 9161657249044464000, + "data_type": "task_results", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "org": "g1", + "pipeline_execution_id": "Deserunt dolorem dignissimos sunt ea.", + "pipeline_id": "Quo ut.", + "pipeline_stage_id": "Non saepe qui quia occaecati consequatur esse.", + "playbooks": [ + "init_webservers" + ], + "project": "d", + "stage_id": "Adipisci quia natus laborum quia expedita." + }, + { + "account": "bx", + "created": 9161657249044464000, + "data_type": "task_results", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "org": "g1", + "pipeline_execution_id": "Deserunt dolorem dignissimos sunt ea.", + "pipeline_id": "Quo ut.", + "pipeline_stage_id": "Non saepe qui quia occaecati consequatur esse.", + "playbooks": [ + "init_webservers" + ], + "project": "d", + "stage_id": "Adipisci quia natus laborum quia expedita." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "ansible" + ], + "summary": "Create data", + "description": "Store binary data generated by ansible.", + "operationId": "ansible#create-data", + "parameters": [ + { + "name": "pipeline_id", + "in": "query", + "description": "The unique identifier for the associated pipeline", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Ut magnam aut omnis." + }, + "example": "Corporis possimus minima." + }, + { + "name": "stage_id", + "in": "query", + "description": "The unique identifier for a stage", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The unique identifier for a stage", + "example": "Culpa molestiae officia perferendis." + }, + "example": "A esse." + }, + { + "name": "pipeline_execution_id", + "in": "query", + "description": "The unique identifier for the associated pipeline execution", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Accusantium occaecati quis." + }, + "example": "At et quasi dolore optio." + }, + { + "name": "pipeline_stage_id", + "in": "query", + "description": "The unique identifier for the associated pipeline execution stage", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Voluptas maxime in consequatur." + }, + "example": "Tempora perspiciatis molestiae eum recusandae fuga." + }, + { + "name": "data_type", + "in": "query", + "description": "Type of data stored", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Type of data stored", + "example": "task_results", + "enum": [ + "task_results" + ] + }, + "example": "task_results" + }, + { + "name": "inventories", + "in": "query", + "description": "Inventories associated with this event", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Inventories associated with this event", + "example": [ + "webservers_europe" + ] + }, + "example": [ + "webservers_europe" + ] + }, + { + "name": "playbooks", + "in": "query", + "description": "Playbooks associated with this event", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Playbooks associated with this event", + "example": [ + "init_webservers" + ] + }, + "example": [ + "init_webservers" + ] + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "example": "m9o" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "d", + "minLength": 1, + "maxLength": 128 + }, + "example": "q" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "m32", + "minLength": 1, + "maxLength": 128 + }, + "example": "33s" + }, + { + "name": "Content-Length", + "in": "header", + "description": "Size in bytes of the data.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Size in bytes of the data.", + "example": 1523419674243980000, + "format": "int64" + }, + "example": 7869145332217044000 + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateAnsibleDataResponse" + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/data/{id}": { + "get": { + "tags": [ + "ansible" + ], + "summary": "Show data", + "description": "Get binary data generated by the provisioner, such as plans and state files.", + "operationId": "ansible#show-data", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "example": "9v7" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "zoh", + "minLength": 1, + "maxLength": 128 + }, + "example": "v2p" + }, + { + "name": "id", + "in": "path", + "description": "The unique identifier for the data", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "7bu", + "minLength": 1, + "maxLength": 128 + }, + "example": "ngg" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/events": { + "post": { + "tags": [ + "ansible" + ], + "summary": "Send event", + "operationId": "ansible#send-ansible-event", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "1g", + "minLength": 1, + "maxLength": 128 + }, + "example": "b" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "nv2", + "minLength": 1, + "maxLength": 128 + }, + "example": "m" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "wj", + "minLength": 1, + "maxLength": 128 + }, + "example": "4ch" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SendAnsibleEventRequest" + }, + "example": { + "event_type": "activity-execution", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "failure", + "git_branch": "Perspiciatis possimus minus quaerat quaerat.", + "git_commit_message": "Maxime doloribus.", + "git_commit_sha": "Sit natus quam tempora est rerum.", + "git_repo": "Voluptatem impedit commodi.", + "pipeline": "Ullam minima optio eveniet iusto quia dolor.", + "pipeline_execution_id": "Nulla voluptatem.", + "pipeline_execution_number": "Nihil omnis cumque rerum fuga.", + "pipeline_name": "Adipisci iure dolorem voluptatibus quia quasi.", + "pipeline_stage_id": "Incidunt accusamus hic.", + "results_uuid": "Cupiditate eos eaque fugit.", + "trigger": { + "Occaecati aspernatur.": "Iste praesentium earum." + } + }, + "playbooks": [ + "init_webservers" + ] + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/inventory": { + "get": { + "tags": [ + "ansible" + ], + "summary": "List Ansible inventory", + "description": "List all inventories.", + "operationId": "ansible#list-inventory", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter results by partial name match", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by partial name match", + "default": "", + "example": "mysta" + }, + "example": "mysta" + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "name,ASC", + "example": "name,ASC", + "enum": [ + "name,ASC", + "name,DESC", + "updated,ASC", + "updated,DESC" + ] + }, + "example": "name,ASC" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "l7f", + "minLength": 1, + "maxLength": 128 + }, + "example": "0c" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7o", + "minLength": 1, + "maxLength": 128 + }, + "example": "g" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "8", + "minLength": 1, + "maxLength": 128 + }, + "example": "x1" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InventoryResourceCollection" + }, + "example": [ + { + "account": "ya", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "ckm", + "project": "0", + "type": "dynamic", + "updated": 1627686800 + }, + { + "account": "ya", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "ckm", + "project": "0", + "type": "dynamic", + "updated": 1627686800 + }, + { + "account": "ya", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "ckm", + "project": "0", + "type": "dynamic", + "updated": 1627686800 + }, + { + "account": "ya", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "ckm", + "project": "0", + "type": "dynamic", + "updated": 1627686800 + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{identifier}": { + "delete": { + "tags": [ + "ansible" + ], + "summary": "Delete Ansible inventory", + "description": "Delete an existing inventory.", + "operationId": "ansible#delete-inventory", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "8eh", + "minLength": 1, + "maxLength": 128 + }, + "example": "lbw" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "pp", + "minLength": 1, + "maxLength": 128 + }, + "example": "7k" + }, + { + "name": "identifier", + "in": "path", + "description": "The unique identifier for this inventory", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "Facere nisi animi officiis." + }, + "example": "Nihil culpa minima ab pariatur." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "04r", + "minLength": 1, + "maxLength": 128 + }, + "example": "hsh" + } + ], + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "ansible" + ], + "summary": "Show Ansible inventory", + "description": "Show an individual inventory.", + "operationId": "ansible#show-inventory", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "v6", + "minLength": 1, + "maxLength": 128 + }, + "example": "61" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ynd", + "minLength": 1, + "maxLength": 128 + }, + "example": "i0" + }, + { + "name": "identifier", + "in": "path", + "description": "The unique identifier for this inventory", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "Quisquam quae nostrum repellendus et eaque." + }, + "example": "Unde nulla vitae animi aut tempore itaque." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "on", + "minLength": 1, + "maxLength": 128 + }, + "example": "zo" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowInventoryResponse" + }, + "example": { + "account": "p", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "n", + "project": "4", + "type": "dynamic", + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "ansible" + ], + "summary": "Update Ansible inventory", + "description": "Update an existing inventory.", + "operationId": "ansible#update-inventory", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "44", + "minLength": 1, + "maxLength": 128 + }, + "example": "r" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "n", + "minLength": 1, + "maxLength": 128 + }, + "example": "0ae" + }, + { + "name": "identifier", + "in": "path", + "description": "The unique identifier for this inventory", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "example": "test_inventory" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "b8f", + "minLength": 1, + "maxLength": 128 + }, + "example": "add" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateInventoryRequest" + }, + "example": { + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "name": "test inventory" + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/inventory/dynamic": { + "post": { + "tags": [ + "ansible" + ], + "summary": "Create dynamic Ansible inventory", + "description": "Create a new dynamic inventory.", + "operationId": "ansible#create-inventory-dynamic", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "am", + "minLength": 1, + "maxLength": 128 + }, + "example": "lha" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "f", + "minLength": 1, + "maxLength": 128 + }, + "example": "n5u" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "3zp", + "minLength": 1, + "maxLength": 128 + }, + "example": "qai" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateDynamicInventoryRequest" + }, + "example": { + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory" + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateDynamicInventoryResponse" + }, + "example": { + "account": "nh", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "l7", + "project": "4g", + "type": "dynamic", + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/inventory/manual": { + "post": { + "tags": [ + "ansible" + ], + "summary": "Create manual Ansible inventory", + "description": "Create a new manual inventory.", + "operationId": "ansible#create-inventory-manual", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "4", + "minLength": 1, + "maxLength": 128 + }, + "example": "a" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "example": "yp" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ibh", + "minLength": 1, + "maxLength": 128 + }, + "example": "6la" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateManualInventoryRequest" + }, + "example": { + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory" + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateManualInventoryResponse" + }, + "example": { + "account": "x", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "yb", + "project": "wac", + "type": "manual", + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/playbook": { + "get": { + "tags": [ + "ansible" + ], + "summary": "List Ansible playbooks", + "description": "List all playbooks.", + "operationId": "ansible#list-playbooks", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter results by partial name match", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by partial name match", + "default": "", + "example": "mysta" + }, + "example": "mysta" + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "name,ASC", + "example": "name,DESC", + "enum": [ + "name,ASC", + "name,DESC", + "updated,ASC", + "updated,DESC" + ] + }, + "example": "name,ASC" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "cu", + "minLength": 1, + "maxLength": 128 + }, + "example": "290" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "example": "ta" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "3", + "minLength": 1, + "maxLength": 128 + }, + "example": "y7l" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlaybookResourceCollection" + }, + "example": [ + { + "account": "e", + "created": 1627590400, + "identifier": "Mollitia sed minus culpa.", + "name": "test playbook", + "org": "vz", + "project": "m", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + }, + { + "account": "e", + "created": 1627590400, + "identifier": "Mollitia sed minus culpa.", + "name": "test playbook", + "org": "vz", + "project": "m", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "ansible" + ], + "summary": "Create Ansible playbook", + "description": "Create a new playbook.", + "operationId": "ansible#create-playbook", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "o", + "minLength": 1, + "maxLength": 128 + }, + "example": "hr0" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "4w0", + "minLength": 1, + "maxLength": 128 + }, + "example": "v" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "example": "eoj" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreatePlaybookRequest" + }, + "example": { + "identifier": "Voluptatem nesciunt.", + "name": "test playbook", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/" + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreatePlaybookResponse" + }, + "example": { + "account": "0zb", + "created": 1627590400, + "identifier": "Inventore voluptatem impedit est.", + "name": "test playbook", + "org": "x", + "project": "3y6", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/ansible/playbook/{identifier}": { + "delete": { + "tags": [ + "ansible" + ], + "summary": "Delete Ansible playbook", + "description": "Delete an existing playbook.", + "operationId": "ansible#delete-playbook", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "nc", + "minLength": 1, + "maxLength": 128 + }, + "example": "l" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "example": "ude" + }, + { + "name": "identifier", + "in": "path", + "description": "The unique identifier for this playbook", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Vel sit deserunt et eum." + }, + "example": "Placeat officia inventore quo ut." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "n", + "minLength": 1, + "maxLength": 128 + }, + "example": "3kl" + } + ], + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "ansible" + ], + "summary": "Show Ansible playbook", + "description": "Show an individual playbook.", + "operationId": "ansible#show-playbook", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ar", + "minLength": 1, + "maxLength": 128 + }, + "example": "j" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "g7q", + "minLength": 1, + "maxLength": 128 + }, + "example": "c3m" + }, + { + "name": "identifier", + "in": "path", + "description": "The unique identifier for this playbook", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Doloribus aut." + }, + "example": "Omnis error ipsum tenetur corrupti." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "vp", + "minLength": 1, + "maxLength": 128 + }, + "example": "pn" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowPlaybookResponse" + }, + "example": { + "account": "mu", + "created": 1627590400, + "identifier": "Impedit corrupti modi rerum dolor laudantium.", + "name": "test playbook", + "org": "8", + "project": "m0", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "ansible" + ], + "summary": "Update Ansible playbook", + "description": "Update an existing playbook.", + "operationId": "ansible#update-playbook", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ils", + "minLength": 1, + "maxLength": 128 + }, + "example": "u" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "s7y", + "minLength": 1, + "maxLength": 128 + }, + "example": "h" + }, + { + "name": "identifier", + "in": "path", + "description": "The unique identifier for this playbook", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Porro veritatis." + }, + "example": "Ea voluptas sequi ullam facilis." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "6st", + "minLength": 1, + "maxLength": 128 + }, + "example": "1fp" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdatePlaybookRequest" + }, + "example": { + "name": "test playbook", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/" + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/approvals": { + "get": { + "tags": [ + "approvals" + ], + "summary": "List approvals", + "description": "List all the approvals", + "operationId": "approvals#list-approvals", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "workspace", + "in": "query", + "description": "Workspace identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "Atque sit maxime voluptas dolorem." + }, + "example": "Corporis et." + }, + { + "name": "pipeline_execution_id", + "in": "query", + "description": "Pipeline identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline identifier", + "example": "Aperiam voluptas qui ut minus in totam." + }, + "example": "Eos corporis eius magnam commodi." + }, + { + "name": "pipeline_stage_id", + "in": "query", + "description": "Pipeline stage identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline stage identifier", + "example": "Incidunt blanditiis aperiam deleniti non." + }, + "example": "Dolores maxime reiciendis officiis ut." + }, + { + "name": "status_type", + "in": "query", + "description": "Status of the approval step", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Status of the approval step", + "example": "pending", + "enum": [ + "approved", + "rejected", + "pending" + ] + }, + "example": "pending" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "o5", + "minLength": 1, + "maxLength": 128 + }, + "example": "6" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "l83", + "minLength": 1, + "maxLength": 128 + }, + "example": "r" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "uop", + "minLength": 1, + "maxLength": 128 + }, + "example": "e" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApprovalResourceCollection" + }, + "example": [ + { + "account": "4", + "actioned_by": "John Doe", + "created": 3621902536542514000, + "id": "Sed accusamus voluptatem nisi et accusantium.", + "org": "l4", + "pipeline_execution_id": "Nobis aspernatur rerum vero aliquam.", + "pipeline_stage_id": "Et eius culpa nobis explicabo.", + "project": "ec", + "status": "Doloremque necessitatibus ab reprehenderit.", + "updated": 3066046670084265000, + "workspace_id": "Animi qui laudantium." + }, + { + "account": "4", + "actioned_by": "John Doe", + "created": 3621902536542514000, + "id": "Sed accusamus voluptatem nisi et accusantium.", + "org": "l4", + "pipeline_execution_id": "Nobis aspernatur rerum vero aliquam.", + "pipeline_stage_id": "Et eius culpa nobis explicabo.", + "project": "ec", + "status": "Doloremque necessitatibus ab reprehenderit.", + "updated": 3066046670084265000, + "workspace_id": "Animi qui laudantium." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "approvals" + ], + "summary": "Create approval", + "description": "Create an approval resource", + "operationId": "approvals#create-approval", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "example": "y" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "8y8", + "minLength": 1, + "maxLength": 128 + }, + "example": "3" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "nlm", + "minLength": 1, + "maxLength": 128 + }, + "example": "p4" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateApprovalRequest" + }, + "example": { + "pipeline_execution_id": "Et eius rem officia est.", + "pipeline_stage_id": "Enim aperiam.", + "status": "approved", + "workspace_id": "Error id." + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApprovalsCreateApprovalResponseBodyCreation" + }, + "example": { + "id": "Possimus fuga modi." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/approvals/{id}": { + "get": { + "tags": [ + "approvals" + ], + "summary": "Show approval", + "description": "Retrieve a single approval", + "operationId": "approvals#show-approval", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "qnw", + "minLength": 1, + "maxLength": 128 + }, + "example": "t4" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "9", + "minLength": 1, + "maxLength": 128 + }, + "example": "r5" + }, + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "59c07d97-12b7-4979-96fd-f9a77c4a84e0", + "format": "uuid" + }, + "example": "c5a8dc4a-b8de-44ea-890e-4e9897045c22" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "g3", + "minLength": 1, + "maxLength": 128 + }, + "example": "8" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApprovalsShowApprovalResponseBodyStatusInfo" + }, + "example": { + "actioned_by": "John Doe", + "created": 1318914910617537300, + "status": "Nostrum nobis in consectetur ut aut.", + "updated": 8593241892990174000 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "approvals" + ], + "summary": "Update approval", + "description": "Update a single approval", + "operationId": "approvals#update-approval", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "example": "s" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "example": "34" + }, + { + "name": "id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "2a2554c8-0dde-4bbc-8e02-5c40361d7575", + "format": "uuid" + }, + "example": "48d58ff0-917a-496d-a983-5ed0eb2c1de0" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "x", + "minLength": 1, + "maxLength": 128 + }, + "example": "h5e" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateApprovalRequest" + }, + "example": { + "actioned_by": "John Doe", + "status": "approved" + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/costs": { + "get": { + "tags": [ + "costs" + ], + "summary": "List costs", + "description": "List the monthly cost per each workspace", + "operationId": "costs#list-costs", + "parameters": [ + { + "name": "start_time", + "in": "query", + "description": "Specify the start time for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the start time for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "end_time", + "in": "query", + "description": "Specify the end time limit for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the end time limit for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "workspaces", + "in": "query", + "description": "Filter the workspaces to retrieve the cost", + "allowEmptyValue": true, + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Harum minima soluta veritatis." + }, + "description": "Filter the workspaces to retrieve the cost", + "example": [ + "Quidem et ipsum blanditiis at.", + "Illo ut corrupti odio eos et.", + "Dolorem aut." + ] + }, + "example": [ + "Itaque totam tempore non.", + "Doloribus voluptatem sed aliquid assumenda quia ut." + ] + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "6u", + "minLength": 1, + "maxLength": 128 + }, + "example": "f" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "example": "u" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "zt", + "minLength": 1, + "maxLength": 128 + }, + "example": "h" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListCostsResponse" + }, + "example": { + "pageSize": 50, + "totalItems": 1800, + "totalPages": 36, + "workspaces": [ + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/costs/{workspace}": { + "get": { + "tags": [ + "costs" + ], + "summary": "List costs per workspace", + "description": "List the cost of the workspace and correlate it with the executions", + "operationId": "costs#list-costs-per-workspace", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "start_time", + "in": "query", + "description": "Specify the start time for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the start time for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "end_time", + "in": "query", + "description": "Specify the end time limit for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the end time limit for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "vek", + "minLength": 1, + "maxLength": 128 + }, + "example": "bu" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "2p", + "minLength": 1, + "maxLength": 128 + }, + "example": "gu8" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace id to retrieve the cost and the metadata associated with it", + "required": true, + "schema": { + "type": "string", + "description": "Workspace id to retrieve the cost and the metadata associated with it", + "example": "Deleniti natus nesciunt dolorem provident iusto est." + }, + "example": "Aut blanditiis exercitationem quod et voluptates." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "sd3", + "minLength": 1, + "maxLength": 128 + }, + "example": "i" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CostResourceCollection" + }, + "example": [ + { + "account": "5x", + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "org": "7", + "pipeline": "Voluptatum deleniti odit sit rerum quia.", + "pipeline_execution_id": "Quasi qui.", + "pipeline_stage_id": "Doloremque ea.", + "project": "2", + "workspace": "Quia quo." + }, + { + "account": "5x", + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "org": "7", + "pipeline": "Voluptatum deleniti odit sit rerum quia.", + "pipeline_execution_id": "Quasi qui.", + "pipeline_stage_id": "Doloremque ea.", + "project": "2", + "workspace": "Quia quo." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/executions": { + "get": { + "tags": [ + "executions" + ], + "summary": "List executions", + "description": "List all executions.", + "operationId": "executions#list-executions", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "workspace", + "in": "query", + "description": "Workspace identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "Aspernatur facere accusantium consequatur voluptate odio nihil." + }, + "example": "Doloremque aut." + }, + { + "name": "pipeline_execution_id", + "in": "query", + "description": "Pipeline identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline identifier", + "example": "Necessitatibus at temporibus." + }, + "example": "Perspiciatis qui quidem aut et alias nihil." + }, + { + "name": "status", + "in": "query", + "description": "Status of the execution", + "allowEmptyValue": true, + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Aut nam." + }, + "description": "Status of the execution", + "example": [ + "Qui nemo animi quis exercitationem.", + "Cum omnis assumenda non voluptatem deleniti dolorem.", + "Fugit dolorem in.", + "Optio minima." + ] + }, + "example": [ + "Hic dolorem minima corrupti reiciendis.", + "Maiores pariatur possimus exercitationem dolores dolores.", + "Soluta deleniti ducimus nobis dolorem." + ] + }, + { + "name": "pipeline_name", + "in": "query", + "description": "Pipeline name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline name", + "example": "Quisquam in quam." + }, + "example": "Libero officia nemo natus voluptatum." + }, + { + "name": "start_time", + "in": "query", + "description": "Specify the start time for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the start time for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "end_time", + "in": "query", + "description": "Specify the end time limit for the query", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Specify the end time limit for the query", + "example": 1691150743950, + "format": "int64" + }, + "example": 1691150743950 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "5pz", + "minLength": 1, + "maxLength": 128 + }, + "example": "r" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "c4e", + "minLength": 1, + "maxLength": 128 + }, + "example": "g" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "l7", + "minLength": 1, + "maxLength": 128 + }, + "example": "nds" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExecutionResourceCollection" + }, + "example": [ + { + "account": "e2h", + "created": 5346915877496289000, + "org": "q", + "pipeline": "Et earum non qui.", + "pipeline_execution_id": "Aliquam odio illo dolor.", + "pipeline_stage_id": "Quos quia qui praesentium qui reiciendis.", + "project": "4i", + "status": "none", + "workspace": "Modi mollitia quia magni qui ipsam quos." + }, + { + "account": "e2h", + "created": 5346915877496289000, + "org": "q", + "pipeline": "Et earum non qui.", + "pipeline_execution_id": "Aliquam odio illo dolor.", + "pipeline_stage_id": "Quos quia qui praesentium qui reiciendis.", + "project": "4i", + "status": "none", + "workspace": "Modi mollitia quia magni qui ipsam quos." + }, + { + "account": "e2h", + "created": 5346915877496289000, + "org": "q", + "pipeline": "Et earum non qui.", + "pipeline_execution_id": "Aliquam odio illo dolor.", + "pipeline_stage_id": "Quos quia qui praesentium qui reiciendis.", + "project": "4i", + "status": "none", + "workspace": "Modi mollitia quia magni qui ipsam quos." + }, + { + "account": "e2h", + "created": 5346915877496289000, + "org": "q", + "pipeline": "Et earum non qui.", + "pipeline_execution_id": "Aliquam odio illo dolor.", + "pipeline_stage_id": "Quos quia qui praesentium qui reiciendis.", + "project": "4i", + "status": "none", + "workspace": "Modi mollitia quia magni qui ipsam quos." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "executions" + ], + "summary": "Create execution", + "description": "Create a new execution.", + "operationId": "executions#create-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "v8a", + "minLength": 1, + "maxLength": 128 + }, + "example": "dav" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "pp5", + "minLength": 1, + "maxLength": 128 + }, + "example": "x1" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "gp", + "minLength": 1, + "maxLength": 128 + }, + "example": "cpi" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateExecutionRequest" + }, + "example": { + "pipeline": "Repellat quia ab at et nobis.", + "pipeline_execution_id": "Eos id velit.", + "pipeline_stage_id": "Hic incidunt.", + "workspace": "Sed quia." + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateExecutionResponse" + }, + "example": { + "account": "sil", + "created": 3773351942269803000, + "org": "8c3", + "pipeline": "Quaerat velit voluptates veritatis assumenda.", + "pipeline_execution_id": "Consequatur rerum qui aut.", + "pipeline_stage_id": "Deleniti delectus.", + "project": "t3f", + "status": "none", + "workspace": "Amet et illo quod nisi tempore." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/{pipeline_stage_id}": { + "get": { + "tags": [ + "executions" + ], + "summary": "Show execution", + "description": "Show an individual execution.", + "operationId": "executions#show-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "lft", + "minLength": 1, + "maxLength": 128 + }, + "example": "pxm" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "z9", + "minLength": 1, + "maxLength": 128 + }, + "example": "n" + }, + { + "name": "pipeline_execution_id", + "in": "path", + "description": "Pipeline execution ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution ID", + "example": "u6e", + "minLength": 1, + "maxLength": 128 + }, + "example": "u6" + }, + { + "name": "pipeline_stage_id", + "in": "path", + "description": "Pipeline execution stage ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution stage ID", + "example": "s9", + "minLength": 1, + "maxLength": 128 + }, + "example": "9" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "w1l", + "minLength": 1, + "maxLength": 128 + }, + "example": "i4" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowExecutionResponse" + }, + "example": { + "account": "u", + "created": 2779238684845977600, + "org": "kj", + "pipeline": "Ratione veritatis ut et quia.", + "pipeline_execution_id": "Possimus vitae qui commodi qui explicabo.", + "pipeline_stage_id": "Rerum ducimus officia at dolorum sed tempore.", + "project": "xo0", + "status": "none", + "workspace": "Aut porro mollitia quia in quo." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/{pipeline_stage_id}/audit-event": { + "post": { + "tags": [ + "executions" + ], + "summary": "Update execution", + "description": "Modify an individual execution by adding audit data.", + "operationId": "executions#modify-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "v", + "minLength": 1, + "maxLength": 128 + }, + "example": "37j" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "y0", + "minLength": 1, + "maxLength": 128 + }, + "example": "xg" + }, + { + "name": "pipeline_execution_id", + "in": "path", + "description": "Pipeline execution ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution ID", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "example": "mz" + }, + { + "name": "pipeline_stage_id", + "in": "path", + "description": "Pipeline execution stage ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution stage ID", + "example": "3w8", + "minLength": 1, + "maxLength": 128 + }, + "example": "sb" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "39u", + "minLength": 1, + "maxLength": 128 + }, + "example": "3" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateExecutionRequest" + }, + "example": { + "audit": { + "git_audit_data": { + "hash": "l", + "name": "Voluptas corporis ut nisi repellendus debitis.", + "repo_url": "3d", + "type": "branch, tag" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/cost-changes": { + "get": { + "tags": [ + "executions" + ], + "summary": "List cost changes", + "description": "List cost changes from the latest plan and last applied state for the current execution.", + "operationId": "executions#list-cost-changes", + "parameters": [ + { + "name": "pipeline_stage_id", + "in": "query", + "allowEmptyValue": true, + "schema": { + "type": "string", + "default": "", + "example": "Ut ut possimus a explicabo eveniet aut." + }, + "example": "Aliquid maxime est minus ut voluptatum et." + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "m", + "minLength": 1, + "maxLength": 128 + }, + "example": "k5a" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "sz", + "minLength": 1, + "maxLength": 128 + }, + "example": "b" + }, + { + "name": "pipeline_execution_id", + "in": "path", + "description": "Pipeline execution ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution ID", + "example": "c", + "minLength": 1, + "maxLength": 128 + }, + "example": "s0m" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "v1", + "minLength": 1, + "maxLength": 128 + }, + "example": "ktm" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListCostChangesResponse" + }, + "example": { + "currency": "Labore error consequatur excepturi.", + "diff": { + "Doloribus corrupti et amet.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Ut pariatur adipisci veniam et enim voluptate.", + "past_total_monthly_cost": "Voluptas neque.", + "percentage_change_total_monthly_cost": 4743078471674037000, + "stage_execution_id": "Eum sunt ipsam placeat quis.", + "stage_id": "Similique atque tempore porro error.", + "total_monthly_cost": "Excepturi voluptate suscipit neque aliquid quam voluptas.", + "workspace_id": "Adipisci voluptatibus aut aliquam molestiae." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/cost-changes-all-stages": { + "get": { + "tags": [ + "executions" + ], + "summary": "List cost changes for all stages", + "description": "List cost changes for all stages from the latest plan and last applied state for the current execution.", + "operationId": "executions#list-cost-changes-all-stages", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "y", + "minLength": 1, + "maxLength": 128 + }, + "example": "l" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "8u", + "minLength": 1, + "maxLength": 128 + }, + "example": "aj" + }, + { + "name": "pipeline_execution_id", + "in": "path", + "description": "Pipeline execution ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution ID", + "example": "r5a", + "minLength": 1, + "maxLength": 128 + }, + "example": "5" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "yi", + "minLength": 1, + "maxLength": 128 + }, + "example": "0" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChangedCostsCollection" + }, + "example": [ + { + "currency": "Ea quisquam sint.", + "diff": { + "Repellendus iure similique impedit itaque neque quidem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Ut harum facilis consequatur sunt.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Dolor suscipit aliquam.", + "past_total_monthly_cost": "Quasi sit suscipit excepturi.", + "percentage_change_total_monthly_cost": 6605931329534609000, + "stage_execution_id": "Perspiciatis quasi officia blanditiis et accusamus modi.", + "stage_id": "Iste nihil.", + "total_monthly_cost": "At enim nisi.", + "workspace_id": "Laborum expedita est sed." + }, + { + "currency": "Ea quisquam sint.", + "diff": { + "Repellendus iure similique impedit itaque neque quidem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Ut harum facilis consequatur sunt.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Dolor suscipit aliquam.", + "past_total_monthly_cost": "Quasi sit suscipit excepturi.", + "percentage_change_total_monthly_cost": 6605931329534609000, + "stage_execution_id": "Perspiciatis quasi officia blanditiis et accusamus modi.", + "stage_id": "Iste nihil.", + "total_monthly_cost": "At enim nisi.", + "workspace_id": "Laborum expedita est sed." + }, + { + "currency": "Ea quisquam sint.", + "diff": { + "Repellendus iure similique impedit itaque neque quidem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Ut harum facilis consequatur sunt.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Dolor suscipit aliquam.", + "past_total_monthly_cost": "Quasi sit suscipit excepturi.", + "percentage_change_total_monthly_cost": 6605931329534609000, + "stage_execution_id": "Perspiciatis quasi officia blanditiis et accusamus modi.", + "stage_id": "Iste nihil.", + "total_monthly_cost": "At enim nisi.", + "workspace_id": "Laborum expedita est sed." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/resource-changes": { + "get": { + "tags": [ + "executions" + ], + "summary": "List resource changes", + "description": "List resource changes from the latest plan and state for this execution.", + "operationId": "executions#list-resource-changes", + "parameters": [ + { + "name": "exclude_state", + "in": "query", + "description": "When true, exclude values from the state in the response", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "When true, exclude values from the state in the response", + "default": false, + "example": true + }, + "example": true + }, + { + "name": "pipeline_stage_id", + "in": "query", + "allowEmptyValue": true, + "schema": { + "type": "string", + "default": "", + "example": "Amet pariatur." + }, + "example": "Ducimus ipsum officia minus." + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "wbv", + "minLength": 1, + "maxLength": 128 + }, + "example": "3l8" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "v", + "minLength": 1, + "maxLength": 128 + }, + "example": "pyf" + }, + { + "name": "pipeline_execution_id", + "in": "path", + "description": "Pipeline execution ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution ID", + "example": "qxc", + "minLength": 1, + "maxLength": 128 + }, + "example": "g" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "f6", + "minLength": 1, + "maxLength": 128 + }, + "example": "oca" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListResourceChangesResponse" + }, + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Porro id corrupti quod.", + "pipeline_stage": "Ipsam corporis iste harum.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Qui dignissimos molestiae repudiandae nihil voluptatem.", + "workspace_id": "Nisi ipsum quisquam et veritatis consequatur non." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/resource-changes-all-stages": { + "get": { + "tags": [ + "executions" + ], + "summary": "List resource changes for all stages", + "description": "List resource changes for all stages from the latest plan and state for this execution.", + "operationId": "executions#list-resource-changes-all-stages", + "parameters": [ + { + "name": "exclude_state", + "in": "query", + "description": "When true, exclude values from the state in the response", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "When true, exclude values from the state in the response", + "default": false, + "example": true + }, + "example": true + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "3xb", + "minLength": 1, + "maxLength": 128 + }, + "example": "qiq" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "c", + "minLength": 1, + "maxLength": 128 + }, + "example": "tl" + }, + { + "name": "pipeline_execution_id", + "in": "path", + "description": "Pipeline execution ID", + "required": true, + "schema": { + "type": "string", + "description": "Pipeline execution ID", + "example": "ev", + "minLength": 1, + "maxLength": 128 + }, + "example": "ck" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "9", + "minLength": 1, + "maxLength": 128 + }, + "example": "w" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChangedResourcesCollection" + }, + "example": [ + { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Minus qui voluptatibus voluptate ea eos.", + "pipeline_stage": "Sed reprehenderit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Non quibusdam quisquam et et illo reiciendis.", + "workspace_id": "Ut velit facere." + }, + { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Minus qui voluptatibus voluptate ea eos.", + "pipeline_stage": "Sed reprehenderit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Non quibusdam quisquam et et illo reiciendis.", + "workspace_id": "Ut velit facere." + }, + { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Minus qui voluptatibus voluptate ea eos.", + "pipeline_stage": "Sed reprehenderit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Non quibusdam quisquam et et illo reiciendis.", + "workspace_id": "Ut velit facere." + }, + { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Minus qui voluptatibus voluptate ea eos.", + "pipeline_stage": "Sed reprehenderit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Non quibusdam quisquam et et illo reiciendis.", + "workspace_id": "Ut velit facere." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/settings/default-pipelines": { + "delete": { + "tags": [ + "settings" + ], + "summary": "Delete default pipeline", + "description": "Delete the association between a default pipeline and a provisioner operation", + "operationId": "settings#delete-default-pipeline", + "parameters": [ + { + "name": "org", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "Deleniti blanditiis consequatur." + }, + "example": "Quas quam a." + }, + { + "name": "project", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "Minus nemo." + }, + "example": "Dolores non non adipisci eaque doloribus quia." + }, + { + "name": "Harness-Account", + "in": "header", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "example": "Enim dolore." + }, + "example": "Fuga omnis est aut quo rem hic." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteDefaultPipelineRequest" + }, + "example": { + "operation": "plan", + "provisioner": "opentofu", + "workspace": "plan" + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "settings" + ], + "summary": "List default pipelines", + "description": "List all associations between provisioner operations and default pipelines", + "operationId": "settings#list-default-pipelines", + "parameters": [ + { + "name": "workspace", + "in": "query", + "description": "Workspace identifier", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "default": "", + "example": "workspace123" + }, + "example": "workspace123" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "6wr", + "minLength": 1, + "maxLength": 128 + }, + "example": "5w6" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "1fw", + "minLength": 1, + "maxLength": 128 + }, + "example": "ph" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "q", + "minLength": 1, + "maxLength": 128 + }, + "example": "mq" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DefaultPipelineCollection" + }, + "example": [ + { + "account": "Neque a.", + "operation": "plan", + "org": "Vero aut nesciunt in sunt iste aut.", + "pipeline": "testpipeline", + "project": "Distinctio consequatur provident nostrum soluta.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + }, + { + "account": "Neque a.", + "operation": "plan", + "org": "Vero aut nesciunt in sunt iste aut.", + "pipeline": "testpipeline", + "project": "Distinctio consequatur provident nostrum soluta.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + }, + { + "account": "Neque a.", + "operation": "plan", + "org": "Vero aut nesciunt in sunt iste aut.", + "pipeline": "testpipeline", + "project": "Distinctio consequatur provident nostrum soluta.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "settings" + ], + "summary": "Upsert default pipeline", + "description": "Associate a default pipeline with a provisioner operation", + "operationId": "settings#upsert-default-pipeline", + "parameters": [ + { + "name": "org", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "Possimus optio blanditiis eum." + }, + "example": "Excepturi voluptatem nesciunt impedit doloremque qui." + }, + { + "name": "project", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "Est explicabo quia consequatur." + }, + "example": "Architecto enim velit." + }, + { + "name": "Harness-Account", + "in": "header", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "example": "Dolor perferendis ut dolorem magnam." + }, + "example": "Reprehenderit atque earum ducimus distinctio voluptates." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpsertDefaultPipelineRequest" + }, + "example": { + "operation": "plan", + "pipeline": "testpipeline", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/settings/disabled": { + "get": { + "tags": [ + "settings" + ], + "summary": "Check push data", + "description": "Check if the plan/state should be sent to the server", + "operationId": "settings#check-push-data", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "u", + "minLength": 1, + "maxLength": 128 + }, + "example": "mi4" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "r1f", + "minLength": 1, + "maxLength": 128 + }, + "example": "h" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "dy4", + "minLength": 1, + "maxLength": 128 + }, + "example": "lb5" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CheckPushDataResponse" + }, + "example": { + "disabled": false + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/tags": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List all workspace tags", + "description": "List all tags", + "operationId": "workspaces#list-all-workspace-tags", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ff", + "minLength": 1, + "maxLength": 128 + }, + "example": "z" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "mh", + "minLength": 1, + "maxLength": 128 + }, + "example": "ob5" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "h2", + "minLength": 1, + "maxLength": 128 + }, + "example": "na" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Ut rem et voluptate." + }, + "example": [ + "Fuga incidunt iure et voluptatem qui et.", + "Laudantium mollitia consequatur voluptatibus explicabo modi." + ] + }, + "example": [ + "Voluptatem quam a et eveniet.", + "Iure maxime vero amet repellat.", + "Vitae sed ea aut dicta praesentium ex.", + "Adipisci minima eum optio hic ab." + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/unified-executions": { + "post": { + "tags": [ + "unified-executions" + ], + "summary": "Create unified execution", + "description": "Create a new unified execution.", + "operationId": "unified-executions#create-unified-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "lq", + "minLength": 1, + "maxLength": 128 + }, + "example": "k" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "m6c", + "minLength": 1, + "maxLength": 128 + }, + "example": "mec" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "54y", + "minLength": 1, + "maxLength": 128 + }, + "example": "suh" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UnifiedExecutionRequest2" + }, + "example": { + "pipeline_execution_id": "Perferendis doloribus.", + "pipeline_id": "Nam reprehenderit mollitia quasi rerum aperiam.", + "pipeline_stage_id": "Amet et.", + "workspace": "Quas molestias." + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UnifiedExecutionResponse" + }, + "example": { + "env_variables": { + "Fugit magni nemo deleniti.": "Reprehenderit est facere." + }, + "outputs": { + "Eligendi eligendi.": "Eos quo omnis voluptas blanditiis veritatis animi.", + "Reprehenderit autem aut reiciendis.": "Iure voluptatum." + }, + "steps": [ + { + "dynamic_fields": { + "Aut voluptatem.": "Consequatur est non magni eum est.", + "Cumque quis enim odio quia ut molestiae.": "Nihil quisquam rerum est iste et alias.", + "Nam in.": "Doloremque sint omnis quis maxime et molestiae." + }, + "id": "Assumenda est.", + "name": "Voluptas est suscipit.", + "yaml": "Ducimus sed minus qui illo ut." + }, + { + "dynamic_fields": { + "Aut voluptatem.": "Consequatur est non magni eum est.", + "Cumque quis enim odio quia ut molestiae.": "Nihil quisquam rerum est iste et alias.", + "Nam in.": "Doloremque sint omnis quis maxime et molestiae." + }, + "id": "Assumenda est.", + "name": "Voluptas est suscipit.", + "yaml": "Ducimus sed minus qui illo ut." + }, + { + "dynamic_fields": { + "Aut voluptatem.": "Consequatur est non magni eum est.", + "Cumque quis enim odio quia ut molestiae.": "Nihil quisquam rerum est iste et alias.", + "Nam in.": "Doloremque sint omnis quis maxime et molestiae." + }, + "id": "Assumenda est.", + "name": "Voluptas est suscipit.", + "yaml": "Ducimus sed minus qui illo ut." + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/variable-set": { + "post": { + "tags": [ + "variable_sets" + ], + "summary": "Create a new Variable Set on project level", + "description": "Create a new Variable Set on project level.", + "operationId": "variable_sets#create-variable-set-proj-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "14n", + "minLength": 1, + "maxLength": 128 + }, + "example": "9a" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "a20", + "minLength": 1, + "maxLength": 128 + }, + "example": "5hm" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "797", + "minLength": 1, + "maxLength": 128 + }, + "example": "j2" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateVariableSetRequestProjScope" + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Autem est.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Omnis architecto id aut.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Quia inventore corporis harum impedit possimus quibusdam.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 7077140958047921000, + "identifier": "ai0", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Consequatur quod in odio minus.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Eos qui et aut iure.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Incidunt quis eum at.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "n7p", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Harum illo necessitatibus qui.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Non dolorem eligendi corporis eum at nisi.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "ujw", + "name": "resource name", + "org": "yfk", + "project": "wr", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Rem necessitatibus natus odit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/variable-set/{identifier}": { + "delete": { + "tags": [ + "variable_sets" + ], + "summary": "Delete Variable Set by identifier on project level", + "description": "Delete Variable Set by identifier on project level.", + "operationId": "variable_sets#delete-variable-set-proj-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "xvq", + "minLength": 1, + "maxLength": 128 + }, + "example": "9xe" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "um", + "minLength": 1, + "maxLength": 128 + }, + "example": "0r" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "0s", + "minLength": 1, + "maxLength": 128 + }, + "example": "8l" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "afp", + "minLength": 1, + "maxLength": 128 + }, + "example": "w9y" + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set by identifier on project level", + "description": "Get Variable Set by identifier on project level.", + "operationId": "variable_sets#get-variable-set-proj-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "example": "hw0" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "v", + "minLength": 1, + "maxLength": 128 + }, + "example": "6" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "z", + "minLength": 1, + "maxLength": 128 + }, + "example": "8" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "x", + "minLength": 1, + "maxLength": 128 + }, + "example": "6o" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsGetVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "hpc", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Eveniet suscipit deserunt exercitationem sit consequatur.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Reiciendis unde in temporibus sit laborum.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Veniam sed voluptatem non temporibus.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "wy", + "name": "resource name", + "org": "gr", + "project": "n", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Facere ipsam ut quod qui iure rerum.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Officiis porro nam ex maxime consequatur.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Voluptas quo ex.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "variable_sets" + ], + "summary": "Update a Variable Set on project level", + "description": "Update a Variable Set on project level.", + "operationId": "variable_sets#update-variable-set-proj-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "j18", + "minLength": 1, + "maxLength": 128 + }, + "example": "10" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "p58", + "minLength": 1, + "maxLength": 128 + }, + "example": "og9" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "l", + "minLength": 1, + "maxLength": 128 + }, + "example": "c" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "yi", + "minLength": 1, + "maxLength": 128 + }, + "example": "sh6" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateVariableSetRequestProjScope" + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Et id ducimus.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Fuga inventore nihil ex.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Quos eum voluptas minus perspiciatis aliquam quas.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 4910057093533919000, + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Id sint quam.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "n7p", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Harum illo necessitatibus qui.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Non dolorem eligendi corporis eum at nisi.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "ujw", + "name": "resource name", + "org": "yfk", + "project": "wr", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Rem necessitatibus natus odit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/variable-set/{identifier}/references": { + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set References list on project level", + "description": "Get Variable Set References list on project level.", + "operationId": "variable_sets#list-variable-set-references-proj-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "m3", + "minLength": 1, + "maxLength": 128 + }, + "example": "51" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "v19", + "minLength": 1, + "maxLength": 128 + }, + "example": "8" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "qy", + "minLength": 1, + "maxLength": 128 + }, + "example": "3" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "r4x", + "minLength": 1, + "maxLength": 128 + }, + "example": "y0" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmWorkspaceList" + }, + "example": { + "items": [ + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/variable-sets": { + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set list on project level", + "description": "Get Variable Set list on project level.", + "operationId": "variable_sets#list-variable-sets-proj-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "a", + "minLength": 1, + "maxLength": 128 + }, + "example": "c" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "lj", + "minLength": 1, + "maxLength": 128 + }, + "example": "11" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "yi", + "minLength": 1, + "maxLength": 128 + }, + "example": "f9" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmVariableSetList" + }, + "example": { + "items": [ + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspace-metrics": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "Show workspace metrics", + "description": "Show metrics for workspaces", + "operationId": "workspaces#show-workspace-metrics", + "parameters": [ + { + "name": "start_time", + "in": "query", + "description": "Start time filter (Unix timestamp)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Start time filter (Unix timestamp)", + "example": 4104792456971570700, + "format": "int64" + }, + "example": 3768901725557476000 + }, + { + "name": "end_time", + "in": "query", + "description": "End time filter (Unix timestamp)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "End time filter (Unix timestamp)", + "example": 8350818703685427000, + "format": "int64" + }, + "example": 8096170598325504000 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "0", + "minLength": 1, + "maxLength": 128 + }, + "example": "5xw" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "vu", + "minLength": 1, + "maxLength": 128 + }, + "example": "jd" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "example": "mb" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowWorkspaceMetricsRequest" + }, + "example": { + "status_counts": { + "Facere praesentium nesciunt possimus.": 1330818115100258800, + "Magni vel.": 2071519027227903700, + "Ut earum veritatis.": 2375333301597787000 + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspace/template/{workspace_id}/yaml-diff": { + "get": { + "tags": [ + "workspace_templates" + ], + "summary": "Retrieve workspace-template reconciliation diff", + "description": "Get the differences between the current workspace YAML and what it will look like when reconciled with the template", + "operationId": "workspace_templates#get-workspace-template-reconciliation-diff", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "example": "oc6" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "hb", + "minLength": 1, + "maxLength": 128 + }, + "example": "cd3" + }, + { + "name": "workspace_id", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "1w", + "minLength": 1, + "maxLength": 128 + }, + "example": "k5v" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "26", + "minLength": 1, + "maxLength": 128 + }, + "example": "ee2" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetWorkspaceTemplateReconciliationDiffResponse" + }, + "example": { + "currentWorkspaceYaml": "Neque soluta provident numquam blanditiis rem placeat.", + "reconcilableWorkspaceYaml": "Quia est.", + "requiresReconciliation": false + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspace/templates": { + "post": { + "tags": [ + "workspace_templates" + ], + "summary": "Create workspace template", + "description": "Add a workspace-template combination to the table.", + "operationId": "workspace_templates#add-workspace-template", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "example": "pv" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7", + "minLength": 1, + "maxLength": 128 + }, + "example": "xvv" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "pc", + "minLength": 1, + "maxLength": 128 + }, + "example": "689" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateWorkspaceTemplateRequest" + }, + "example": { + "template_id": "uv", + "version": "w78", + "workspace_id": "uh" + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateWorkspaceTemplateResponse" + }, + "example": { + "account": "3", + "created_at": 1627590400, + "org": "12", + "project": "5kc", + "template_id": "dd7", + "updated_at": 1627686800, + "version": "x", + "workspace_id": "h8h" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspace/templates/{template_id}": { + "get": { + "tags": [ + "workspace_templates" + ], + "summary": "List workspaces by template id", + "description": "Get all workspaces associated with a specific template ID for a given scope.", + "operationId": "workspace_templates#get-workspaces-by-template-id", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "5p", + "minLength": 1, + "maxLength": 128 + }, + "example": "bj" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "z5", + "minLength": 1, + "maxLength": 128 + }, + "example": "3" + }, + { + "name": "template_id", + "in": "path", + "description": "Template identifier to filter workspaces", + "required": true, + "schema": { + "type": "string", + "description": "Template identifier to filter workspaces", + "example": "s", + "minLength": 1, + "maxLength": 128 + }, + "example": "il" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "y5", + "minLength": 1, + "maxLength": 128 + }, + "example": "9r" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmWorkspaceTemplate" + }, + "description": "List of workspaces associated with the template ID", + "example": [ + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + } + ] + }, + "example": [ + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspace/templates/{template_id}/{workspace_id}": { + "put": { + "tags": [ + "workspace_templates" + ], + "summary": "Update workspace template", + "description": "Update a workspace template combo to change its version.", + "operationId": "workspace_templates#update-workspace-template", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "va", + "minLength": 1, + "maxLength": 128 + }, + "example": "9" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "n", + "minLength": 1, + "maxLength": 128 + }, + "example": "qs" + }, + { + "name": "template_id", + "in": "path", + "description": "Template identifier", + "required": true, + "schema": { + "type": "string", + "description": "Template identifier", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "example": "2l" + }, + { + "name": "workspace_id", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "uw", + "minLength": 1, + "maxLength": 128 + }, + "example": "c" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "1", + "minLength": 1, + "maxLength": 128 + }, + "example": "mj3" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateWorkspaceTemplateRequest" + }, + "example": { + "version": "x" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateWorkspaceTemplateResponse" + }, + "example": { + "account": "0", + "created_at": 1627590400, + "org": "o", + "project": "j", + "template_id": "i", + "updated_at": 1627686800, + "version": "k", + "workspace_id": "9" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List workspaces", + "description": "List all workspaces.", + "operationId": "workspaces#list-workspaces", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter results by partial name match", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by partial name match", + "default": "", + "example": "mysta" + }, + "example": "mysta" + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "name,ASC", + "example": "updated,DESC", + "enum": [ + "name,ASC", + "name,DESC", + "updated,ASC", + "updated,DESC" + ] + }, + "example": "updated,ASC" + }, + { + "name": "status", + "in": "query", + "description": "Status of the execution", + "allowEmptyValue": true, + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Quam molestiae aut rerum dolores." + }, + "description": "Status of the execution", + "example": [ + "Aut quo.", + "Iusto quod voluptates omnis accusantium accusamus.", + "Nihil et necessitatibus illo autem dolor." + ] + }, + "example": [ + "Nemo quia assumenda nesciunt quae.", + "Ipsam nam optio nulla eum.", + "Distinctio sit fugit ut.", + "Repellat minus." + ] + }, + { + "name": "tags", + "in": "query", + "description": "Comma separated list of tags to filter by", + "allowEmptyValue": true, + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Voluptatem animi." + }, + "description": "Comma separated list of tags to filter by", + "example": [ + "Quod sunt.", + "Eos libero sint." + ] + }, + "example": [ + "Hic hic distinctio excepturi tempore.", + "Similique nihil explicabo ut.", + "Incidunt qui temporibus ut." + ] + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "0", + "minLength": 1, + "maxLength": 128 + }, + "example": "g7p" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "example": "fjc" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "j8", + "minLength": 1, + "maxLength": 128 + }, + "example": "wv" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceResourceSummaryCollection" + }, + "example": [ + { + "account": "w", + "created": 5528003699720887000, + "description": "this is a more detailed explanation of the resource.", + "identifier": "af3", + "name": "resource name", + "org": "ed", + "project": "mc", + "status": "unknown", + "updated": 998437431035374600 + }, + { + "account": "w", + "created": 5528003699720887000, + "description": "this is a more detailed explanation of the resource.", + "identifier": "af3", + "name": "resource name", + "org": "ed", + "project": "mc", + "status": "unknown", + "updated": 998437431035374600 + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "workspaces" + ], + "summary": "Create workspace", + "description": "Create a new workspace.", + "operationId": "workspaces#create-workspace", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "6e", + "minLength": 1, + "maxLength": 128 + }, + "example": "v4m" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "example": "tm" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "q", + "minLength": 1, + "maxLength": 128 + }, + "example": "g3" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateWorkspaceRequest" + }, + "example": { + "associated_template": { + "template_id": "3gf", + "version": "8yt" + }, + "budget": 0.873577, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "default_pipelines": { + "Laudantium sequi repellat aut.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + }, + "Voluptate est aut sit distinctio.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Est vel.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "id": 34320627300546350, + "identifier": "py", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "provider_connector": "Dolores consequatur.", + "provider_connectors": [ + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_version": "Iure provident aut eligendi qui aperiam consequatur.", + "repository": "Error ut.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptas eaque aut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "In aperiam et consequuntur aut omnis enim.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Error maxime vel.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "variable_sets": [ + "Labore id.", + "Vero qui placeat sint." + ] + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspacesCreateWorkspaceResponseBody" + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyViolationError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}": { + "delete": { + "tags": [ + "workspaces" + ], + "summary": "Destroy workspace", + "description": "Deletes the given workspace.", + "operationId": "workspaces#destroy-workspace", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "wnz", + "minLength": 1, + "maxLength": 128 + }, + "example": "ww4" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "v", + "minLength": 1, + "maxLength": 128 + }, + "example": "c2" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the project identifier.", + "example": "cv0", + "minLength": 1, + "maxLength": 128 + }, + "example": "f5" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "a", + "minLength": 1, + "maxLength": 128 + }, + "example": "x" + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "workspaces" + ], + "summary": "Show workspace", + "description": "Show an individual workspace.", + "operationId": "workspaces#show-workspace", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "idh", + "minLength": 1, + "maxLength": 128 + }, + "example": "b" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "6", + "minLength": 1, + "maxLength": 128 + }, + "example": "s" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the project identifier.", + "example": "29", + "minLength": 1, + "maxLength": 128 + }, + "example": "ce" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "vp", + "minLength": 1, + "maxLength": 128 + }, + "example": "t8r" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspacesShowWorkspaceResponseBody" + }, + "example": { + "account": "2pk", + "associated_template": { + "template_id": "i", + "version": "nx" + }, + "backend_locked": false, + "budget": 0.5453531, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 8287252387047121000, + "default_pipelines": { + "Excepturi consectetur et consequatur voluptas assumenda.": { + "project_pipeline": "Fugit voluptates sequi dolores rerum cumque porro.", + "workspace_pipeline": "Rerum vero fugit in velit voluptatem dolores." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Aut aut voluptates maxime est minima.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + }, + "Non maiores.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + }, + "Quam quam inventore.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + } + }, + "identifier": "dgx", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "22", + "project": "8", + "provider_connector": "Porro ea molestias est provident id.", + "provider_connectors": [ + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + }, + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + }, + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + }, + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "terraform", + "provisioner_data": "Exercitationem nemo dignissimos itaque aliquid architecto.", + "provisioner_version": "Reprehenderit non distinctio fugiat.", + "repository": "Consequatur dicta.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Cum facere magni sed illo voluptas.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Non quidem nihil et rerum ut.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "unknown", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Dolorum aperiam nihil repellat.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + }, + "Error odit et occaecati non inventore asperiores.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + } + }, + "updated": 1991025162981622300, + "variable_sets": [ + "Sequi dolore eos tempore adipisci.", + "Facilis temporibus tempora deleniti.", + "Laudantium quaerat.", + "Ducimus ullam sunt molestiae facere." + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "workspaces" + ], + "summary": "Update workspace", + "description": "Updates the given workspace with new info.", + "operationId": "workspaces#update-workspace", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "f", + "minLength": 1, + "maxLength": 128 + }, + "example": "j6" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "smb", + "minLength": 1, + "maxLength": 128 + }, + "example": "w7x" + }, + { + "name": "identifier", + "in": "path", + "description": "Workspace identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "example": "l0" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "g7a", + "minLength": 1, + "maxLength": 128 + }, + "example": "pr" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateWorkspaceRequest" + }, + "example": { + "budget": 0.21877892, + "cost_estimation_enabled": true, + "default_pipelines": { + "Quia quam voluptas aspernatur vero dolore blanditiis.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Aut perferendis quia voluptatum sit molestias.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Nobis ipsam numquam quibusdam earum.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Sunt a nam rerum impedit ullam.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "name": "resource name", + "provider_connector": "Odio molestias voluptas natus consequatur voluptatem itaque.", + "provider_connectors": [ + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + } + ], + "provisioner": "terraform", + "provisioner_version": "Vel cumque nihil numquam voluptas in.", + "repository": "Cumque impedit non accusamus sed dolor.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Illum nihil fuga quis vel quo qui.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Dolorum omnis nihil incidunt.", + "tags": { + "foo": "bar" + }, + "terraform_variable_files": [ + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Ullam dolorum voluptatem veritatis beatae.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "variable_sets": [ + "Architecto quis alias sunt dolores tempore.", + "Non ut nisi eius." + ] + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateWorkspaceResponse" + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyViolationError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}/actions/force-unlock": { + "post": { + "tags": [ + "workspaces" + ], + "summary": "Force unlock workspace", + "description": "Force unlock a workspace.", + "operationId": "workspaces#force-unlock-workspace", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "bju", + "minLength": 1, + "maxLength": 128 + }, + "example": "5xv" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "c4", + "minLength": 1, + "maxLength": 128 + }, + "example": "op" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the project identifier.", + "example": "5s", + "minLength": 1, + "maxLength": 128 + }, + "example": "a" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "tk5", + "minLength": 1, + "maxLength": 128 + }, + "example": "e" + } + ], + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}/modules": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List modules", + "description": "List modules associated with this workspace.", + "operationId": "workspaces#list-workspace-modules", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "r58", + "minLength": 1, + "maxLength": 128 + }, + "example": "z" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7", + "minLength": 1, + "maxLength": 128 + }, + "example": "3xa" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the project identifier.", + "example": "qd", + "minLength": 1, + "maxLength": 128 + }, + "example": "0sc" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "cfd", + "minLength": 1, + "maxLength": 128 + }, + "example": "1vl" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceModuleCollection" + }, + "example": [ + { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + }, + { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + }, + { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List resources", + "description": "List resources associated with this workspace.", + "operationId": "workspaces#list-resources", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "oxc", + "minLength": 1, + "maxLength": 128 + }, + "example": "de" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "tjx", + "minLength": 1, + "maxLength": 128 + }, + "example": "p8t" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the project identifier.", + "example": "7hk", + "minLength": 1, + "maxLength": 128 + }, + "example": "0o" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "example": "6" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListResourcesResponse" + }, + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/clone": { + "post": { + "tags": [ + "workspaces" + ], + "summary": "Clone workspace", + "description": "Clone the given workspace with new name.", + "operationId": "workspaces#clone-workspace", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "n", + "minLength": 1, + "maxLength": 128 + }, + "example": "g" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "wt", + "minLength": 1, + "maxLength": 128 + }, + "example": "wo" + }, + { + "name": "workspace", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "Ratione repellat temporibus delectus magnam expedita." + }, + "example": "Eos tenetur architecto." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "s", + "minLength": 1, + "maxLength": 128 + }, + "example": "t9v" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CloneWorkspaceRequest" + }, + "example": { + "identifier": "2l", + "name": "resource name" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspacesCreateWorkspaceResponseBody" + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyViolationError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List data", + "description": "List all stored data for a workspace.", + "operationId": "workspaces#list-data", + "parameters": [ + { + "name": "pipeline_execution_id", + "in": "query", + "description": "Filter by pipeline execution ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by pipeline execution ID", + "example": "Sunt ut soluta aliquid est delectus." + }, + "example": "Odio animi modi quo." + }, + { + "name": "pipeline_stage_id", + "in": "query", + "description": "Filter by pipeline execution stage ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by pipeline execution stage ID", + "example": "Et consequatur placeat." + }, + "example": "Dolorem officia quasi placeat consequatur aut." + }, + { + "name": "provisioner_type", + "in": "query", + "description": "Filter by provisioner type", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by provisioner type", + "example": "Et quis sunt." + }, + "example": "Asperiores nulla rerum est." + }, + { + "name": "data_type", + "in": "query", + "description": "Filter by data type", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter by data type", + "example": "Aut et officiis rerum repellendus repellendus molestiae." + }, + "example": "Id fugit id cupiditate." + }, + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "05f", + "minLength": 1, + "maxLength": 128 + }, + "example": "xj" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "example": "f" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "Beatae ipsam repellat voluptas et sit." + }, + "example": "Dolor beatae sed." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "e0", + "minLength": 1, + "maxLength": 128 + }, + "example": "2" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceDataResourceCollection" + }, + "example": [ + { + "account": "3", + "created": 1715988832333047600, + "data_type": "state_raw", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "1", + "pipeline_execution_id": "Omnis explicabo ea et maxime nihil.", + "pipeline_id": "Alias tenetur quisquam.", + "pipeline_stage_id": "Nihil sapiente minus.", + "project": "6", + "provisioner_type": "tf", + "stage_id": "In minus quasi.", + "workspace": "workspace123" + }, + { + "account": "3", + "created": 1715988832333047600, + "data_type": "state_raw", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "1", + "pipeline_execution_id": "Omnis explicabo ea et maxime nihil.", + "pipeline_id": "Alias tenetur quisquam.", + "pipeline_stage_id": "Nihil sapiente minus.", + "project": "6", + "provisioner_type": "tf", + "stage_id": "In minus quasi.", + "workspace": "workspace123" + }, + { + "account": "3", + "created": 1715988832333047600, + "data_type": "state_raw", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "1", + "pipeline_execution_id": "Omnis explicabo ea et maxime nihil.", + "pipeline_id": "Alias tenetur quisquam.", + "pipeline_stage_id": "Nihil sapiente minus.", + "project": "6", + "provisioner_type": "tf", + "stage_id": "In minus quasi.", + "workspace": "workspace123" + }, + { + "account": "3", + "created": 1715988832333047600, + "data_type": "state_raw", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "1", + "pipeline_execution_id": "Omnis explicabo ea et maxime nihil.", + "pipeline_id": "Alias tenetur quisquam.", + "pipeline_stage_id": "Nihil sapiente minus.", + "project": "6", + "provisioner_type": "tf", + "stage_id": "In minus quasi.", + "workspace": "workspace123" + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "workspaces" + ], + "summary": "Create data", + "description": "Store binary data generated by the provisioner, such as plans and state files.", + "operationId": "workspaces#create-data", + "parameters": [ + { + "name": "pipeline_id", + "in": "query", + "description": "The unique identifier for the associated pipeline", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Laudantium non et est enim." + }, + "example": "Quos numquam qui commodi aut." + }, + { + "name": "stage_id", + "in": "query", + "description": "The unique identifier for a stage", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for a stage", + "example": "Nostrum laborum est fuga ut exercitationem." + }, + "example": "Explicabo voluptatem libero cum." + }, + { + "name": "pipeline_execution_id", + "in": "query", + "description": "The unique identifier for the associated pipeline execution", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Est dolores aspernatur sit." + }, + "example": "Perspiciatis quos." + }, + { + "name": "pipeline_stage_id", + "in": "query", + "description": "The unique identifier for the associated pipeline execution stage", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Nihil iure." + }, + "example": "Animi aliquid aliquam a nisi." + }, + { + "name": "provisioner_type", + "in": "query", + "description": "Type of provisioner that created the data", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Type of provisioner that created the data", + "example": "tf", + "enum": [ + "tf" + ] + }, + "example": "tf" + }, + { + "name": "data_type", + "in": "query", + "description": "Type of data stored", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Type of data stored", + "example": "cost_breakdown", + "enum": [ + "plan_human", + "state_raw", + "state_human", + "cost_breakdown", + "cost_diff", + "modules", + "providers" + ] + }, + "example": "providers" + }, + { + "name": "policy_action", + "in": "query", + "description": "Policy action used during OPA evaluation", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Policy action used during OPA evaluation", + "example": "afterTerraformApply" + }, + "example": "afterTerraformApply" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "t", + "minLength": 1, + "maxLength": 128 + }, + "example": "66w" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "99h", + "minLength": 1, + "maxLength": 128 + }, + "example": "mh" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + }, + "example": "workspace123" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "iss", + "minLength": 1, + "maxLength": 128 + }, + "example": "ypn" + }, + { + "name": "Content-Length", + "in": "header", + "description": "Size in bytes of the data.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Size in bytes of the data.", + "example": 8520827616908025000, + "format": "int64" + }, + "example": 5292941521334319000 + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateDataResponse" + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "policy_evaluation": [ + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + } + ], + "policy_evaluation_message": "- instance type 'xlarge' is not permitted", + "policy_evaluation_status": "error" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id}": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "Show data", + "description": "Get binary data generated by the provisioner, such as plans and state files.", + "operationId": "workspaces#show-data", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "example": "0" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7", + "minLength": 1, + "maxLength": 128 + }, + "example": "w43" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Ex nisi dolores sunt." + }, + "example": "Et qui veritatis error eos ut voluptatem." + }, + { + "name": "id", + "in": "path", + "description": "The unique identifier for the data", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "example": "z" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id}/evaluate-policy": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "Evaluate data", + "description": "Evaluate policy against previously stored data, such as plans and state files.", + "operationId": "workspaces#evaluate-data", + "parameters": [ + { + "name": "pipeline_execution_id", + "in": "query", + "description": "Pipeline execution associated with this evaluation", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Pipeline execution associated with this evaluation", + "example": "Dolorem labore voluptas ullam qui." + }, + "example": "Quae qui eligendi." + }, + { + "name": "policy_action", + "in": "query", + "description": "Policy action used during OPA evaluation", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Policy action used during OPA evaluation", + "example": "afterTerraformApply" + }, + "example": "afterTerraformApply" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "8f", + "minLength": 1, + "maxLength": 128 + }, + "example": "k" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "example": "kc" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Quisquam culpa molestias aut non." + }, + "example": "Unde ullam earum quia." + }, + { + "name": "id", + "in": "path", + "description": "The unique identifier for the data", + "required": true, + "schema": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "n8", + "minLength": 1, + "maxLength": 128 + }, + "example": "x9y" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EvaluateDataResponse" + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "policy_evaluation": [ + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + } + ], + "policy_evaluation_message": "- instance type 'xlarge' is not permitted", + "policy_evaluation_status": "error" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/events": { + "post": { + "tags": [ + "workspaces" + ], + "summary": "Send event", + "description": "Store binary data generated by the provisioner, such as plans and state files.", + "operationId": "workspaces#send-event", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "2mv", + "minLength": 1, + "maxLength": 128 + }, + "example": "q2m" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "f", + "minLength": 1, + "maxLength": 128 + }, + "example": "9x" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace associated with this event", + "required": true, + "schema": { + "type": "string", + "description": "Workspace associated with this event", + "example": "t", + "minLength": 1, + "maxLength": 1024 + }, + "example": "z" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "y", + "minLength": 1, + "maxLength": 128 + }, + "example": "0" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SendEventRequest" + }, + "example": { + "data": { + "Minima laboriosam qui eos dignissimos eos.": "Quia suscipit nostrum ea et at.", + "Perferendis tempore dolorem.": "Vel occaecati mollitia tenetur quis.", + "Quod a repudiandae.": "Mollitia et voluptate." + }, + "event_type": "apply_needed", + "metadata": { + "PlannedChangesCount": 522045215243244740, + "activity_status": "success", + "activity_type": "import", + "cost_breakdown_uuid": "Veniam et quia praesentium.", + "cost_currency": "Quasi sint culpa eos facere sapiente expedita.", + "cost_diff_total_monthly": "Dolorem atque voluptatem saepe.", + "cost_diff_uuid": "Facilis quis molestiae.", + "cost_past_total_monthly": "Id soluta.", + "cost_total_monthly": "Aut qui eum natus veritatis sint quidem.", + "cost_total_monthly_percentage_change": "Ipsam qui.", + "drift_counts": { + "added": 4826534834240538000, + "changed": 998748052933761500, + "deleted": 5828262319716160000, + "imported": 7422438375973692000, + "removed": 6036723523323130000, + "unchanged": 4760789219313462000 + }, + "enable_solutions_factory": true, + "git_branch": "Consequatur quis dignissimos.", + "git_commit_message": "Nemo odio ipsum aspernatur dicta.", + "git_commit_sha": "Et qui corrupti adipisci.", + "git_repo": "Qui et commodi deleniti quisquam distinctio vel.", + "modules_uuid": "Tenetur dolorum id.", + "output_counts": { + "added": 4826534834240538000, + "changed": 998748052933761500, + "deleted": 5828262319716160000, + "imported": 7422438375973692000, + "removed": 6036723523323130000, + "unchanged": 4760789219313462000 + }, + "pipeline": "Debitis quas facere.", + "pipeline_execution_id": "Fugiat omnis aut laborum est porro ullam.", + "pipeline_execution_number": "Id iure adipisci.", + "pipeline_name": "Consequuntur voluptatem ratione.", + "pipeline_stage_id": "Voluptate a fugit ut quidem explicabo.", + "plan_uuid": "Sunt repudiandae totam.", + "providers_uuid": "Rem aut eos.", + "provisioner": "Voluptatem dolor soluta quaerat ea nemo.", + "provisioner_version": "Voluptas facilis error.", + "resource_counts": { + "added": 4826534834240538000, + "changed": 998748052933761500, + "deleted": 5828262319716160000, + "imported": 7422438375973692000, + "removed": 6036723523323130000, + "unchanged": 4760789219313462000 + }, + "state_checksum": "Totam explicabo nihil rerum.", + "state_uuid": "Consectetur nostrum at pariatur ut.", + "trigger": { + "Id quam sit.": "Minima voluptate veniam modi reprehenderit perferendis.", + "Nihil et molestiae atque exercitationem voluptatum.": "Aut nihil et placeat quasi ab debitis." + } + }, + "pipeline_execution_id": "Ad iure ex asperiores libero.", + "pipeline_stage_id": "Iusto quis qui earum eum." + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/pipelines": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List pipelines", + "description": "List the pipelines where the workspace is been used", + "operationId": "workspaces#list-pipelines", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "j", + "minLength": 1, + "maxLength": 128 + }, + "example": "a" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "cx7", + "minLength": 1, + "maxLength": 128 + }, + "example": "tbw" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "Exercitationem sapiente sunt asperiores et at." + }, + "example": "Ad laborum." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "j", + "minLength": 1, + "maxLength": 128 + }, + "example": "ex" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListPipelinesResponse" + }, + "example": { + "account": "x43", + "org": "u1", + "pipelines": [ + "Voluptatibus nihil id et facere.", + "Veritatis quibusdam quidem quidem culpa.", + "Quis dolores iste modi voluptatibus.", + "Quo consequatur." + ], + "project": "1ni" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions": { + "post": { + "tags": [ + "workspaces" + ], + "summary": "Create remote execution", + "description": "Create a remote execution for a workspace.", + "operationId": "workspaces#create-remote-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "4ds", + "minLength": 1, + "maxLength": 128 + }, + "example": "lk6" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "c", + "minLength": 1, + "maxLength": 128 + }, + "example": "n4" + }, + { + "name": "workspace", + "in": "path", + "description": "The workspace associated with the remote execution.", + "required": true, + "schema": { + "type": "string", + "description": "The workspace associated with the remote execution.", + "example": "Et sunt reiciendis iusto tenetur." + }, + "example": "Nisi rerum eaque et hic ipsa aperiam." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "jw6", + "minLength": 1, + "maxLength": 128 + }, + "example": "jj" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRemoteExecutionRequest" + }, + "example": { + "custom_arguments": { + "Et vel provident eius.": [ + "Dolorem et eum aut ratione.", + "Mollitia voluptatem sint repellendus.", + "Ut et dignissimos.", + "Beatae quo et eius repudiandae." + ] + } + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRemoteExecutionResponse" + }, + "example": { + "account": "8", + "created": 2667795146233198600, + "custom_arguments": { + "Facilis tempore illum voluptatum itaque.": [ + "Deserunt alias.", + "Natus vel.", + "Commodi ut qui." + ], + "Laboriosam cum saepe exercitationem.": [ + "Recusandae consequuntur nisi eius facilis.", + "Enim voluptas aut nihil quas.", + "Aspernatur illo qui non.", + "Dolorum itaque inventore quisquam eos tempore amet." + ] + }, + "executed": true, + "id": "1cece2f9-9d90-4316-80c7-76e0d2609bdd", + "org": "96v", + "pipeline_execution_id": "Voluptas accusamus.", + "pipeline_execution_url": "Autem ut molestias ratione est.", + "project": "0", + "sha256_checksum": "Occaecati aut repellendus deserunt ullam.", + "updated": 7090311893039001000, + "workspace": "Impedit cupiditate dolores nulla et rerum." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "Show remote execution", + "description": "Find remote execution", + "operationId": "workspaces#find-remote-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "jm", + "minLength": 1, + "maxLength": 128 + }, + "example": "h" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "example": "2l2" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Autem quae quibusdam perferendis qui." + }, + "example": "Sint modi quia." + }, + { + "name": "id", + "in": "path", + "description": "The ID of the remote execution", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the remote execution", + "example": "e791280a-bb7d-4c88-9868-0ecbbc5dcc87", + "format": "uuid" + }, + "example": "e5d05dfc-25a3-4521-a723-d830c0ab0883" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ze", + "minLength": 1, + "maxLength": 128 + }, + "example": "wa4" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowRemoteExecutionResponse" + }, + "example": { + "account": "f", + "created": 5200989683552908000, + "custom_arguments": { + "Libero expedita non nemo veritatis maxime odio.": [ + "Excepturi vitae aliquid placeat beatae hic esse.", + "Consequatur veritatis aut adipisci.", + "Consequuntur magnam rerum est ducimus qui." + ] + }, + "executed": false, + "id": "45f107d3-e8ea-4710-a2ad-77944d3dcabd", + "org": "cy", + "pipeline_execution_id": "Vel cum dolorum atque cumque.", + "pipeline_execution_url": "Quisquam dolor tempora exercitationem facilis.", + "project": "59", + "sha256_checksum": "Similique est est cumque veniam.", + "updated": 2885921191025993700, + "workspace": "Voluptatem quo iusto dolores." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/download": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "Download remote execution", + "description": "Download the source code for the remote plan.", + "operationId": "workspaces#download-remote-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "j", + "minLength": 1, + "maxLength": 128 + }, + "example": "3s" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ht0", + "minLength": 1, + "maxLength": 128 + }, + "example": "u" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Consequatur et nisi." + }, + "example": "Et quis ut." + }, + { + "name": "id", + "in": "path", + "description": "The ID of the remote execution", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the remote execution", + "example": "7da0a987-a3c3-4ab8-be4e-5fe78cc53802", + "format": "uuid" + }, + "example": "77ccf20b-ae71-4b7f-82da-d1716a63a131" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "f3k", + "minLength": 1, + "maxLength": 128 + }, + "example": "sv" + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "Content-Digest": { + "description": "Content-Digest header as defined in https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest. Sha256 is the only supported algorithm.", + "schema": { + "type": "string", + "description": "Content-Digest header as defined in https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest. Sha256 is the only supported algorithm.", + "example": "Veritatis modi aspernatur officia." + }, + "example": "Quas facilis praesentium et vel consequuntur." + } + }, + "content": { + "application/json": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/execute": { + "post": { + "tags": [ + "workspaces" + ], + "summary": "execute-remote-execution workspaces", + "description": "Execute the remote execution", + "operationId": "workspaces#execute-remote-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ih", + "minLength": 1, + "maxLength": 128 + }, + "example": "8m" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "example": "i1" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Ipsa non illum." + }, + "example": "Et sunt earum." + }, + { + "name": "id", + "in": "path", + "description": "The ID of the remote execution", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the remote execution", + "example": "71e8ef8b-5967-40bf-bf5e-e862a0585b3c", + "format": "uuid" + }, + "example": "dfebf3f0-53d4-441a-8f77-793e875b8f1f" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "cn", + "minLength": 1, + "maxLength": 128 + }, + "example": "srv" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemoteExecution" + }, + "example": { + "account": "4", + "created": 972100800344852400, + "custom_arguments": { + "Adipisci voluptas nulla.": [ + "In dolores aut sit quasi quidem quo.", + "Ipsum optio voluptas fugit.", + "Possimus cupiditate modi ut aut ullam." + ], + "Tenetur expedita sed eos voluptatibus doloremque perferendis.": [ + "Quia repudiandae modi rerum aspernatur.", + "Laborum voluptas architecto eum voluptatum.", + "Sit et eligendi et." + ] + }, + "executed": true, + "id": "968f4b73-3234-49af-bec7-f318feaf3fd7", + "org": "9e", + "pipeline_execution_id": "Modi autem laborum vitae qui ut sed.", + "pipeline_execution_url": "Dolor tempore ipsum.", + "project": "kk", + "sha256_checksum": "Sequi et enim.", + "updated": 1884173819649109000, + "workspace": "Molestiae consequuntur consequuntur ducimus atque quis officiis." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/upload": { + "post": { + "tags": [ + "workspaces" + ], + "summary": "Upload remote execution source", + "description": "Upload the source code for the remote execution.", + "operationId": "workspaces#upload-remote-execution", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "yxu", + "minLength": 1, + "maxLength": 128 + }, + "example": "w" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "z", + "minLength": 1, + "maxLength": 128 + }, + "example": "kcy" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Assumenda autem rerum enim ut aliquam ut." + }, + "example": "Nisi numquam ea excepturi sint." + }, + { + "name": "id", + "in": "path", + "description": "The ID of the remote execution", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the remote execution", + "example": "0ac2dc20-9384-474a-9281-a10eb2f80c70", + "format": "uuid" + }, + "example": "7cb8f0b3-6892-4701-9e02-48b3631d4bc0" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "gmf", + "minLength": 1, + "maxLength": 128 + }, + "example": "x6s" + }, + { + "name": "Content-Length", + "in": "header", + "description": "Size in bytes of the source code.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Size in bytes of the source code.", + "example": 4045085281291292700, + "format": "int64" + }, + "example": 5855190184867046000 + }, + { + "name": "Content-Digest", + "in": "header", + "description": "Content-Digest header as defined in https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest. Sha256 is the only supported algorithm.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Content-Digest header as defined in https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest. Sha256 is the only supported algorithm.", + "example": "Voluptatum omnis necessitatibus laudantium." + }, + "example": "Nisi quo omnis id rerum delectus." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UploadRemoteExecutionResponse" + }, + "example": { + "account": "o", + "created": 4871242074204672000, + "custom_arguments": { + "Consequuntur animi.": [ + "Odit cumque.", + "Odit doloribus porro voluptas dolores maiores." + ], + "Dolorem quis nihil voluptates ipsa.": [ + "In beatae.", + "Laudantium optio nulla." + ], + "Officiis nisi ratione quibusdam.": [ + "Harum sit est unde nihil ea.", + "Eum rerum aut qui quo.", + "Commodi ut magni necessitatibus facere odio.", + "Saepe corrupti voluptas aut aliquam recusandae provident." + ] + }, + "executed": true, + "id": "b4eb7283-cabf-4c56-b2ab-26d5cb346218", + "org": "38", + "pipeline_execution_id": "Itaque dolores temporibus velit.", + "pipeline_execution_url": "Asperiores nostrum.", + "project": "2g", + "sha256_checksum": "Voluptatum aliquam nulla cum mollitia.", + "updated": 3779355400596282400, + "workspace": "Quia fugit veritatis quasi aut." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend": { + "get": { + "tags": [ + "tf-standard-backend" + ], + "summary": "Show terraform state", + "operationId": "tf-standard-backend#pull-terraform-state", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "zr4", + "minLength": 1, + "maxLength": 128 + }, + "example": "ot7" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "example": "h" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "zld", + "minLength": 1, + "maxLength": 128 + }, + "example": "x" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + }, + "example": "workspace123" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "tf-standard-backend" + ], + "summary": "Create terraform state", + "operationId": "tf-standard-backend#push-terraform-state", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "9je", + "minLength": 1, + "maxLength": 128 + }, + "example": "f" + }, + { + "name": "ID", + "in": "query", + "description": "If the backend is locked, this value must match the persisted terraform lock id.", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "If the backend is locked, this value must match the persisted terraform lock id.", + "example": "1ac4b858-bf0b-8539-9d80-8c521f6423cf" + }, + "example": "1ac4b858-bf0b-8539-9d80-8c521f6423cf" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "af", + "minLength": 1, + "maxLength": 128 + }, + "example": "te" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "f3t", + "minLength": 1, + "maxLength": 128 + }, + "example": "5k" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + }, + "example": "workspace123" + }, + { + "name": "Content-Length", + "in": "header", + "description": "Size in bytes of the state.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Size in bytes of the state.", + "example": 941550879961070500, + "format": "int64" + }, + "example": 6292977227777796000 + } + ], + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend/lock": { + "delete": { + "tags": [ + "tf-standard-backend" + ], + "summary": "Unlock workspace", + "operationId": "tf-standard-backend#unlock-workspace", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "example": "y" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "example": "8dq" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "9", + "minLength": 1, + "maxLength": 128 + }, + "example": "9" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + }, + "example": "workspace123" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UnlockWorkspaceRequest" + }, + "example": { + "created": "2023-07-03T20:16:18.382839Z", + "id": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "info": "production workspace lock", + "operation": "OperationTypePlan", + "path": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c", + "version": "1.0.0", + "who": "user1" + } + } + } + }, + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "tf-standard-backend" + ], + "summary": "Lock workspace", + "operationId": "tf-standard-backend#lock-workspace", + "parameters": [ + { + "name": "accountIdentifier", + "in": "query", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "q66", + "minLength": 1, + "maxLength": 128 + }, + "example": "ga2" + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "q", + "minLength": 1, + "maxLength": 128 + }, + "example": "ue" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "example": "5zd" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace identifier", + "required": true, + "schema": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + }, + "example": "workspace123" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LockWorkspaceRequest" + }, + "example": { + "created": "2023-07-03T20:16:18.382839Z", + "id": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "info": "production workspace lock", + "operation": "OperationTypePlan", + "path": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c", + "version": "1.0.0", + "who": "user1" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmLockinfo" + }, + "example": { + "account": "cth", + "created": "2023-07-03T20:16:18.382839Z", + "id": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "info": "production workspace lock", + "operation": "OperationTypePlan", + "org": "ox", + "path": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c", + "project": "tmu", + "version": "1.0.0", + "who": "user1", + "workspace": "workspace123" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables": { + "get": { + "tags": [ + "variables" + ], + "summary": "List workspace variables", + "description": "List all workspace variables.", + "operationId": "variables#list-variables", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ul7", + "minLength": 1, + "maxLength": 128 + }, + "example": "rtl" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "f0z", + "minLength": 1, + "maxLength": 128 + }, + "example": "q" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Qui quibusdam assumenda et." + }, + "example": "Omnis ad accusamus eum." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "euz", + "minLength": 1, + "maxLength": 128 + }, + "example": "7vv" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceVariableResourceCollection" + }, + "example": [ + { + "account": "0tp", + "created": 7505381824165917000, + "key": "4", + "kind": "env", + "org": "g4", + "project": "btd", + "updated": 3965659365346174500, + "value": "Et animi.", + "value_type": "string", + "workspace": "Et sit vel atque voluptas ipsum." + }, + { + "account": "0tp", + "created": 7505381824165917000, + "key": "4", + "kind": "env", + "org": "g4", + "project": "btd", + "updated": 3965659365346174500, + "value": "Et animi.", + "value_type": "string", + "workspace": "Et sit vel atque voluptas ipsum." + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "variables" + ], + "summary": "Create workspace variable", + "description": "Creates a new workspace variable", + "operationId": "variables#create-variable", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "t", + "minLength": 1, + "maxLength": 128 + }, + "example": "g" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "3i", + "minLength": 1, + "maxLength": 128 + }, + "example": "ps" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Aut vel eligendi debitis perspiciatis." + }, + "example": "Ut aut ut reprehenderit et." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "7nf", + "minLength": 1, + "maxLength": 128 + }, + "example": "7f" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateWorkspaceVariableRequest" + }, + "example": { + "key": "802", + "kind": "env", + "value": "Qui aut consequatur minima.", + "value_type": "secret" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateWorkspaceVariableResponse" + }, + "example": { + "account": "1", + "created": 3243076151199856600, + "key": "n", + "kind": "env", + "org": "e7", + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + "project": "e", + "updated": 2868582671996626000, + "value": "Ex rerum qui molestiae.", + "value_type": "secret", + "workspace": "Alias nisi qui." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyViolationError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}": { + "delete": { + "tags": [ + "variables" + ], + "summary": "Destroy workspace variable", + "description": "Deletes the given workspace variable.", + "operationId": "variables#destroy-variable", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "pk", + "minLength": 1, + "maxLength": 128 + }, + "example": "v" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "8f", + "minLength": 1, + "maxLength": 128 + }, + "example": "1" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Eum sint debitis sint autem suscipit repellat." + }, + "example": "Saepe laudantium." + }, + { + "name": "kind", + "in": "path", + "description": "Kind is the classfcation of the variable.", + "required": true, + "schema": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "env", + "enum": [ + "env", + "tf" + ] + }, + "example": "tf" + }, + { + "name": "key", + "in": "path", + "description": "Key is the identifier for the secret.", + "required": true, + "schema": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "lmm", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "example": "s" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "example": "1z" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DestroyWorkspaceVariableResponse" + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyViolationError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "variables" + ], + "summary": "Show workspace variable", + "description": "Show an individual workspace variable.", + "operationId": "variables#show-variable", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "iox", + "minLength": 1, + "maxLength": 128 + }, + "example": "1" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "jbq", + "minLength": 1, + "maxLength": 128 + }, + "example": "0j" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Voluptatem sit ea et voluptate." + }, + "example": "Veritatis debitis exercitationem libero eum sint." + }, + { + "name": "kind", + "in": "path", + "description": "Kind is the classfcation of the variable.", + "required": true, + "schema": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "tf", + "enum": [ + "env", + "tf" + ] + }, + "example": "env" + }, + { + "name": "key", + "in": "path", + "description": "Key is the identifier for the secret.", + "required": true, + "schema": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "0g", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "example": "hzc" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "j1", + "minLength": 1, + "maxLength": 128 + }, + "example": "xp" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowWorkspaceVariableResponse" + }, + "example": { + "account": "x", + "created": 5817381101822490000, + "key": "0", + "kind": "tf", + "org": "xzf", + "project": "f9", + "updated": 3272015898769085, + "value": "Natus illum.", + "value_type": "string", + "workspace": "Est rerum." + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "variables" + ], + "summary": "Update workspace variable", + "description": "Updates the given workspace variable with new info.", + "operationId": "variables#update-variable", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "z", + "minLength": 1, + "maxLength": 128 + }, + "example": "o" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ofu", + "minLength": 1, + "maxLength": 128 + }, + "example": "0mu" + }, + { + "name": "workspace", + "in": "path", + "description": "Workspace is the resource workspace this variable is associated with.", + "required": true, + "schema": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Earum aut non quaerat." + }, + "example": "Est fuga." + }, + { + "name": "kind", + "in": "path", + "description": "Kind is the classfcation of the variable.", + "required": true, + "schema": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "tf", + "enum": [ + "env", + "tf" + ] + }, + "example": "tf" + }, + { + "name": "key", + "in": "path", + "description": "Key is the identifier for the secret.", + "required": true, + "schema": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "lx9", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "example": "je" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "vm", + "minLength": 1, + "maxLength": 128 + }, + "example": "9a4" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateWorkspaceVariableRequest" + }, + "example": { + "value": "Ab voluptatem officiis omnis.", + "value_type": "secret" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateWorkspaceVariableResponse" + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/PolicyViolationError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/projects/{project}/workspaces/provisioners-ratio": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List provisioners ratio", + "description": "Retrieves the ratio of provisioners used by workspaces", + "operationId": "workspaces#list-provisioners-ratio", + "parameters": [ + { + "name": "start_time", + "in": "query", + "description": "Start time filter (Unix timestamp)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Start time filter (Unix timestamp)", + "example": 4520540508781683000, + "format": "int64" + }, + "example": 5372119011821923000 + }, + { + "name": "end_time", + "in": "query", + "description": "End time filter (Unix timestamp)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "End time filter (Unix timestamp)", + "example": 4920556932215430000, + "format": "int64" + }, + "example": 4511068738497930000 + }, + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "example": "n4i" + }, + { + "name": "project", + "in": "path", + "description": "Project is the project identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ce8", + "minLength": 1, + "maxLength": 128 + }, + "example": "2" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "1vd", + "minLength": 1, + "maxLength": 128 + }, + "example": "j" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListProvisionersRatioResponse" + }, + "example": { + "provisioner": { + "Excepturi placeat doloribus aspernatur enim et.": 0.5995277509503167 + }, + "total": 0.4525246625883197 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/variable-set": { + "post": { + "tags": [ + "variable_sets" + ], + "summary": "Create a new Variable Set on org level", + "description": "Create a new Variable Set on org level.", + "operationId": "variable_sets#create-variable-set-org-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "mwg", + "minLength": 1, + "maxLength": 128 + }, + "example": "f2" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "example": "y" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateVariableSetRequestOrgScope" + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Consequatur tenetur nobis fuga dolor rem.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 7066109484422654000, + "identifier": "2px", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Doloribus id tenetur.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Provident vitae numquam eum alias.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Sed aspernatur vero.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "n7p", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Harum illo necessitatibus qui.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Non dolorem eligendi corporis eum at nisi.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "ujw", + "name": "resource name", + "org": "yfk", + "project": "wr", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Rem necessitatibus natus odit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/variable-set/{identifier}": { + "delete": { + "tags": [ + "variable_sets" + ], + "summary": "Delete Variable Set by identifier on org level", + "description": "Delete Variable Set by identifier on org level.", + "operationId": "variable_sets#delete-variable-set-org-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ja", + "minLength": 1, + "maxLength": 128 + }, + "example": "g" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "2sv", + "minLength": 1, + "maxLength": 128 + }, + "example": "65" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "1", + "minLength": 1, + "maxLength": 128 + }, + "example": "zy" + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set by identifier on org level", + "description": "Get Variable Set by identifier on org level.", + "operationId": "variable_sets#get-variable-set-org-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "m", + "minLength": 1, + "maxLength": 128 + }, + "example": "e6j" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "c8", + "minLength": 1, + "maxLength": 128 + }, + "example": "c" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "t", + "minLength": 1, + "maxLength": 128 + }, + "example": "f4v" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsGetVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "hpc", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Eveniet suscipit deserunt exercitationem sit consequatur.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Reiciendis unde in temporibus sit laborum.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Veniam sed voluptatem non temporibus.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "wy", + "name": "resource name", + "org": "gr", + "project": "n", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Facere ipsam ut quod qui iure rerum.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Officiis porro nam ex maxime consequatur.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Voluptas quo ex.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "variable_sets" + ], + "summary": "Update a Variable Set on org level", + "description": "Update a Variable Set on org level.", + "operationId": "variable_sets#update-variable-set-org-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "m1", + "minLength": 1, + "maxLength": 128 + }, + "example": "6" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "ieq", + "minLength": 1, + "maxLength": 128 + }, + "example": "ad" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "kan", + "minLength": 1, + "maxLength": 128 + }, + "example": "vey" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateVariableSetRequestOrgScope" + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Omnis sapiente et magnam rerum eum.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 4685579562842581000, + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Dolor repellendus consequatur earum.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "n7p", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Harum illo necessitatibus qui.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Non dolorem eligendi corporis eum at nisi.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "ujw", + "name": "resource name", + "org": "yfk", + "project": "wr", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Rem necessitatibus natus odit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/variable-set/{identifier}/references": { + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set References list on org level", + "description": "Get Variable Set References list on org level.", + "operationId": "variable_sets#list-variable-set-references-org-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "tus", + "minLength": 1, + "maxLength": 128 + }, + "example": "55" + }, + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "r9r", + "minLength": 1, + "maxLength": 128 + }, + "example": "hz" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "9n", + "minLength": 1, + "maxLength": 128 + }, + "example": "4" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmWorkspaceList" + }, + "example": { + "items": [ + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/orgs/{org}/variable-sets": { + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set list on org level", + "description": "Get Variable Set list on org level.", + "operationId": "variable_sets#list-variable-sets-org-level", + "parameters": [ + { + "name": "org", + "in": "path", + "description": "Org is the organisation identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "9d", + "minLength": 1, + "maxLength": 128 + }, + "example": "a" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "dt", + "minLength": 1, + "maxLength": 128 + }, + "example": "bzg" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmVariableSetList" + }, + "example": { + "items": [ + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers": { + "get": { + "tags": [ + "provider-registry" + ], + "summary": "List providers", + "description": "Lists all providers for an account", + "operationId": "provider-registry#list-providers", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "Limit is the number of records to return for a page.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Limit is the number of records to return for a page.", + "default": 30, + "example": 30, + "format": "int64", + "minimum": 1, + "maximum": 1000 + }, + "example": 30 + }, + { + "name": "page", + "in": "query", + "description": "Page is the page number to return relative to the page 'limit'.", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page is the page number to return relative to the page 'limit'.", + "default": 1, + "example": 1, + "format": "int64", + "minimum": 1 + }, + "example": 1 + }, + { + "name": "searchTerm", + "in": "query", + "description": "Filter results by partial name match", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Filter results by partial name match", + "default": "", + "example": "mymod" + }, + "example": "mymod" + }, + { + "name": "sort", + "in": "query", + "description": "Sort order for results", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Sort order for results", + "default": "name,ASC", + "example": "updated,DESC", + "enum": [ + "name,ASC", + "name,DESC", + "updated,ASC", + "updated,DESC" + ] + }, + "example": "updated,ASC" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account name", + "example": "Consequuntur velit et qui sequi quibusdam." + }, + "example": "Quos repellat natus et." + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "x-page-size": { + "description": "Current page size", + "schema": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "example": 50 + }, + "x-total-items": { + "description": "Total items available", + "schema": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "example": 1800 + }, + "x-total-pages": { + "description": "Total pages available", + "schema": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "example": 36 + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProviderCollection" + }, + "example": [ + { + "account": "Repellat autem nam modi magni distinctio.", + "created": 9140171291973327000, + "description": "Soluta maiores et ipsum necessitatibus.", + "id": "Omnis est dolore delectus qui consequatur veniam.", + "type": "Magnam commodi.", + "updated": 211033580760198270, + "versions": [ + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + }, + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + } + ] + }, + { + "account": "Repellat autem nam modi magni distinctio.", + "created": 9140171291973327000, + "description": "Soluta maiores et ipsum necessitatibus.", + "id": "Omnis est dolore delectus qui consequatur veniam.", + "type": "Magnam commodi.", + "updated": 211033580760198270, + "versions": [ + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + }, + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + } + ] + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers/{id}": { + "delete": { + "tags": [ + "provider-registry" + ], + "summary": "Delete provider", + "description": "Deletes a provider", + "operationId": "provider-registry#delete-provider", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "Provider ID", + "required": true, + "schema": { + "type": "string", + "description": "Provider ID", + "example": "Et fugit." + }, + "example": "Quibusdam at culpa." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account name", + "example": "Ea voluptates qui laborum eaque eos voluptas." + }, + "example": "Aut quam ut ducimus nam." + } + ], + "responses": { + "200": { + "description": "OK response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "provider-registry" + ], + "summary": "Get provider", + "description": "Gets a provider by ID", + "operationId": "provider-registry#get-provider", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "Provider ID", + "required": true, + "schema": { + "type": "string", + "description": "Provider ID", + "example": "Sit necessitatibus et consequatur sit." + }, + "example": "Unde aut cum tempora in." + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account name", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account name", + "example": "Sit ad." + }, + "example": "Blanditiis tempore eos dolorem dolores facere." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IaCMGetProviderResponse" + }, + "example": { + "account": "Sapiente itaque qui quaerat voluptatem maxime eius.", + "created": 7763527923557756000, + "description": "Voluptas reprehenderit.", + "id": "Maxime ut explicabo maxime tempora expedita hic.", + "type": "In maxime et ad quos quia.", + "updated": 2004194311298708200, + "versions": [ + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers/{id}/files": { + "post": { + "tags": [ + "provider-registry" + ], + "summary": "Upload files", + "description": "Upload files to the provider registry", + "operationId": "provider-registry#post-files", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "Provider ID", + "required": true, + "schema": { + "type": "string", + "description": "Provider ID", + "example": "terraform" + }, + "example": "terraform" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account ID", + "example": "harness" + }, + "example": "harness" + }, + { + "name": "Content-Disposition", + "in": "header", + "description": "Content-Disposition header", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Content-Disposition header", + "example": "Temporibus est omnis nulla officia mollitia." + }, + "example": "Et placeat." + } + ], + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PostFilesResponseBody" + }, + "example": { + "synced": false + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers/{id}/version": { + "post": { + "tags": [ + "provider-registry" + ], + "summary": "Create provider version", + "description": "Create a provider version", + "operationId": "provider-registry#create-provider-version", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "Provider ID", + "required": true, + "schema": { + "type": "string", + "description": "Provider ID", + "example": "1" + }, + "example": "1" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account ID", + "example": "harness" + }, + "example": "harness" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateProviderVersionRequestBody" + }, + "example": { + "protocol": [ + "4.0" + ], + "version": "1.0.0" + } + } + } + }, + "responses": { + "201": { + "description": "Created response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers/{id}/version/{version}/file/{filename}": { + "delete": { + "tags": [ + "provider-registry" + ], + "summary": "Delete file from a non synced provider version", + "description": "Delete a file from a non synced provider version", + "operationId": "provider-registry#delete-file", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "Provider ID", + "required": true, + "schema": { + "type": "string", + "description": "Provider ID", + "example": "1" + }, + "example": "1" + }, + { + "name": "version", + "in": "path", + "description": "Provider version", + "required": true, + "schema": { + "type": "string", + "description": "Provider version", + "example": "1.0.0" + }, + "example": "1.0.0" + }, + { + "name": "filename", + "in": "path", + "description": "File name", + "required": true, + "schema": { + "type": "string", + "description": "File name", + "example": "file.txt" + }, + "example": "file.txt" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account ID", + "example": "harness" + }, + "example": "harness" + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers/{type}": { + "post": { + "tags": [ + "provider-registry" + ], + "summary": "Create provider", + "description": "Create a provider", + "operationId": "provider-registry#create-provider", + "parameters": [ + { + "name": "type", + "in": "path", + "description": "Provider type", + "required": true, + "schema": { + "type": "string", + "description": "Provider type", + "example": "terraform" + }, + "example": "terraform" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account ID", + "example": "harness" + }, + "example": "harness" + } + ], + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AnsibleDataInfo" + }, + "example": { + "id": "1" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers/{type}/{version}/download/{os}/{arch}/{filetype}": { + "get": { + "tags": [ + "provider-registry" + ], + "summary": "Get provider file", + "description": "Download a provider file (binary, checksums, or signature)", + "operationId": "provider-registry#get-file", + "parameters": [ + { + "name": "type", + "in": "path", + "description": "Provider type", + "required": true, + "schema": { + "type": "string", + "description": "Provider type", + "example": "Labore maxime." + }, + "example": "Et eos quod ut reiciendis ad occaecati." + }, + { + "name": "version", + "in": "path", + "description": "Provider version", + "required": true, + "schema": { + "type": "string", + "description": "Provider version", + "example": "Nemo nam quibusdam illum et." + }, + "example": "Sed commodi mollitia." + }, + { + "name": "os", + "in": "path", + "description": "Operating system", + "required": true, + "schema": { + "type": "string", + "description": "Operating system", + "example": "Officiis quod voluptates accusamus aut eligendi voluptatem." + }, + "example": "Eaque ut tenetur eligendi." + }, + { + "name": "arch", + "in": "path", + "description": "Architecture", + "required": true, + "schema": { + "type": "string", + "description": "Architecture", + "example": "Molestiae consequatur et illum vel." + }, + "example": "Et ab minus et eos quis." + }, + { + "name": "filetype", + "in": "path", + "description": "Type of file to download", + "required": true, + "schema": { + "type": "string", + "description": "Type of file to download", + "example": "binary", + "enum": [ + "binary", + "checksums", + "signature" + ] + }, + "example": "checksums" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account identifier", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account identifier", + "example": "Eum molestias voluptatem sit soluta in sed." + }, + "example": "Unde tempore." + } + ], + "responses": { + "200": { + "description": "OK response.", + "headers": { + "Content-Disposition": { + "description": "Content-Disposition header", + "schema": { + "type": "string", + "description": "Content-Disposition header", + "example": "Qui quo cumque asperiores architecto." + }, + "example": "Repellendus consequatur dolorem amet." + }, + "Content-Type": { + "description": "Content-Type header", + "schema": { + "type": "string", + "description": "Content-Type header", + "example": "Quisquam velit officiis soluta beatae cum beatae." + }, + "example": "Est et et quisquam et." + } + }, + "content": { + "application/json": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/providers/keys": { + "get": { + "tags": [ + "provider-registry" + ], + "summary": "List signing keys", + "description": "List all GPG signing keys for an account", + "operationId": "provider-registry#list-signing-keys", + "parameters": [ + { + "name": "Harness-Account", + "in": "header", + "description": "Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account ID", + "example": "harness" + }, + "example": "harness" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistrySigningKeysNames" + }, + "example": { + "gpg_key_names": { + "Deleniti voluptatibus tenetur.": "Eum adipisci sequi est quod aliquid est." + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "post": { + "tags": [ + "provider-registry" + ], + "summary": "Upload signing key", + "description": "Upload a GPG signing key for an account", + "operationId": "provider-registry#upload-signing-key", + "parameters": [ + { + "name": "Harness-Account", + "in": "header", + "description": "Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account ID", + "example": "harness" + }, + "example": "harness" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UploadSigningKeyRequest" + }, + "example": { + "ascii_armor": "Inventore mollitia fugiat expedita tempore mollitia.", + "key_id": "ABCD1234", + "key_name": "harness" + } + } + } + }, + "responses": { + "201": { + "description": "Created response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/provisioners/supported/{provisioner}": { + "get": { + "tags": [ + "system" + ], + "summary": "list-supported-provisioner-versions system", + "description": "List supported provisioner versions.", + "operationId": "system#list-supported-provisioner-versions", + "parameters": [ + { + "name": "provisioner", + "in": "path", + "description": "Provisioner defines the provisioning tool to use.", + "required": true, + "schema": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "example": "terraform" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string", + "example": "Consequatur at blanditiis." + }, + "example": [ + "Eius impedit.", + "Et occaecati quia molestiae ut nostrum.", + "Sed ut aliquid voluptas.", + "Cum alias ad velit autem quibusdam." + ] + }, + "example": [ + "Ratione molestiae.", + "Voluptatum accusamus omnis." + ] + } + } + } + } + } + }, + "/iacm/api/usage/check-licence": { + "get": { + "tags": [ + "usage" + ], + "summary": "Show licence", + "description": "Check whether the account is currently licenced", + "operationId": "usage#checkLicence", + "parameters": [ + { + "name": "Harness-Account", + "in": "header", + "description": "Account identifier", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account identifier", + "example": "Necessitatibus et nisi quaerat quo." + }, + "example": "Quasi optio doloremque aut dolorum." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShowLicenceResponse" + }, + "example": { + "account": "pts", + "isLicenced": true, + "isPaid": false, + "reason": "Laboriosam dolor.", + "startTime": 3777964718903628000, + "total": 7893269433470947000, + "used": 5653526842277450000 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/variable-set": { + "post": { + "tags": [ + "variable_sets" + ], + "summary": "Create a new Variable Set on account level", + "description": "Create a new Variable Set on account level.", + "operationId": "variable_sets#create-variable-set-account-level", + "parameters": [ + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "example": "1n" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateVariableSetRequestAccScope" + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Sed repudiandae sint ut sed sequi.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Voluptates error.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 927970436134938600, + "identifier": "mk5", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Fugiat consequatur ea repellendus quisquam iste.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Perferendis aut voluptatibus qui.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Voluptatem in aut ut omnis dolore et.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "responses": { + "201": { + "description": "Created response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "n7p", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Harum illo necessitatibus qui.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Non dolorem eligendi corporis eum at nisi.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "ujw", + "name": "resource name", + "org": "yfk", + "project": "wr", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Rem necessitatibus natus odit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/variable-set/{identifier}": { + "delete": { + "tags": [ + "variable_sets" + ], + "summary": "Delete Variable Set by identifier on account level", + "description": "Delete Variable Set by identifier on account level.", + "operationId": "variable_sets#delete-variable-set-account-level", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "f", + "minLength": 1, + "maxLength": 128 + }, + "example": "u1" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "wb", + "minLength": 1, + "maxLength": 128 + }, + "example": "z" + } + ], + "responses": { + "204": { + "description": "No Content response." + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set by identifier on account level", + "description": "Get Variable Set by identifier on account level.", + "operationId": "variable_sets#get-variable-set-account-level", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "d0", + "minLength": 1, + "maxLength": 128 + }, + "example": "zu" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "u0", + "minLength": 1, + "maxLength": 128 + }, + "example": "ow" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsGetVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "hpc", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Eveniet suscipit deserunt exercitationem sit consequatur.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Reiciendis unde in temporibus sit laborum.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Veniam sed voluptatem non temporibus.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "wy", + "name": "resource name", + "org": "gr", + "project": "n", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Facere ipsam ut quod qui iure rerum.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Officiis porro nam ex maxime consequatur.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Voluptas quo ex.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + }, + "put": { + "tags": [ + "variable_sets" + ], + "summary": "Update a Variable Set on account level", + "description": "Update a Variable Set on account level.", + "operationId": "variable_sets#update-variable-set-account-level", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "5xb", + "minLength": 1, + "maxLength": 128 + }, + "example": "cb5" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "3u", + "minLength": 1, + "maxLength": 128 + }, + "example": "ogs" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateVariableSetRequestAccountScope" + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Soluta minima quaerat harum sit quia.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 1848692484313843000, + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Cumque et.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Id saepe labore minima assumenda.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Saepe ad non error dolorem.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody" + }, + "example": { + "account": "n7p", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Harum illo necessitatibus qui.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Non dolorem eligendi corporis eum at nisi.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "ujw", + "name": "resource name", + "org": "yfk", + "project": "wr", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Rem necessitatibus natus odit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/variable-set/{identifier}/references": { + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set References list on account level", + "description": "Get Variable Set References list on account level.", + "operationId": "variable_sets#list-variable-set-references-account-level", + "parameters": [ + { + "name": "identifier", + "in": "path", + "description": "Identifier is the VariableSet identifier.", + "required": true, + "schema": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "a", + "minLength": 1, + "maxLength": 128 + }, + "example": "9" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "fb0", + "minLength": 1, + "maxLength": 128 + }, + "example": "6o" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmWorkspaceList" + }, + "example": { + "items": [ + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/variable-sets": { + "get": { + "tags": [ + "variable_sets" + ], + "summary": "Get Variable Set list on account level", + "description": "Get Variable Set list on account level.", + "operationId": "variable_sets#list-variable-sets-account-level", + "parameters": [ + { + "name": "Harness-Account", + "in": "header", + "description": "Account is the internal customer account ID.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "example": "mz" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessIacmVariableSetList" + }, + "example": { + "items": [ + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/api/version": { + "get": { + "tags": [ + "system" + ], + "summary": "version system", + "description": "Get server version", + "operationId": "IaCMsystem#version", + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IaCMServiceVersion" + }, + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "deployment_mode": "smp", + "version": "v0.123.0" + } + } + } + } + } + } + }, + "/iacm/api/workspace/templates/{template_id}": { + "get": { + "tags": [ + "workspaces" + ], + "summary": "List workspaces associated with a template ID", + "description": "Get all workspaces associated with a specific template ID", + "operationId": "workspaces#list-associated-workspaces", + "parameters": [ + { + "name": "org", + "in": "query", + "description": "Organization identifier (required for 'org' and 'project' scope).", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Organization identifier (required for 'org' and 'project' scope).", + "example": "2", + "minLength": 1, + "maxLength": 128 + }, + "example": "or" + }, + { + "name": "project", + "in": "query", + "description": "Project identifier (required for 'project' scope).", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Project identifier (required for 'project' scope).", + "example": "f7", + "minLength": 1, + "maxLength": 128 + }, + "example": "yl6" + }, + { + "name": "version", + "in": "query", + "description": "Template version associated with the workspace.", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Template version associated with the workspace.", + "example": "c", + "minLength": 1, + "maxLength": 32 + }, + "example": "q" + }, + { + "name": "template_id", + "in": "path", + "description": "Template identifier to filter workspaces", + "required": true, + "schema": { + "type": "string", + "description": "Template identifier to filter workspaces", + "example": "tv", + "minLength": 1, + "maxLength": 128 + }, + "example": "gaw" + }, + { + "name": "Harness-Account", + "in": "header", + "description": "Account identifier.", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Account identifier.", + "example": "kf", + "minLength": 1, + "maxLength": 128 + }, + "example": "z" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmWorkspaceTemplate" + }, + "description": "List of workspaces associated with the template ID", + "example": [ + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + } + ] + }, + "example": [ + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + }, + { + "account": "3i", + "created_at": 1627590400, + "org": "d", + "project": "vj6", + "template_id": "hyn", + "updated_at": 1627686800, + "version": "z", + "workspace_id": "49" + } + ] + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/provider/account/{account}/{type}/{version}/download/{os}/{arch}": { + "get": { + "tags": [ + "provider-registry" + ], + "summary": "Get provider download information", + "description": "Returns download information for a specific provider version and platform", + "operationId": "provider-registry#get-provider-download", + "parameters": [ + { + "name": "account", + "in": "path", + "description": "Account that owns the provider", + "required": true, + "schema": { + "type": "string", + "description": "Account that owns the provider", + "example": "Quibusdam ut minima iure." + }, + "example": "Velit qui architecto repellendus dolores." + }, + { + "name": "type", + "in": "path", + "description": "Provider type", + "required": true, + "schema": { + "type": "string", + "description": "Provider type", + "example": "Aut culpa cumque nihil optio quaerat voluptates." + }, + "example": "Voluptatem maiores consectetur ullam est beatae." + }, + { + "name": "version", + "in": "path", + "description": "Provider version", + "required": true, + "schema": { + "type": "string", + "description": "Provider version", + "example": "Nam voluptatem ullam id qui." + }, + "example": "Suscipit voluptas quia asperiores." + }, + { + "name": "os", + "in": "path", + "description": "Operating system", + "required": true, + "schema": { + "type": "string", + "description": "Operating system", + "example": "Rerum nisi ea ducimus eum vel." + }, + "example": "Magnam dolor molestiae aspernatur." + }, + { + "name": "arch", + "in": "path", + "description": "Architecture", + "required": true, + "schema": { + "type": "string", + "description": "Architecture", + "example": "Dolorem corporis qui." + }, + "example": "Et odit." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetProviderDownloadResponse" + }, + "example": { + "arch": "Quos dolorem iure inventore voluptatem officiis rerum.", + "download_url": "Est quia voluptate sit quibusdam vel consequatur.", + "filename": "Est expedita est est beatae perspiciatis aspernatur.", + "os": "Molestias consectetur distinctio.", + "protocols": [ + "Nesciunt consectetur eius sed assumenda illum sint.", + "Provident animi est.", + "Totam est asperiores." + ], + "shasum": "Recusandae repellat.", + "shasums_signature_url": "Omnis vitae.", + "shasums_url": "Corporis dolore debitis consequuntur.", + "signing_keys": { + "gpg_public_keys": [ + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + } + ] + } + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/provider/account/{account}/{type}/versions": { + "get": { + "tags": [ + "provider-registry" + ], + "summary": "List provider versions", + "description": "Lists available versions for a provider", + "operationId": "provider-registry#list-provider-versions", + "parameters": [ + { + "name": "account", + "in": "path", + "description": "Account that owns the provider", + "required": true, + "schema": { + "type": "string", + "description": "Account that owns the provider", + "example": "Quam ad repellendus." + }, + "example": "Sint eveniet est quas ut ipsam dolorem." + }, + { + "name": "type", + "in": "path", + "description": "Provider type", + "required": true, + "schema": { + "type": "string", + "description": "Provider type", + "example": "Necessitatibus et et ducimus." + }, + "example": "Et iure." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListProviderVersionsResponse" + }, + "example": { + "versions": [ + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/registry/account/{account}/{name}/{system}/{version}/download": { + "get": { + "tags": [ + "module-registry" + ], + "summary": "Download module", + "description": "Download a module given a specific version", + "operationId": "module-registry#download", + "parameters": [ + { + "name": "account", + "in": "path", + "description": "account name", + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Soluta debitis tempora sit aut itaque." + }, + "example": "Libero aperiam ea non expedita omnis rerum." + }, + { + "name": "name", + "in": "path", + "description": "module name", + "required": true, + "schema": { + "type": "string", + "description": "module name", + "example": "Omnis quo pariatur." + }, + "example": "Officiis autem ea velit qui in provident." + }, + { + "name": "system", + "in": "path", + "description": "system name", + "required": true, + "schema": { + "type": "string", + "description": "system name", + "example": "Ullam necessitatibus qui modi eos quidem." + }, + "example": "Ut distinctio sit saepe." + }, + { + "name": "version", + "in": "path", + "description": "version of the module", + "required": true, + "schema": { + "type": "string", + "description": "version of the module", + "example": "Suscipit maxime harum nam aut et." + }, + "example": "Consequuntur voluptatem qui eos recusandae sequi." + } + ], + "responses": { + "204": { + "description": "No Content response.", + "headers": { + "X-Terraform-Get": { + "description": "url of the module for a given version", + "schema": { + "type": "string", + "description": "url of the module for a given version", + "example": "Vel incidunt autem explicabo blanditiis saepe." + }, + "example": "Voluptatem qui non voluptas." + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/iacm/registry/account/{account}/{name}/{system}/versions": { + "get": { + "tags": [ + "module-registry" + ], + "summary": "List module versions", + "description": "list-module-versions returns an array of versions for a given module", + "operationId": "module-registry#list-versions", + "parameters": [ + { + "name": "account", + "in": "path", + "description": "account name", + "required": true, + "schema": { + "type": "string", + "description": "account name", + "example": "Commodi suscipit placeat repudiandae." + }, + "example": "Iure consequatur." + }, + { + "name": "name", + "in": "path", + "description": "module name", + "required": true, + "schema": { + "type": "string", + "description": "module name", + "example": "Ut velit excepturi aut." + }, + "example": "Culpa qui voluptatibus et." + }, + { + "name": "system", + "in": "path", + "description": "system name", + "required": true, + "schema": { + "type": "string", + "description": "system name", + "example": "Et numquam quam." + }, + "example": "Et ratione quo sunt est." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListModuleVersionsResponse" + }, + "example": { + "modules": [ + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + } + ] + } + } + } + }, + "400": { + "description": "BadRequestError: Bad Request response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "401": { + "description": "UnauthorizedError: Unauthorized response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "403": { + "description": "ForbiddenError: Forbidden response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "404": { + "description": "NotFoundError: Not Found response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "408": { + "description": "TimeoutError: Request Timeout response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "409": { + "description": "ConflictError: Conflict response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "423": { + "description": "LockedError: Locked response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "499": { + "description": "ContextCancelledError: response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + }, + "502": { + "description": "BadGatewayError: Bad Gateway response.", + "content": { + "application/vnd.goa.error": { + "schema": { + "$ref": "#/components/schemas/IaCMError" + } + } + } + } + } + } + }, + "/sto/api/v2/exemptions": { + "get": { + "tags": [ + "Exemptions" + ], + "description": "List a collection of Exemptions", + "operationId": "Exemptions#ListExemptions", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_org" + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_project" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Voluptas eos rerum eos omnis accusamus." + }, + "example": "Commodi architecto hic dolor minima fugit et." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionsListExemptionsResponseBody" + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + ] + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_exemption_view" + ] + } + ] + }, + "post": { + "tags": [ + "Exemptions" + ], + "description": "Create a new Exemption", + "operationId": "Exemptions#CreateExemption", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "ID of the Harness Organization to which the exemption applies. Cannot be specified alongside \"targetId\".", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "ID of the Harness Organization to which the exemption applies. Cannot be specified alongside \"targetId\".", + "example": "your_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "your_project" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "ID of the Harness Project to which the exemption applies. You must also specify \"orgId\". Cannot be specified alongside \"targetId\".", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "ID of the Harness Project to which the exemption applies. You must also specify \"orgId\". Cannot be specified alongside \"targetId\".", + "example": "your_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "your_project" + } + } + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Rerum quos." + }, + "example": "Expedita repellendus esse saepe soluta blanditiis." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateExemptionRequestBody" + }, + "example": { + "exemptFutureOccurrences": false, + "expiration": 1651578240, + "issueId": "abcdef1234567890ghijkl", + "link": "https://example.com/ABC-1234", + "occurrences": [ + 42, + 666 + ], + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "search": "CWE-123,5", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionsCreateExemptionResponseBody" + }, + "example": { + "id": "abcdef1234567890ghijkl" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_exemption_create" + ] + } + ] + } + }, + "/sto/api/v2/exemptions/{id}": { + "get": { + "tags": [ + "Exemptions" + ], + "description": "Find Exemption by ID", + "operationId": "Exemptions#FindExemptionById", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_org" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_project" + } + } + }, + { + "name": "executionId", + "in": "query", + "description": "Harness Execution ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Execution ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "ignoreScope", + "in": "query", + "description": "Ignore scope", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "Ignore scope", + "example": false + }, + "example": false + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Exemption to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Exemption to retrieve", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Et et." + }, + "example": "Provident ut quia minus." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Exemption" + }, + "example": { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_exemption_view" + ] + } + ] + }, + "put": { + "tags": [ + "Exemptions" + ], + "description": "Update an existing Exemption", + "operationId": "Exemptions#UpdateExemption", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "ID of the Harness Organization to which the exemption applies. Cannot be specified alongside \"targetId\".", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "ID of the Harness Organization to which the exemption applies. Cannot be specified alongside \"targetId\".", + "example": "your_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "your_project" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "ID of the Harness Project to which the exemption applies. You must also specify \"orgId\". Cannot be specified alongside \"targetId\".", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "ID of the Harness Project to which the exemption applies. You must also specify \"orgId\". Cannot be specified alongside \"targetId\".", + "example": "your_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "your_project" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Exemption to update", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Exemption to update", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Adipisci ut." + }, + "example": "Vel hic provident." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateExemptionRequestBody" + }, + "example": { + "expiration": 1651578240, + "link": "https://example.com/ABC-1234", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Exemption" + }, + "example": { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_exemption_create" + ] + } + ] + } + }, + "/sto/api/v2/exemptions/{id}/{action}": { + "put": { + "tags": [ + "Exemptions" + ], + "description": "Approve/reject an existing Exemption", + "operationId": "Exemptions#ApproveExemption", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_org" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_project" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Exemption to update", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Exemption to update", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "action", + "in": "path", + "description": "The approval action to take on the Exemption", + "required": true, + "schema": { + "type": "string", + "description": "The approval action to take on the Exemption", + "example": "approve", + "enum": [ + "approve", + "reject" + ] + }, + "example": "approve" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Aut quis doloribus facere." + }, + "example": "Nihil similique magni sit velit." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApproveExemptionRequestBody" + }, + "example": { + "approverId": "user111111111111111111" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Exemption" + }, + "example": { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_exemption_approve" + ] + } + ] + } + }, + "/sto/api/v2/exemptions/{id}/promote": { + "put": { + "tags": [ + "Exemptions" + ], + "description": "Promote an existing Exemption to a higher scope", + "operationId": "Exemptions#PromoteExemption", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_org" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_project" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Exemption to promote", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Exemption to promote", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Ducimus adipisci ea." + }, + "example": "Illum sint magni recusandae nihil nisi magni." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromoteExemptionRequestBody" + }, + "example": { + "approverId": "user111111111111111111", + "pipelineId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Exemption" + }, + "example": { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_exemption_approve" + ] + } + ] + } + }, + "/sto/api/v2/issues": { + "get": { + "tags": [ + "Issues" + ], + "description": "List a collection of Security Issues", + "operationId": "Issues#ListIssues", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "productId", + "in": "query", + "description": "Issue product ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Issue product ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "key", + "in": "query", + "description": "Compression/deduplication key", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Compression/deduplication key", + "example": "json-schema@0.2.3", + "maxLength": 512 + }, + "example": "json-schema@0.2.3" + }, + { + "name": "excludeOccurrences", + "in": "query", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "example": true + }, + "example": true + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Maiores et doloribus vel sit sint." + }, + "example": "Iste quaerat mollitia sit ex cumque." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IssuesListIssuesResponseBody" + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_view" + ] + } + ] + }, + "post": { + "tags": [ + "Issues" + ], + "description": "Create a new Security Issue", + "operationId": "Issues#CreateIssue", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "normalized", + "in": "query", + "description": "Indicates the Occurrences have already been normalized", + "allowEmptyValue": true, + "schema": { + "type": "boolean", + "description": "Indicates the Occurrences have already been normalized", + "example": false + }, + "example": false + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Non sapiente neque sequi non vero." + }, + "example": "Et ut ipsa eum et tempora asperiores." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateIssueRequestBody" + }, + "example": { + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionId": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "keyPattern": [ + "library_name", + "library_version" + ], + "numOccurrences": 10, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "scanId": "abcdef1234567890ghijkl", + "severity": 8.5, + "severityCode": "High", + "subproduct": "product", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionsCreateExemptionResponseBody" + }, + "example": { + "id": "abcdef1234567890ghijkl" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_edit" + ] + } + ] + } + }, + "/sto/api/v2/issues/{id}": { + "get": { + "tags": [ + "Issues" + ], + "description": "Find Security Issue by ID", + "operationId": "Issues#FindIssueById", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_org" + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_project" + }, + { + "name": "targetId", + "in": "query", + "description": "Associated Target ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "examples": { + "default": { + "summary": "default", + "value": "abcdef1234567890ghijkl" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Issue to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Issue to retrieve", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Quis sunt illum laudantium sed exercitationem." + }, + "example": "Quasi eos quaerat occaecati aperiam possimus fuga." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Issue" + }, + "example": { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_view" + ] + } + ] + }, + "put": { + "tags": [ + "Issues" + ], + "description": "Update an existing Security Issue", + "operationId": "Issues#UpdateIssue", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Issue to update", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Issue to update", + "example": "Beatae asperiores rerum ad qui aut veritatis." + }, + "example": "Sed aut voluptates et nemo." + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Aspernatur quia." + }, + "example": "Libero nulla a." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateIssueRequestBody" + }, + "example": { + "numOccurrences": 10, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "scanId": "abcdef1234567890ghijkl", + "type": "SAST" + } + } + } + }, + "responses": { + "204": { + "description": "Update succeeded." + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_edit" + ] + } + ] + } + }, + "/sto/api/v2/issues/{id}/augment-remediation": { + "post": { + "tags": [ + "Issues" + ], + "description": "Use AI to augment the remediation steps for this Security Issue", + "operationId": "Issues#IssuesAugmentRemediation", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_org" + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_project" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Issue to augment", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Issue to augment", + "example": "1234567890abcdefghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "1234567890abcdefghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Ut omnis accusantium dolores." + }, + "example": "Distinctio aut molestias ut quos." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IssuesAugmentRemediationRequestBody" + }, + "example": { + "connectorId": "Excepturi assumenda cum in dolor aliquam.", + "occurrenceId": 12345, + "referenceId": "CWE-123", + "scanId": "abcdefghijkl1234567890", + "userSnippet": "func example() int {\n return 0\n}" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IssuesIssuesAugmentRemediationResponseBody" + }, + "example": { + "metadata": { + "warnings": [ + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + } + ] + }, + "remediationCode": "Et praesentium.", + "remediationContext": "Vero est ipsum.", + "repoContent": "Aspernatur voluptas vero et." + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_view" + ] + } + ] + } + }, + "/sto/api/v2/products": { + "get": { + "tags": [ + "Products" + ], + "description": "List a collection of Scan Tools", + "operationId": "Products#ListProducts", + "parameters": [ + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "name", + "in": "query", + "description": "Resource name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Resource name", + "example": "NodeGoat" + }, + "example": "NodeGoat" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Eius corporis sit accusantium." + }, + "example": "Occaecati molestiae qui." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProductsListProductsResponseBody" + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + }, + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + } + ] + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "core_account_view" + ] + } + ] + } + }, + "/sto/api/v2/products/{id}": { + "get": { + "tags": [ + "Products" + ], + "description": "Find Scan Tool by ID", + "operationId": "Products#FindProductById", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The ID of the Scan Tool to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Scan Tool to retrieve", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Ullam enim eos maxime nostrum quia repellat." + }, + "example": "Quo consectetur." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Product" + }, + "example": { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "core_account_view" + ] + } + ] + } + }, + "/sto/api/v2/reference-identifiers/{refId}": { + "get": { + "tags": [ + "Reference Identifiers" + ], + "description": "Reference Identifiers Lookup", + "operationId": "Reference Identifiers#getByReferenceId", + "parameters": [ + { + "name": "refId", + "in": "path", + "required": true, + "schema": { + "type": "string", + "example": "CWE-123" + }, + "example": "CWE-123" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Voluptatem tenetur nihil corrupti." + }, + "example": "Excepturi est tempora quis eligendi." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetByReferenceIDResponseBody" + }, + "example": { + "description": "Qui voluptas illum aut et veritatis dolores.", + "extendedDescription": "Ut accusamus eum numquam.", + "remediationSteps": "Magni pariatur quod.", + "severity": 8.5, + "severityCode": "High" + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "core_account_view" + ] + } + ] + } + }, + "/sto/api/v2/scans": { + "get": { + "tags": [ + "Scans" + ], + "description": "List a collection of Security Test Scans", + "operationId": "Scans#ListScans", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "executionId", + "in": "query", + "description": "Harness Execution ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Execution ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Esse non ut ut." + }, + "example": "Soluta voluptas." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScansListScansResponseBody" + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + } + ] + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_scan_view" + ] + } + ] + }, + "post": { + "tags": [ + "Scans" + ], + "description": "Create a new Security Test Scan", + "operationId": "Scans#CreateScan", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Dicta a sint sequi nesciunt quam." + }, + "example": "Rerum adipisci dolore aspernatur veritatis voluptas." + }, + { + "name": "X-Harness-User-Id", + "in": "header", + "description": "Harness User ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness User ID", + "example": "abcdef1234567890ghijkl" + }, + "example": "abcdef1234567890ghijkl" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateScanRequestBody" + }, + "example": { + "codeCoverage": 65.5, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Praesentium dolores tenetur voluptatem quae.", + "detectedVariant": "At accusantium.", + "droneCorrelated": false, + "provider": "Modi occaecati corporis fugit atque distinctio.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Dolore est.", + "Sit optio.", + "Beatae harum aliquam." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionsCreateExemptionResponseBody" + }, + "example": { + "id": "abcdef1234567890ghijkl" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_scan_edit" + ] + } + ] + } + }, + "/sto/api/v2/scans/{id}": { + "get": { + "tags": [ + "Scans" + ], + "description": "Find Security Test Scan by ID", + "operationId": "Scans#FindScanById", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Test Scan to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Test Scan to retrieve", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Velit necessitatibus laboriosam maxime explicabo est." + }, + "example": "Illo perferendis vel laboriosam amet." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Scan" + }, + "example": { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_scan_view" + ] + } + ] + }, + "put": { + "tags": [ + "Scans" + ], + "description": "Update an existing Security Test Scan", + "operationId": "Scans#UpdateScan", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Test Scan to update", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Test Scan to update", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Et aut eos voluptatem id dolor." + }, + "example": "Laudantium laudantium quidem." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateScanRequestBody" + }, + "example": { + "artifactFingerprint": "abcdef1234567890ghijkl", + "codeCoverage": 65.5, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Praesentium dolores tenetur voluptatem quae.", + "detectedVariant": "At accusantium.", + "droneCorrelated": false, + "provider": "Modi occaecati corporis fugit atque distinctio.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Dolore est.", + "Sit optio.", + "Beatae harum aliquam." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Scan" + }, + "example": { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_scan_edit" + ] + } + ] + } + }, + "/sto/api/v2/scans/{id}/issue/{issueId}": { + "get": { + "tags": [ + "Scans" + ], + "description": "Returns a scan specific issue", + "operationId": "Scans#ScanIssue", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_org" + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_project" + }, + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "sort", + "in": "query", + "description": "The field to sort by", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The field to sort by", + "example": "Non necessitatibus et culpa." + }, + "example": "Quia voluptatum autem doloribus." + }, + { + "name": "order", + "in": "query", + "description": "The order to sort by", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The order to sort by", + "example": "ASC", + "enum": [ + "ASC", + "DESC" + ] + }, + "example": "DESC" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Test Scan", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Test Scan", + "example": "Voluptatem omnis alias fugit." + }, + "example": "Ducimus voluptatem sunt odit sit." + }, + { + "name": "issueId", + "in": "path", + "description": "The ID of the Security Test Issue", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Test Issue", + "example": "Reprehenderit non tempore asperiores eius impedit earum." + }, + "example": "Odio omnis facere." + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Voluptatibus ut non autem." + }, + "example": "Ut dicta." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScansScanIssueResponseBody" + }, + "example": { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Expired", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "harnessAugmentation": { + "Maiores sunt.": "Quia sed explicabo numquam temporibus.", + "Sint sit.": "Ratione quo quam sequi.", + "Vero sint est consequatur.": "Aspernatur sapiente et eveniet tenetur qui." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNonExemptedOccurrences": 10, + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "occurrencesPagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "primaryOccurrenceId": 12345, + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_view" + ] + } + ] + } + }, + "/sto/api/v2/scans/{id}/issue/{issueId}/occurrences": { + "get": { + "tags": [ + "Scans" + ], + "description": "Returns occurrences for a scan specific issue", + "operationId": "Scans#ScanIssueOccurrences", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_org" + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_project" + }, + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "search", + "in": "query", + "allowEmptyValue": true, + "schema": { + "type": "string", + "example": "CWE-123,5", + "maxLength": 256 + }, + "example": "CWE-123,5" + }, + { + "name": "exemptionStatus", + "in": "query", + "allowEmptyValue": true, + "schema": { + "type": "string", + "example": "EXEMPTED,REJECTED", + "pattern": "^(EXEMPTED|NOT_EXEMPTED|REJECTED|PENDING)(,EXEMPTED|,NOT_EXEMPTED|,REJECTED|,PENDING)*$" + }, + "example": "EXEMPTED,REJECTED" + }, + { + "name": "sort", + "in": "query", + "description": "The field to sort by", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The field to sort by", + "example": "Aut aut." + }, + "example": "Eos perferendis vitae provident qui voluptas." + }, + { + "name": "order", + "in": "query", + "description": "The order to sort by", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "The order to sort by", + "example": "ASC", + "enum": [ + "ASC", + "DESC" + ] + }, + "example": "ASC" + }, + { + "name": "exemptionId", + "in": "query", + "description": "ID of Security Test Exemption if the API call is for scan + issue + exemption, needed for exemption issue target occurrences detail", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "ID of Security Test Exemption if the API call is for scan + issue + exemption, needed for exemption issue target occurrences detail", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Test Scan", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Test Scan", + "example": "Saepe enim sint labore modi at." + }, + "example": "Error eum occaecati eum aut quia." + }, + { + "name": "issueId", + "in": "path", + "description": "The ID of the Security Test Issue", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Test Issue", + "example": "Iure omnis et." + }, + "example": "Nemo quas eos nam molestiae quisquam modi." + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Ut possimus est neque consequatur." + }, + "example": "Odit harum velit nisi deserunt." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScansScanIssueResponseBody" + }, + "example": { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Expired", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "harnessAugmentation": { + "Maiores sunt.": "Quia sed explicabo numquam temporibus.", + "Sint sit.": "Ratione quo quam sequi.", + "Vero sint est consequatur.": "Aspernatur sapiente et eveniet tenetur qui." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNonExemptedOccurrences": 10, + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "occurrencesPagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "primaryOccurrenceId": 12345, + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_view" + ] + } + ] + } + }, + "/sto/api/v2/scans/{id}/issues": { + "get": { + "tags": [ + "Scans" + ], + "description": "List Issues by Scan ID", + "operationId": "Scans#ScanIssues", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "exempted", + "in": "query", + "description": "Chooses whether to show exempted issues (\"only\"), or non-exempted issues (\"0\" or \"false\")", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Chooses whether to show exempted issues (\"only\"), or non-exempted issues (\"0\" or \"false\")", + "default": "false", + "example": "only", + "enum": [ + "false", + "only", + "0" + ] + }, + "example": "only" + }, + { + "name": "id", + "in": "path", + "description": "The Scan ID", + "required": true, + "schema": { + "type": "string", + "description": "The Scan ID", + "example": "abcdefghijkl1234567890", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdefghijkl1234567890" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Iste dicta." + }, + "example": "Magni in." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScansScanIssuesResponseBody" + }, + "example": { + "issues": [ + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_view" + ] + } + ] + } + }, + "/sto/api/v2/scans/{id}/issues/counts": { + "get": { + "tags": [ + "Scans" + ], + "description": "Returns counts of active Security Issues for a Security Test Scan", + "operationId": "Scans#ScanIssueCounts", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_org" + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_project" + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Security Test Scan for which to count issues", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Security Test Scan for which to count issues", + "example": "Porro odio." + }, + "example": "Molestiae dolorem aut consequatur." + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Facere sint." + }, + "example": "Nesciunt corrupti repudiandae." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScansScanIssueCountsResponseBody" + }, + "example": { + "codeCoverage": 65.5, + "critical": 1, + "externalPolicyFailures": 0, + "high": 3, + "ignored": 1, + "ignoredCritical": 1, + "ignoredHigh": 3, + "ignoredInfo": 11, + "ignoredLow": 39, + "ignoredMedium": 17, + "ignoredUnassigned": 0, + "info": 11, + "low": 39, + "medium": 17, + "newCritical": 1, + "newHigh": 3, + "newIgnoredCritical": 1, + "newIgnoredHigh": 3, + "newIgnoredInfo": 11, + "newIgnoredLow": 39, + "newIgnoredMedium": 17, + "newIgnoredOccurrencesCritical": 1, + "newIgnoredOccurrencesHigh": 3, + "newIgnoredOccurrencesInfo": 11, + "newIgnoredOccurrencesLow": 39, + "newIgnoredOccurrencesMedium": 17, + "newIgnoredOccurrencesUnassigned": 0, + "newIgnoredUnassigned": 0, + "newInfo": 11, + "newLow": 39, + "newMedium": 17, + "newOccurrencesCritical": 1, + "newOccurrencesHigh": 3, + "newOccurrencesInfo": 11, + "newOccurrencesLow": 39, + "newOccurrencesMedium": 17, + "newOccurrencesUnassigned": 0, + "newTotal": 3, + "newUnassigned": 0, + "total": 10, + "unassigned": 0 + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_issue_view" + ] + } + ] + } + }, + "/sto/api/v2/system/health": { + "get": { + "tags": [ + "System" + ], + "description": "Check service health", + "operationId": "System#health", + "responses": { + "204": { + "description": "Service is healthy." + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + } + } + }, + "/sto/api/v2/system/version": { + "get": { + "tags": [ + "System" + ], + "description": "Get service version", + "operationId": "System#version", + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceVersion" + }, + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "version": "v0.123.0" + } + } + } + } + } + } + }, + "/sto/api/v2/targets": { + "get": { + "tags": [ + "Test Targets" + ], + "description": "List a collection of Test Targets", + "operationId": "Targets#ListTargets", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "name", + "in": "query", + "description": "Resource name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Resource name", + "example": "NodeGoat" + }, + "example": "NodeGoat" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_org" + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "example": "example_project" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Dolores est quos veniam eius totam." + }, + "example": "Consectetur omnis sapiente repellendus ipsum." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TargetsListTargetsResponseBody" + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + }, + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + }, + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + }, + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + } + ] + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_view" + ] + } + ] + }, + "post": { + "tags": [ + "Test Targets" + ], + "description": "Create a new Test Target", + "operationId": "Targets#CreateTarget", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_org" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_project" + } + } + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Possimus neque consequatur odit et." + }, + "example": "Sunt eos quam cum porro." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTargetRequestBody" + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "directory": "app/src", + "name": "NodeGoat", + "type": "repository", + "url": "https://github.com/example/repo" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionsCreateExemptionResponseBody" + }, + "example": { + "id": "abcdef1234567890ghijkl" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_edit" + ] + } + ] + } + }, + "/sto/api/v2/targets/{id}": { + "get": { + "tags": [ + "Test Targets" + ], + "description": "Find Test Target by ID", + "operationId": "Targets#FindTargetById", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_org" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_project" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Test Target to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Test Target to retrieve", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Esse sit consequuntur." + }, + "example": "Doloremque velit possimus." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoTarget" + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_view" + ] + } + ] + }, + "patch": { + "tags": [ + "Test Targets" + ], + "description": "Update only certain fields on an existing Test Target", + "operationId": "Targets#PatchTarget", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_org" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_project" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Test Target to update", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Test Target to update", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Cupiditate velit ipsum." + }, + "example": "Eum est." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchTargetRequestBody" + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "directory": "app/src", + "name": "NodeGoat", + "type": "repository", + "url": "https://github.com/example/repo" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoTarget" + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_edit" + ] + } + ] + }, + "put": { + "tags": [ + "Test Targets" + ], + "description": "Update an existing Test Target", + "operationId": "Targets#UpdateTarget", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "orgId", + "in": "query", + "description": "Harness Organization ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_org" + } + } + }, + { + "name": "projectId", + "in": "query", + "description": "Harness Project ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "examples": { + "default": { + "summary": "default", + "value": "example_project" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Test Target to update", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Test Target to update", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Reiciendis dolores." + }, + "example": "Voluptatem ut laborum sunt." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateTargetRequestBody" + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "directory": "app/src", + "name": "NodeGoat", + "type": "repository", + "url": "https://github.com/example/repo" + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoTarget" + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_edit" + ] + } + ] + } + }, + "/sto/api/v2/targets/{targetId}/variants": { + "get": { + "tags": [ + "Target Variants" + ], + "description": "List a collection of Scan Target Variants", + "operationId": "Target Variants#ListTargetVariants", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "page", + "in": "query", + "description": "Page number to fetch (starting from 0)", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Page number to fetch (starting from 0)", + "default": 0, + "example": 4, + "format": "int64", + "minimum": 0 + }, + "example": 4 + }, + { + "name": "pageSize", + "in": "query", + "description": "Number of results per page", + "allowEmptyValue": true, + "schema": { + "type": "integer", + "description": "Number of results per page", + "default": 30, + "example": 50, + "format": "int64", + "minimum": 1, + "maximum": 100 + }, + "example": 50 + }, + { + "name": "name", + "in": "query", + "description": "Resource name", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Resource name", + "example": "NodeGoat" + }, + "example": "NodeGoat" + }, + { + "name": "targetId", + "in": "path", + "description": "Associated Target ID", + "required": true, + "schema": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Repudiandae nemo quisquam ea omnis aut." + }, + "example": "Quod et." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TargetVariantsListTargetVariantsResponseBody" + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + } + ] + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_view" + ] + } + ] + }, + "post": { + "tags": [ + "Target Variants" + ], + "description": "Create a new Scan Target Variant", + "operationId": "Target Variants#CreateTargetVariant", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "targetId", + "in": "path", + "description": "Associated Target ID", + "required": true, + "schema": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "examples": { + "default": { + "summary": "default", + "value": "abcdef1234567890ghijkl" + } + } + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Quis adipisci atque accusantium tenetur velit ipsum." + }, + "example": "Voluptatem officia hic." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTargetVariantRequestBody" + }, + "example": { + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "parameters": { + "branch": "main" + } + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionsCreateExemptionResponseBody" + }, + "example": { + "id": "abcdef1234567890ghijkl" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_edit" + ] + } + ] + } + }, + "/sto/api/v2/targets/{targetId}/variants/{id}": { + "get": { + "tags": [ + "Target Variants" + ], + "description": "Find Scan Target Variant by ID", + "operationId": "Target Variants#FindTargetVariantById", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "targetId", + "in": "path", + "description": "Associated Target ID", + "required": true, + "schema": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "examples": { + "default": { + "summary": "default", + "value": "abcdef1234567890ghijkl" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Scan Target Variant to retrieve", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Scan Target Variant to retrieve", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Amet voluptas velit qui." + }, + "example": "Suscipit iusto rerum." + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TargetVariant" + }, + "example": { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_view" + ] + } + ] + }, + "put": { + "tags": [ + "Target Variants" + ], + "description": "Update an existing Scan Target Variant", + "operationId": "Target Variants#UpdateTargetVariant", + "parameters": [ + { + "name": "accountId", + "in": "query", + "description": "Harness Account ID", + "allowEmptyValue": true, + "required": true, + "schema": { + "type": "string", + "description": "Harness Account ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "targetId", + "in": "path", + "description": "Associated Target ID", + "required": true, + "schema": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "examples": { + "default": { + "summary": "default", + "value": "abcdef1234567890ghijkl" + } + } + }, + { + "name": "id", + "in": "path", + "description": "The ID of the Scan Target Variant to update", + "required": true, + "schema": { + "type": "string", + "description": "The ID of the Scan Target Variant to update", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "example": "abcdef1234567890ghijkl" + }, + { + "name": "X-Api-Key", + "in": "header", + "description": "Harness personal or service access token", + "allowEmptyValue": true, + "schema": { + "type": "string", + "description": "Harness personal or service access token", + "example": "Laboriosam magni maiores cupiditate fuga magni veniam." + }, + "example": "Aut vero." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateTargetVariantRequestBody" + }, + "example": { + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "parameters": { + "branch": "main" + } + } + } + } + }, + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TargetVariant" + }, + "example": { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + } + } + } + }, + "400": { + "description": "BadRequest: Bad Request response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Bad Request: accountId parameter is required", + "status": 400 + } + } + } + }, + "401": { + "description": "Unauthorized: Unauthorized response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Unauthorized", + "status": 401 + } + } + } + }, + "403": { + "description": "Forbidden: Forbidden response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Forbidden", + "status": 403 + } + } + } + }, + "404": { + "description": "NotFound: Not Found response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Not Found", + "status": 404 + } + } + } + }, + "429": { + "description": "TooManyRequests: Too Many Requests response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Too Many Requests", + "status": 429 + } + } + } + }, + "500": { + "description": "InternalServerError: Internal Server Error response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotFound" + }, + "example": { + "message": "Internal Server Error", + "status": 500 + } + } + } + } + }, + "security": [ + { + "X-Api-Key_header_X-Api-Key": [], + "jwt_header_Authorization": [ + "sto_testtarget_edit" + ] + } + ] + } + }, + "/v1/dbops/execution-config": { + "delete": { + "description": "Delete the Execution config overrides for the customer", + "operationId": "V1DeleteExecutionConfig", + "responses": { + "200": { + "$ref": "#/components/responses/ExecutionConfigSuccessResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Your DELETE endpoint", + "tags": [ + "Execution Config" + ], + "x-stoplight": { + "id": "b4ixsyl78f1dh" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ] + }, + "/v1/dbops/execution-config/get-customer-config": { + "get": { + "operationId": "V1GetCustomerConfig", + "parameters": [ + { + "description": "Returns the non-default images if true", + "in": "query", + "name": "overridesOnly", + "schema": { + "default": true, + "type": "boolean" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ExecutionConfigTagsResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Get Customer Execution Config overrides", + "tags": [ + "Execution Config" + ], + "x-stoplight": { + "id": "xyt06xiwwna97" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ] + }, + "/v1/dbops/execution-config/get-default-config": { + "get": { + "description": "Get list of the latest Harness Dbops images and tags", + "operationId": "V1GetDefaultConfig", + "responses": { + "200": { + "$ref": "#/components/responses/ExecutionConfigTagsResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Get Default Execution Config", + "tags": [ + "Execution Config" + ], + "x-stoplight": { + "id": "wiaw98nfdi0rv" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ] + }, + "/v1/dbops/execution-config/reset-config": { + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ], + "post": { + "description": "To reset one or more images to their defaults with a list of the images to reset.", + "operationId": "V1ResetExecutionConfig", + "requestBody": { + "content": { + "application/json": { + "examples": { + "Example 1": { + "value": [ + "gitCloneTag" + ] + } + }, + "schema": { + "items": { + "example": "gitCloneTag", + "type": "string", + "x-stoplight": { + "id": "3kixxbyjo4ybt" + } + }, + "type": "array" + } + } + }, + "description": "List of Image tags which need to be reset to default" + }, + "responses": { + "201": { + "$ref": "#/components/responses/ExecutionConfigSuccessResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Reset execution Config for DBOPs image tags", + "tags": [ + "Execution Config" + ], + "x-internal": false, + "x-stoplight": { + "id": "fvtunok2awllt" + } + } + }, + "/v1/dbops/execution-config/update-config": { + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ], + "post": { + "description": "Override execution Config for DBOPs image tags", + "operationId": "V1UpdateExecutionConfig", + "requestBody": { + "$ref": "#/components/requestBodies/ExecutionConfigUpdateRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/ExecutionConfigSuccessResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Override execution Config for DBOPs image tags", + "tags": [ + "Execution Config" + ], + "x-internal": false, + "x-stoplight": { + "id": "n6q91b59w1kld" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbinstancelist": { + "parameters": [ + { + "description": "Organization identifier", + "in": "path", + "name": "org", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Project identifier", + "in": "path", + "name": "project", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "in": "header", + "name": "Harness-Account", + "schema": { + "type": "string" + } + } + ], + "post": { + "description": "List database instances", + "operationId": "V2ListProjDbInstances", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + }, + { + "$ref": "#/components/parameters/DbOpsSearchTerm" + }, + { + "$ref": "#/components/parameters/DbOpsOrder" + }, + { + "$ref": "#/components/parameters/DbOpsSort" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/DBInstanceListRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/DBInstanceListResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "List database instances", + "x-stoplight": { + "id": "fg6az7gntxywm" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema": { + "get": { + "description": "List database Schemas", + "operationId": "V1ListProjDbSchema", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + }, + { + "$ref": "#/components/parameters/DbOpsSearchTerm" + }, + { + "$ref": "#/components/parameters/DbOpsSort" + }, + { + "$ref": "#/components/parameters/DbOpsOrder" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/DBSchemaListResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "List database schemas", + "tags": [ + "Database Schema" + ], + "x-internal": false, + "x-stoplight": { + "id": "nhhnhieu7jo8u" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ], + "post": { + "description": "Create a database schema", + "operationId": "V1CreateProjDbSchema", + "requestBody": { + "$ref": "#/components/requestBodies/DBSchemaCreateRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/DBSchemaResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Create a database schema", + "tags": [ + "Database Schema" + ], + "x-stoplight": { + "id": "1ip5gikvmqezd" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema/overview": { + "get": { + "description": "retrieves total dbSchemas, dbInstances and the latest 5 instances deployed", + "operationId": "V1GetDbOverview", + "responses": { + "200": { + "$ref": "#/components/responses/OverviewResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Get overview", + "tags": [ + "Overview" + ], + "x-stoplight": { + "id": "9r5etj2feldxk" + } + }, + "parameters": [ + { + "description": "Organization identifier", + "in": "path", + "name": "org", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Project identifier", + "in": "path", + "name": "project", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "in": "header", + "name": "Harness-Account", + "schema": { + "type": "string" + } + } + ] + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}": { + "delete": { + "description": "Delete a database schema", + "operationId": "V1DeleteProjDbSchema", + "responses": { + "204": { + "description": "The database schema was deleted successfully" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Delete a database schema", + "tags": [ + "Database Schema" + ], + "x-stoplight": { + "id": "ek4jolzg7diy6" + } + }, + "get": { + "description": "Retrieves the specified database schema", + "operationId": "V1GetProjDbSchema", + "responses": { + "200": { + "$ref": "#/components/responses/DBSchemaResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Get a database schema", + "tags": [ + "Database Schema" + ], + "x-stoplight": { + "id": "78fzlqtzyti7q" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ], + "put": { + "description": "Update a database schema", + "operationId": "V1UpdateProjDbSchema", + "requestBody": { + "$ref": "#/components/requestBodies/DBSchemaUpdateRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/DBSchemaResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Update a database schema", + "tags": [ + "Database Schema" + ], + "x-stoplight": { + "id": "ngsm9f0c6fvq5" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/dbinstance/{dbinstance}/changeset/sql": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DBInstanceParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ], + "post": { + "description": "Fetch SQL changesets", + "operationId": "V1FetchDeployedChangesetSql", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FetchSQLStatementRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/FetchSQLStatementResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Fetch SQL changesets of a instance", + "tags": [ + "Migration State" + ], + "x-internal": false, + "x-stoplight": { + "id": "odqwzclbjkd20" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/dbinstance/{dbinstance}/changeset/yaml": { + "get": { + "operationId": "V1ChangesetYamlProjDbInstance", + "parameters": [ + { + "$ref": "#/components/parameters/ChangeSetParam" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ChangeSetDeploymentYamlResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "ChangeSet deployment yaml for an instance", + "tags": [ + "Migration State" + ], + "x-internal": false, + "x-stoplight": { + "id": "inxq15g516opv" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DBInstanceParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/dbinstance/{dbinstance}/migrationstate": { + "get": { + "description": "Migration state of a instance", + "operationId": "V1MigrationStateProjDbInstance", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + }, + { + "$ref": "#/components/parameters/DbOpsSearchTerm" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/InstanceMigrationStateResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Migration state of a instance", + "tags": [ + "Migration State" + ], + "x-internal": false, + "x-stoplight": { + "id": "3lep3gv4fv11g" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DBInstanceParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ], + "post": { + "description": "Create a database instance", + "operationId": "V1CreateProjDbSchemaInstance", + "requestBody": { + "$ref": "#/components/requestBodies/DBInstanceCreateRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/DBInstanceResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Create a database instance", + "tags": [ + "Database Instance" + ], + "x-stoplight": { + "id": "ooxjel6o3ya8y" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}": { + "delete": { + "description": "Delete a database instance", + "operationId": "V1DeleteProjDbSchemaInstance", + "responses": { + "204": { + "description": "The database instance was deleted successfully" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Delete a database instance", + "tags": [ + "Database Instance" + ], + "x-stoplight": { + "id": "hx4uvpfwg2w2c" + } + }, + "get": { + "description": "Retrieves the specified database instance", + "operationId": "V1GetProjDbSchemaInstance", + "responses": { + "200": { + "$ref": "#/components/responses/DBInstanceResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Get a database instance", + "tags": [ + "Database Instance" + ], + "x-stoplight": { + "id": "tcua2vmx132hm" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DBInstanceParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ], + "put": { + "description": "Update a database instance", + "operationId": "V1UpdateProjDbSchemaInstance", + "requestBody": { + "$ref": "#/components/requestBodies/DBInstanceUpdateRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/DBInstanceResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Update a database instance", + "tags": [ + "Database Schema" + ], + "x-stoplight": { + "id": "e17endbbc7uha" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}/deployedState": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DBInstanceParam" + }, + { + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "in": "header", + "name": "Harness-Account", + "schema": { + "type": "string" + } + } + ], + "post": { + "description": "Status of changeset deployment as part of execution with comparison to earlier state.", + "operationId": "V1GetDeployedState", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeployedStateInput" + } + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/DeployedStateOutput" + }, + "type": "array" + } + } + }, + "description": "Response", + "headers": { + "X-Page-Number": { + "description": "Page number in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Page-Size": { + "description": "Maximum page size in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Total-Elements": { + "description": "Total number of elements returned in Paginated response.", + "schema": { + "type": "integer" + } + } + } + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Get Deployed State", + "tags": [ + "Deployed State" + ], + "x-stoplight": { + "id": "5rj6sci8d41op" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}/logs": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DBInstanceParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}/logs/{log}": { + "get": { + "description": "Retrieves the specified log event", + "operationId": "V1GetDbinstanceLog", + "responses": { + "200": { + "$ref": "#/components/responses/ParsedLogResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "tags": [ + "Log Ingest" + ], + "x-stoplight": { + "id": "9o2dqka7km06p" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + }, + { + "$ref": "#/components/parameters/DBSchemaParam" + }, + { + "$ref": "#/components/parameters/DBInstanceParam" + }, + { + "$ref": "#/components/parameters/LogParam" + }, + { + "$ref": "#/components/parameters/DbOpsAccountHeader" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instancelist": { + "parameters": [ + { + "description": "Organization identifier", + "in": "path", + "name": "org", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Project identifier", + "in": "path", + "name": "project", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Identifier of the database schema", + "in": "path", + "name": "dbschema", + "required": true, + "schema": { + "maxLength": 128, + "type": "string" + } + }, + { + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "in": "header", + "name": "Harness-Account", + "schema": { + "type": "string" + } + } + ], + "post": { + "description": "Retrieves the specified database instances of the database schema", + "operationId": "V1ListProjDbSchemaInstance", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + }, + { + "$ref": "#/components/parameters/DbOpsSearchTerm" + }, + { + "$ref": "#/components/parameters/DbOpsSort" + }, + { + "$ref": "#/components/parameters/DbOpsOrder" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/DBInstanceFilterRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/DBInstanceListResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "List database instances", + "tags": [ + "Database Instance" + ], + "x-stoplight": { + "id": "uwxyv5tgwu2w9" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/migrationstate": { + "parameters": [ + { + "description": "Organization identifier", + "in": "path", + "name": "org", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Project identifier", + "in": "path", + "name": "project", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Identifier of the database schema", + "in": "path", + "name": "dbschema", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "in": "header", + "name": "Harness-Account", + "schema": { + "type": "string" + } + } + ], + "post": { + "description": "Migration state of a schema", + "operationId": "V1MigrationStateProjDbSchema", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + }, + { + "$ref": "#/components/parameters/DbOpsSearchTerm" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/MigrationStateGetRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/MigrationStateResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "Migration state of a schema", + "tags": [ + "Migration State" + ], + "x-internal": false, + "x-stoplight": { + "id": "esgkki234aa1u" + } + } + }, + "/v1/orgs/{org}/projects/{project}/dbschemalist": { + "parameters": [ + { + "description": "Organization identifier", + "in": "path", + "name": "org", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Project identifier", + "in": "path", + "name": "project", + "required": true, + "schema": { + "type": "string" + } + }, + { + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "in": "header", + "name": "Harness-Account", + "schema": { + "type": "string" + } + } + ], + "post": { + "description": "List database schemas", + "operationId": "V2ListProjDbSchema", + "parameters": [ + { + "$ref": "#/components/parameters/DbOpsPageIndex" + }, + { + "$ref": "#/components/parameters/DbOpsLimit" + }, + { + "$ref": "#/components/parameters/DbOpsSearchTerm" + }, + { + "$ref": "#/components/parameters/DbOpsOrder" + }, + { + "$ref": "#/components/parameters/DbOpsSort" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/DBSchemaFilterRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/DBSchemaListResponse" + }, + "400": { + "$ref": "#/components/responses/ErrorResponse" + }, + "403": { + "$ref": "#/components/responses/ErrorResponse" + }, + "404": { + "$ref": "#/components/responses/ErrorResponse" + }, + "500": { + "$ref": "#/components/responses/ErrorResponse" + } + }, + "summary": "List database schemas", + "x-stoplight": { + "id": "6zjabgo8o3ml1" + } + } + }, + "/v1/org/workspaces/units/list": { + "post": { + "tags": [ + "Collection categories" + ], + "summary": "List all Collection categories", + "description": "Retrieve a list of collection categories", + "operationId": "categories#listCategories", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "page": { + "type": "integer", + "description": "The page number for pagination", + "default": 0 + }, + "pageSize": { + "type": "integer", + "description": "The number of items per page", + "default": 20 + }, + "filter": { + "type": "object", + "properties": { + "name": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Filter by category names" + }, + "is_predefined": { + "type": "boolean", + "description": "Filter by predefined status" + }, + "enabled": { + "type": "boolean", + "description": "Filter by enabled status of the collection category" + } + } + } + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X POST 'https://app.harness.io/gratis/sei/api/v1/org/workspaces/units/list' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '{\n \"page\": 0,\n \"pageSize\": 20,\n \"filter\": {\n \"name\": [\n \"string\"\n ],\n \"is_predefined\": true,\n \"enabled\": true\n }\n}'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UsageResponse1" + }, + "example": { + "records": [ + { + "id": "6cad073a-b7bf-4606-b706-302f19d8e133", + "name": "Organizing", + "description": "This is the first team c", + "is_predefined": true, + "enabled": true, + "count_of_ous": 1, + "created_at": 1654841196842, + "updated_at": 1654841196842 + }, + { + "id": "9fe62fc3-31aa-4cf0-a62f-677eaeff33b2", + "name": "Finance", + "description": "This is the second team c", + "enabled": true, + "count_of_ous": 0, + "is_predefined": false, + "created_at": 1654841375866, + "updated_at": 1654841375866 + }, + { + "id": "75504d25-4980-4952-a282-ab6933fdff8b", + "name": "Dev Team", + "description": "This is the thrid team c", + "enabled": true, + "count_of_ous": 1, + "is_predefined": true, + "created_at": 1654841422226, + "updated_at": 1654841422226 + }, + { + "id": "9a2c246b-4468-4888-8371-43fae8473296", + "name": "Testing Team", + "description": "This is the fourth team c", + "enabled": true, + "count_of_ous": 4, + "is_predefined": true, + "created_at": 1654841434865, + "updated_at": 1654841434865 + } + ], + "count": 4, + "_metadata": { + "page_size": 1000, + "page": 0, + "has_next": false, + "total_count": 4 + } + } + } + } + } + } + } + }, + "/v1/org/categories": { + "post": { + "tags": [ + "Collection categories" + ], + "summary": "Create a new Collection category", + "description": "Create a new collection category", + "operationId": "categories#createCategory", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "rootOuName": { + "type": "string", + "description": "The name of the root organizational unit" + }, + "workspaceId": { + "type": "integer", + "description": "The ID of the workspace" + }, + "name": { + "type": "string", + "description": "The name of the new category" + }, + "description": { + "type": "string", + "description": "A description of the category" + }, + "is_predefined": { + "type": "boolean", + "description": "Whether the category is predefined" + }, + "enabled": { + "type": "boolean", + "description": "Whether the category is enabled" + } + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X POST 'https://app.harness.io/gratis/sei/api/v1/org/categories' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '{\n \"rootOuName\": \"Example Root OU\",\n \"workspaceId\": 15367,\n \"name\": \"Finance\",\n \"description\": \"This is the second team c\",\n \"is_predefined\": false,\n \"enabled\": true\n}'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CategoryResponse" + }, + "example": { + "id": "9fe62fc3-31aa-4cf0-a62f-677eaeff33b2", + "name": "Finance", + "description": "This is the second team C", + "is_predefined": false, + "enabled": true + } + } + } + } + } + }, + "delete": { + "tags": [ + "Collection categories" + ], + "summary": "Delete multiple Collection categories", + "description": "Delete multiple collection categories in a single request", + "operationId": "categories#deleteCategories", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X PUT 'https://app.harness.io/gratis/sei/api/v1/org/categories' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '{\n [\n \"9a1dc856-6e2d-4dbe-98cf-5416c5981bbc\", \"eafb1e30-4af8-480e-b7b5-487293659df3\"\n ]\n }'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "records": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier of the category" + }, + "success": { + "type": "boolean", + "description": "Indicates whether the deletion was successful" + } + } + } + }, + "count": { + "type": "integer", + "description": "The total number of successfully deleted categories" + } + } + }, + "example": { + "records": [ + { + "id": "9a1dc856-6e2d-4dbe-98cf-5416c5981bbc", + "success": true + }, + { + "id": "eafb1e30-4af8-480e-b7b5-487293659df3", + "success": true + } + ], + "count": 2 + } + } + } + } + } + } + }, + "/v1/org/categories/{id}": { + "put": { + "tags": [ + "Collection categories" + ], + "summary": "Update an existing Collection category", + "description": "Use this API endpoint to update an existing collection category", + "operationId": "categories#updateCategory", + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "description": "The unique identifier of the collection category to be updated", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The updated name of the category" + }, + "description": { + "type": "string", + "description": "The updated description of the category" + }, + "is_predefined": { + "type": "boolean", + "description": "Whether the category is predefined" + }, + "enabled": { + "type": "boolean", + "description": "Whether the category is enabled" + } + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X PUT 'https://app.harness.io/gratis/sei/api/v1/org/categories/{id}' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '{\n \"name\": \"TEST CATEGORY\",\n \"description\": \"this is an updated description for the collection category\",\n \"is_predefined\": true,\n \"enabled\": true\n}'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CategoryResponse" + }, + "example": { + "id": "cb147922-a0c2-4563-b3fe-f1e67aa7eb4c", + "name": "Testing Team", + "description": "This is an updated description for the collection category", + "is_predefined": true, + "enabled": true + } + } + } + } + } + }, + "delete": { + "tags": [ + "Collection categories" + ], + "summary": "Delete a specific Collection category", + "description": "Delete an existing collection category", + "operationId": "categories#deleteCategory", + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "description": "The unique identifier of the collection category to be deleted", + "schema": { + "type": "string" + } + } + ], + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X DELETE 'https://app.harness.io/gratis/sei/api/v1/org/categories/{id}' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY '\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "records": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "success": { + "type": "boolean" + } + } + } + }, + "count": { + "type": "integer" + } + } + }, + "example": { + "records": [ + { + "id": "9a2c246b-4468-4888-8371-43fae8473296", + "success": true + } + ], + "count": 1 + } + } + } + } + } + } + }, + "/v1/org/units/list": { + "post": { + "tags": [ + "Collections" + ], + "summary": "Retrieve a list of collections", + "description": "This API endpoint allows you to retrieve a list of collections. The endpoint is paginated.", + "operationId": "collections#listCollections", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "page": { + "type": "integer", + "description": "The page number for pagination", + "default": 0 + }, + "page_size": { + "type": "integer", + "description": "The number of items per page (default may vary)" + }, + "filter": { + "type": "object", + "properties": { + "ou_category_id": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Filter collections by category IDs" + } + } + } + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X POST 'https://app.harness.io/gratis/sei/api/v1/org/units/list' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '{\n \"page\": 0,\n \"page_size\": 100,\n \"filter\": {\n \"ou_category_id\": [\"b5ba90ab-caf4-4fef-90bd-3816d2294547\"]\n }\n}'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "records": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "ou_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "managers": { + "type": "array", + "items": { + "type": "string" + } + }, + "admins": { + "type": "array", + "items": { + "type": "string" + } + }, + "sections": { + "type": "array", + "items": { + "type": "string" + } + }, + "version": { + "type": "string" + }, + "no_of_dashboards": { + "type": "integer" + }, + "path": { + "type": "string" + }, + "ou_category_id": { + "type": "string" + }, + "default_dashboard_id": { + "type": "integer" + }, + "workspace_id": { + "type": "integer" + }, + "created_at": { + "type": "integer" + }, + "parent_ref_id": { + "type": "integer", + "nullable": true + }, + "workflow_profile_id": { + "type": "string", + "nullable": true + }, + "workflow_profile_name": { + "type": "string", + "nullable": true + } + } + } + }, + "count": { + "type": "integer" + }, + "_metadata": { + "type": "object", + "properties": { + "page_size": { + "type": "integer" + }, + "page": { + "type": "integer" + }, + "has_next": { + "type": "boolean" + }, + "total_count": { + "type": "integer" + } + } + } + } + }, + "example": { + "records": [ + { + "id": "76", + "ou_id": "8ffa98a4-c607-4d90-a333-b79bf095a7fb", + "name": "All Teams", + "tags": [], + "managers": [], + "admins": [], + "sections": [], + "version": "1", + "no_of_dashboards": 3, + "path": "/All Teams", + "ou_category_id": "ffaea171-ba57-4222-81b0-d26d3284c065", + "default_dashboard_id": 0, + "workspace_id": 34, + "created_at": 1710173818740, + "workflow_profile_id": "f1d1d2f2-bba6-4f19-92c2-fcd4e4fa8116", + "workflow_profile_name": "DORA profile" + }, + { + "id": "79", + "ou_id": "e1dc905b-0eca-4c4d-ad49-a3ce396fe0ff", + "name": "Frontend", + "tags": [], + "managers": [], + "admins": [], + "sections": [], + "parent_ref_id": 76, + "version": "2", + "no_of_dashboards": 0, + "path": "/All Teams/Frontend", + "ou_category_id": "ffaea171-ba57-4222-81b0-d26d3284c065", + "default_dashboard_id": 0, + "workspace_id": 34, + "created_at": 1710947467896 + } + ], + "count": 2, + "_metadata": { + "page_size": 100, + "page": 0, + "has_next": false, + "total_count": 2 + } + } + } + } + } + } + } + }, + "/v1/org/units": { + "post": { + "tags": [ + "Collections" + ], + "summary": "Create a new collection", + "description": "This API endpoint allows you to create a new collection.", + "operationId": "collections#createCollection", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the new collection" + }, + "ou_category_id": { + "type": "string", + "description": "The ID of the category to which the collection belongs" + }, + "parent_ref_id": { + "type": "string", + "description": "The reference ID of the parent collection" + }, + "sections": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "A randomly generated UUID for the section" + }, + "integrations": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of integration (e.g., \"jira\", \"github\", \"jenkins\")" + }, + "filters": { + "type": "object", + "description": "Filters specific to the integration type" + } + } + } + } + } + } + } + } + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X POST 'https://app.harness.io/gratis/sei/api/v1/org/units' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '[\n {\n \"name\": \"My Collection\",\n \"ou_category_id\": \"b5ba90ab-caf4-4fef-90bd-3816d2294547\",\n \"parent_ref_id\": \"33\",\n \"sections\": [\n {\n \"id\": \"96096840-e721-11ee-b664-7bab67f40a81\",\n \"integrations\": {\n \"1\": {\n \"type\": \"jira\",\n \"filters\": {\n \"projects\": [\"PROJECT1\", \"PROJECT2\", \"PROJECT3\"]\n }\n }\n }\n },\n {\n \"id\": \"9cb8ae30-e721-11ee-b664-7bab67f40a81\",\n \"integrations\": {\n \"2\": {\n \"type\": \"github\",\n \"filters\": {\n \"repo_ids\": [\"my-org/my-repo-1\", \"my-org/my-repo-2\", \"my-org/my-repo-3\"]\n }\n }\n }\n },\n {\n \"id\": \"9f1589f0-e721-11ee-b664-7bab67f40a81\",\n \"integrations\": {\n \"3\": {\n \"type\": \"jenkins\",\n \"filters\": {\n \"job_names\": [\"Pipeline1\", \"Pipeline2\", \"Pipeline3\"]\n }\n }\n }\n }\n ]\n }\n]'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "type": "string" + } + }, + "success": { + "type": "array", + "items": { + "type": "integer" + } + } + } + }, + "example": { + "errors": [], + "success": [ + 82 + ] + } + } + } + } + } + }, + "put": { + "tags": [ + "Collections" + ], + "summary": "Edit an existing collection", + "description": "This API endpoint allows you to edit an existing collection.", + "operationId": "collections#editCollection", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The reference ID of the collection to be edited" + }, + "name": { + "type": "string", + "description": "The new name for the collection", + "nullable": true + }, + "ou_category_id": { + "type": "string", + "description": "The ID of the category to which the collection belongs", + "nullable": true + }, + "parent_ref_id": { + "type": "string", + "description": "The reference ID of the parent collection", + "nullable": true + }, + "sections": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "A randomly generated UUID for the section" + }, + "integrations": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of integration (e.g., \"jira\", \"github\", \"jenkins\")" + }, + "filters": { + "type": "object", + "description": "Filters specific to the integration type" + } + } + } + } + } + } + } + } + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X PUT 'https://app.harness.io/gratis/sei/api/v1/org/units' \\\n-H 'Content-Type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '[\n {\n \"id\": \"74\",\n \"name\": \"New Name\",\n \"ou_category_id\": \"b5ba90ab-caf4-4fef-90bd-3816d2294547\",\n \"parent_ref_id\": \"33\",\n \"sections\": [\n {\n \"id\": \"33024940-e728-11ee-b664-7bab67f40a81\",\n \"integrations\": {\n \"1\": {\n \"type\": \"jira\",\n \"filters\": {\n \"projects\": [\"PROJECT4\"]\n }\n }\n }\n }\n ]\n }\n]'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "type": "string" + } + }, + "success": { + "type": "array", + "items": { + "type": "integer" + } + } + } + }, + "example": { + "errors": [], + "success": [ + 74 + ] + } + } + } + } + } + }, + "delete": { + "tags": [ + "Collections" + ], + "summary": "Delete an existing collection", + "description": "This API endpoint allows you to delete an existing collection.", + "operationId": "collections#deleteCollection", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string", + "description": "The reference ID of the collection to be deleted. Multiple IDs can be included in the array to delete multiple collections in a single request." + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl -X DELETE 'https://app.harness.io/gratis/sei/api/v1/org/units' \\\n-H 'Content-type: application/json' \\\n-H 'Authorization: APIKEY ' \\\n-d '[\"\"]'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string", + "example": "The collection(s) were successfully deleted." + } + } + }, + "example": { + "message": "The collection(s) were successfully deleted." + } + } + } + } + } + } + }, + "/v1/org/users/versions": { + "get": { + "tags": [ + "Contributors" + ], + "summary": "Retrieve the list of active versions", + "description": "This API endpoint retrieves the list of active versions.", + "operationId": "contributors#getActiveVersions", + "parameters": [ + { + "name": "page_size", + "in": "query", + "description": "The number of records to return per page. Default is not specified.", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "page", + "in": "query", + "description": "The page number to retrieve. Default is 0 (the first page).", + "required": false, + "schema": { + "type": "integer" + } + } + ], + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/org/users/versions?page_size=999' \\\n -H 'accept: application/json, text/plain, */*' \\\n -H 'Authorization: APIKEY '\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "records": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "version": { + "type": "string" + } + } + } + }, + "count": { + "type": "integer" + }, + "_metadata": { + "type": "object", + "properties": { + "page_size": { + "type": "integer" + }, + "page": { + "type": "integer" + }, + "has_next": { + "type": "boolean" + }, + "total_count": { + "type": "integer" + } + } + } + } + }, + "example": { + "records": [ + "/* Array of 521 items */" + ], + "count": 521, + "_metadata": { + "page_size": 999, + "page": 0, + "has_next": false, + "total_count": 521 + } + } + } + } + } + } + } + }, + "/v1/org/users/schema": { + "get": { + "tags": [ + "Contributors" + ], + "summary": "Retrieve the Ccontributor data schema", + "description": "This API endpoint retrieves the schema used by the contributors, including any custom fields.", + "operationId": "contributors#getSchema", + "parameters": [], + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/org/users/schema' \\\n -H 'accept: application/json, text/plain, */*' \\\n -H 'Authorization: APIKEY ' \\\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "version": { + "type": "integer" + }, + "created_at": { + "type": "integer" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer" + }, + "key": { + "type": "string" + }, + "display_name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "type": { + "type": "string" + }, + "system_field": { + "type": "boolean" + } + } + } + } + } + }, + "example": { + "version": 190, + "created_at": 1710153327501, + "fields": [ + { + "index": 3, + "key": "integration", + "display_name": "Integration", + "description": "Add a column for every integration", + "type": "string", + "system_field": false + }, + { + "index": 1, + "key": "full_name", + "display_name": "Name", + "description": "Name", + "type": "string", + "system_field": false + }, + { + "index": 2, + "key": "region", + "display_name": "Region", + "description": "Region", + "type": "string", + "system_field": false + }, + { + "index": 2, + "key": "email", + "display_name": "Email", + "description": "Unique email address per member", + "type": "string", + "system_field": false + } + ] + } + } + } + } + } + } + }, + "/v1/org/users/list": { + "post": { + "tags": [ + "Contributors" + ], + "summary": "Retrieve the list of current active licensed contributors", + "description": "This API endpoint retrieves the list of current active licensed contributors.", + "operationId": "users#listActiveUsers", + "parameters": [ + { + "in": "query", + "name": "version", + "schema": { + "type": "integer" + }, + "required": false, + "description": "The version of the schema to use for the list of contributors." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "page": { + "type": "integer", + "description": "The page number to retrieve.", + "default": 0 + }, + "page_size": { + "type": "integer", + "description": "The number of records to return per page.", + "default": 50 + }, + "filter": { + "type": "object", + "description": "Filter criteria for the list of contributors.", + "properties": {} + } + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/org/users/list?page=0&page_size=50' \\\n -X POST \\\n -H 'accept: application/json, text/plain, */*' \\\n -H 'Authorization: APIKEY ' \\\n -H 'Content-type: application/json' \\\n -d '{\n \"page\": 0,\n \"page_size\": 50,\n \"filter\": {}\n }'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "records": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "org_uuid": { + "type": "string" + }, + "full_name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "integration_user_ids": { + "type": "array", + "items": { + "type": "object", + "properties": { + "integration_id": { + "type": "string" + }, + "user_id": { + "type": "string" + } + } + } + }, + "additional_fields": { + "type": "object" + }, + "version": { + "type": "string" + }, + "created_at": { + "type": "integer" + }, + "updated_at": { + "type": "integer" + } + } + } + }, + "_metadata": { + "type": "object", + "properties": { + "total_count": { + "type": "integer" + }, + "has_next": { + "type": "boolean" + }, + "page_size": { + "type": "integer" + }, + "next_page": { + "type": "integer" + }, + "page": { + "type": "integer" + }, + "non_users_count": { + "type": "integer" + } + } + } + } + }, + "example": { + "records": [ + { + "id": "3", + "org_uuid": "6a113eba-3e65-4344-ab24-a935c602eb7f", + "full_name": "Ashish Duthade", + "email": "ashish@harness.io", + "integration_user_ids": [], + "additional_fields": { + "region": "test" + }, + "version": "512", + "created_at": 1710164128545, + "updated_at": 1714968896813 + }, + { + "id": "0", + "full_name": "External User766797748", + "email": "", + "integration_user_ids": [ + { + "integration_id": "5322", + "user_id": "712020:c41c2f65-682b-4c77-91df-6cd9de138c63" + } + ], + "additional_fields": {}, + "version": "0", + "created_at": 1715126614000, + "updated_at": 1715661535000 + } + ], + "_metadata": { + "total_count": 80715, + "has_next": true, + "page_size": 50, + "next_page": 1, + "page": 0, + "non_users_count": 80710 + } + } + } + } + } + } + } + }, + "/v1/org/users": { + "put": { + "tags": [ + "Contributors" + ], + "summary": "Update existing contributors", + "description": "This API endpoint is used to update existing contributors (users) in the system.", + "operationId": "contributors#updateContributors", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier of the contributor." + }, + "org_uuid": { + "type": "string", + "description": "The UUID of the Collection the contributor belongs to." + }, + "full_name": { + "type": "string", + "description": "The updated full name of the contributor." + }, + "email": { + "type": "string", + "description": "The updated email address of the contributor." + }, + "integration_user_ids": { + "type": "array", + "items": { + "type": "object" + }, + "description": "An array of objects representing the integration user IDs associated with the contributor." + }, + "additional_fields": { + "type": "object", + "description": "An object containing additional fields for the contributor (based on the schema)." + }, + "version": { + "type": "string", + "description": "The version of the contributor record." + }, + "created_at": { + "type": "integer", + "description": "The timestamp when the contributor record was created (in milliseconds)." + }, + "updated_at": { + "type": "integer", + "description": "The timestamp when the contributor record was last updated (in milliseconds)." + }, + "dynamic_column_aggs_region": { + "type": "string", + "description": "A dynamic field for region aggregation." + } + } + }, + "example": [ + { + "id": "3", + "org_uuid": "6a113eba-3e65-4344-ab24-a935c602eb7f", + "full_name": "Ashish Duthade", + "email": "ashish@harness.io", + "integration_user_ids": [], + "additional_fields": { + "region": "test 123" + }, + "version": "512", + "created_at": 1710164128545, + "updated_at": 1714968896813, + "dynamic_column_aggs_region": "test 123" + } + ] + } + } + } + }, + "responses": { + "200": { + "description": "Update successful.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "Success message indicating the update was successful." + } + } + }, + "example": { + "message": "Contributor with ID 3 updated successfully." + } + } + } + }, + "400": { + "description": "Bad request. Indicates an issue with the request payload.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string", + "description": "Error message indicating the reason for the bad request." + } + } + }, + "example": { + "error": "Invalid JSON format in request body." + } + } + } + }, + "404": { + "description": "Not found. Indicates the contributor with the specified ID was not found.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "error": { + "type": "string", + "description": "Error message indicating the contributor was not found." + } + } + }, + "example": { + "error": "Contributor with ID 3 not found." + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/org/users' \\\n -X 'PUT' \\\n -H 'accept: application/json, text/plain, */*' \\\n -H 'Authorization: APIKEY ' \\\n -H 'Content-type: application/json' \\\n --data-raw '[\n {\n \"id\": \"3\",\n \"org_uuid\": \"6a113eba-3e65-4344-ab24-a935c602eb7f\",\n \"full_name\": \"Ashish Duthade\",\n \"email\": \"ashish@harness.io\",\n \"integration_user_ids\": [],\n \"additional_fields\": {\n \"region\": \"test 123\"\n },\n \"version\": \"512\",\n \"created_at\": 1710164128545,\n \"updated_at\": 1714968896813,\n \"dynamic_column_aggs_region\": \"test 123\"\n }\n ]'\n" + } + ] + } + }, + "/v1/sei_contributor/list": { + "post": { + "tags": [ + "Contributors" + ], + "summary": "Retrieve SEI contributors list", + "description": "This API endpoint retrieves the list of licensed users for the given organization.", + "operationId": "seiContributors#listContributors", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl --location 'https://app.harness.io/gratis/sei/api/v1/sei_contributor/list' \\\n -H 'Content-type: application/json' \\\n -H 'Authorization: APIKEY ' \\\n --data '{}'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "org_user_count": { + "type": "integer" + }, + "integration_user_count": { + "type": "integer" + }, + "org_user_details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "org_user_id": { + "type": "string" + }, + "org_user_ref_id": { + "type": "string" + }, + "full_name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "integration_user_details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "integration_id": { + "type": "integer" + }, + "integration_type": { + "type": "string" + }, + "integration_user_id": { + "type": "string" + }, + "cloud_id": { + "type": "string" + } + } + } + } + } + } + } + } + }, + "example": { + "org_user_count": 27, + "integration_user_count": 86, + "org_user_details": [ + { + "org_user_id": "8789d43f-a278-4250-8ec3-6e117400f3cc", + "org_user_ref_id": "550", + "full_name": "Meetrajsinh Solanki", + "email": "meetrajsinh.solanki@harness.io", + "integration_user_details": [ + { + "integration_id": 2, + "integration_type": "github", + "integration_user_id": "27f430e1-b2d9-4dc8-9b7f-d2b76206dc6e", + "cloud_id": "meetrajsinh-crest" + }, + { + "integration_id": 12, + "integration_type": "github", + "integration_user_id": "119f6299-f4bb-4206-8228-e4178d9addfc", + "cloud_id": "meetrajsinh-crest" + }, + { + "integration_id": 49, + "integration_type": "github", + "integration_user_id": "3b9cebed-f8a4-4d57-8811-ccd7718fa139", + "cloud_id": "meetrajsinh-crest" + } + ] + }, + { + "org_user_id": "2e4299b6-3106-454a-9115-5c58c34c24db", + "org_user_ref_id": "551", + "full_name": "Esha Shah Crest", + "email": "esha.shah@harness.io", + "integration_user_details": [ + { + "integration_id": 2, + "integration_type": "github", + "integration_user_id": "cf44ed58-f742-4164-8905-9de782017002", + "cloud_id": "eshah-crest" + }, + { + "integration_id": 49, + "integration_type": "github", + "integration_user_id": "14fc9b9d-3218-4441-bb8a-12403d8db443", + "cloud_id": "eshah-crest" + }, + { + "integration_id": 12, + "integration_type": "github", + "integration_user_id": "3210b749-35f5-445a-a12d-fced73139ba0", + "cloud_id": "eshah-crest" + } + ] + } + ] + } + } + } + } + } + } + }, + "/v1/dora/lead-time": { + "post": { + "tags": [ + "DORA" + ], + "summary": "Retrieve lead time data", + "description": "This endpoint is paginated and retrieves lead time data.", + "operationId": "dora#getLeadTime", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "filter": { + "type": "object", + "properties": { + "ratings": { + "type": "array", + "items": { + "type": "string" + } + }, + "calculation": { + "type": "string" + }, + "work_items_type": { + "type": "string" + }, + "jira_issue_types": { + "type": "array", + "items": { + "type": "string" + } + }, + "limit_to_only_applicable_data": { + "type": "boolean" + }, + "integration_ids": { + "type": "array", + "items": { + "type": "string" + } + }, + "jira_issue_resolved_at": { + "type": "object", + "properties": { + "$gt": { + "type": "string" + }, + "$lt": { + "type": "string" + } + } + } + } + }, + "ou_ids": { + "type": "array", + "items": { + "type": "string" + } + }, + "across": { + "type": "string" + } + } + }, + "example": { + "filter": { + "ratings": [ + "good", + "slow", + "needs_attention" + ], + "calculation": "ticket_velocity", + "work_items_type": "jira", + "jira_issue_types": [ + "" + ], + "limit_to_only_applicable_data": true, + "integration_ids": [ + "" + ], + "jira_issue_resolved_at": { + "$gt": "", + "$lt": "" + } + }, + "ou_ids": [ + "518" + ], + "across": "velocity" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/dora/lead-time' \\\n -H 'Content-type: application/json' \\\n -H 'Authorization: APIKEY ' \\\n --data-raw '{\n \"filter\": {\n \"work_items_type\": \"jira\",\n \"integration_ids\": [\"\"],\n \"jira_issue_resolved_at\": {\n \"$gt\": \"\",\n \"$lt\": \"\"\n }\n },\n \"ou_ids\": [\"518\"],\n \"across\": \"velocity\"\n }'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "records": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "lead_time": { + "type": "number" + }, + "work_item": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "resolved_at": { + "type": "string" + } + } + } + } + } + }, + "count": { + "type": "integer" + }, + "_metadata": { + "type": "object", + "properties": { + "page_size": { + "type": "integer" + }, + "page": { + "type": "integer" + }, + "has_next": { + "type": "boolean" + }, + "total_count": { + "type": "integer" + } + } + } + } + }, + "example": { + "records": [ + { + "id": "1", + "lead_time": 120, + "work_item": { + "type": "Jira", + "resolved_at": "2024-07-01T12:34:56Z" + } + } + ], + "count": 1, + "_metadata": { + "page_size": 100, + "page": 0, + "has_next": false, + "total_count": 1 + } + } + } + } + } + } + } + }, + "/v1/dora/deployment_frequency": { + "post": { + "tags": [ + "DORA" + ], + "summary": "Retrieve deployment frequency data", + "description": "This endpoint is paginated and retrieves deployment frequency data.", + "operationId": "dora#getDeploymentFrequency", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "filter": { + "type": "object", + "properties": { + "time_range": { + "type": "object", + "properties": { + "$gt": { + "type": "integer", + "description": "Start time in epoch format" + }, + "$lt": { + "type": "integer", + "description": "End time in epoch format" + } + } + } + } + }, + "ou_ids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "example": { + "filter": { + "time_range": { + "$gt": 1708387200, + "$lt": 1710892800 + } + }, + "ou_ids": [ + "518" + ] + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/dora/deployment_frequency' \\\n -H 'Content-type: application/json' \\\n -H 'Authorization: APIKEY ' \\\n --data-raw '{\n \"filter\": {\n \"time_range\": {\n \"$gt\": 1708387200,\n \"$lt\": 1710892800\n }\n },\n \"ou_ids\": [\"518\"]\n }'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "time_series": { + "type": "object", + "properties": { + "day": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "integer" + }, + "count": { + "type": "integer" + }, + "additional_key": { + "type": "string" + } + } + } + }, + "week": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "integer" + }, + "count": { + "type": "integer" + }, + "additional_key": { + "type": "string" + } + } + } + }, + "month": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "integer" + }, + "count": { + "type": "integer" + }, + "additional_key": { + "type": "string" + } + } + } + } + } + }, + "stats": { + "type": "object", + "properties": { + "count_per_day": { + "type": "number" + }, + "count_per_week": { + "type": "number" + }, + "count_per_month": { + "type": "number" + }, + "band": { + "type": "string" + }, + "total_deployment": { + "type": "integer" + } + } + } + } + }, + "example": { + "time_series": { + "day": [ + { + "key": 1708387200, + "count": 0, + "additional_key": "20-02-2024" + }, + { + "key": 1708473600, + "count": 1, + "additional_key": "21-02-2024" + } + ], + "week": [ + { + "key": 1708300800, + "count": 2, + "additional_key": "19-02-2024" + } + ], + "month": [ + { + "key": 1706745600, + "count": 10, + "additional_key": "01-02-2024" + }, + { + "key": 1709251200, + "count": 18, + "additional_key": "01-03-2024" + } + ] + }, + "stats": { + "count_per_day": 0.9333333333333333, + "count_per_week": 6.533333333333333, + "count_per_month": 28, + "band": "HIGH", + "total_deployment": 28 + } + } + } + } + } + } + } + }, + "/v1/dora/change_failure_rate": { + "post": { + "tags": [ + "DORA" + ], + "summary": "Retrieve change failure rate data", + "description": "This endpoint is paginated and retrieves change failure rate data.", + "operationId": "dora#getChangeFailureRate", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "filter": { + "type": "object", + "properties": { + "time_range": { + "type": "object", + "properties": { + "$gt": { + "type": "integer", + "description": "Start time in epoch format" + }, + "$lt": { + "type": "integer", + "description": "End time in epoch format" + } + } + } + } + }, + "ou_ids": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "example": { + "filter": { + "time_range": { + "$gt": 1708387200, + "$lt": 1710892800 + } + }, + "ou_ids": [ + "518" + ] + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/dora/change_failure_rate' \\\n -H 'Content-type: application/json' \\\n -H 'Authorization: APIKEY ' \\\n --data-raw '{\n \"filter\": {\n \"time_range\": {\n \"$gt\": 1708387200,\n \"$lt\": 1710892800\n }\n },\n \"ou_ids\": [\"518\"]\n }'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "time_series": { + "type": "object", + "properties": { + "day": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "integer" + }, + "count": { + "type": "integer" + }, + "additional_key": { + "type": "string" + } + } + } + }, + "week": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "integer" + }, + "count": { + "type": "integer" + }, + "additional_key": { + "type": "string" + } + } + } + }, + "month": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "integer" + }, + "count": { + "type": "integer" + }, + "additional_key": { + "type": "string" + } + } + } + } + } + }, + "stats": { + "type": "object", + "properties": { + "failure_rate": { + "type": "number" + }, + "band": { + "type": "string" + }, + "total_deployment": { + "type": "integer" + }, + "is_absolute": { + "type": "boolean" + } + } + } + } + }, + "example": { + "time_series": { + "day": [ + { + "key": 1708387200, + "count": 2, + "additional_key": "20-02-2024" + }, + { + "key": 1708473600, + "count": 2, + "additional_key": "21-02-2024" + } + ], + "week": [ + { + "key": 1708300800, + "count": 9, + "additional_key": "19-02-2024" + } + ], + "month": [ + { + "key": 1706745600, + "count": 18, + "additional_key": "01-02-2024" + }, + { + "key": 1709251200, + "count": 33, + "additional_key": "01-03-2024" + } + ] + }, + "stats": { + "failure_rate": 51, + "band": "LOW", + "total_deployment": 100, + "is_absolute": false + } + } + } + } + } + } + } + }, + "/v1/dora/mean-time": { + "post": { + "tags": [ + "DORA" + ], + "summary": "Retrieve Mean Time to Restore (MTTR) data", + "description": "This endpoint retrieves Mean Time to Restore (MTTR) data for DORA metrics.", + "operationId": "dora#getMeanTimeToRestore", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "filter": { + "type": "object", + "properties": { + "ratings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of rating categories" + }, + "calculation": { + "type": "string", + "description": "Type of calculation to perform" + }, + "work_items_type": { + "type": "string", + "description": "Type of work items to consider" + }, + "limit_to_only_applicable_data": { + "type": "boolean", + "description": "Whether to limit the data to only applicable items" + }, + "integration_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of integration IDs" + } + } + }, + "ou_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of organizational unit IDs" + }, + "across": { + "type": "string", + "description": "Dimension to calculate across" + }, + "widget_id": { + "type": "string", + "description": "Unique identifier for the widget" + } + } + }, + "example": { + "filter": { + "ratings": [ + "good", + "slow", + "needs_attention" + ], + "calculation": "ticket_velocity", + "work_items_type": "jira", + "limit_to_only_applicable_data": true, + "integration_ids": [ + "" + ] + }, + "ou_ids": [ + "" + ], + "across": "velocity", + "widget_id": "" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "cURL", + "label": "curl", + "source": "curl 'https://app.harness.io/gratis/sei/api/v1/dora/mean-time' \\\n -H 'Content-type: application/json' \\\n -H 'Authorization: APIKEY ' \\\n --data-raw '{\n \"filter\": {\n \"ratings\": [\"good\", \"slow\", \"needs_attention\"],\n \"calculation\": \"ticket_velocity\",\n \"work_items_type\": \"jira\",\n \"limit_to_only_applicable_data\": true,\n \"integration_ids\": [\"\"]\n },\n \"ou_ids\": [\"ADD_OU_ID\"],\n \"across\": \"velocity\",\n \"widget_id\": \"\"\n }'\n" + } + ], + "responses": { + "200": { + "description": "OK response.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "mean_time": { + "type": "number", + "description": "The calculated mean time to restore" + }, + "unit": { + "type": "string", + "description": "The unit of measurement for the mean time" + }, + "band": { + "type": "string", + "description": "Performance band classification" + }, + "total_incidents": { + "type": "integer", + "description": "Total number of incidents considered" + } + } + }, + "example": { + "mean_time": 4.5, + "unit": "hours", + "band": "MEDIUM", + "total_incidents": 20 + } + } + } + } + } + } + }, + "/v1/org/{org}/project/{project}/sbom/process": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "process raw SBOM into harness usable normalized form", + "operationId": "process-sbom", + "responses": { + "200": { + "$ref": "#/components/responses/SbomProcessResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + }, + "500": { + "description": "Internal Server Error" + }, + "502": { + "description": "Bad Gateway" + } + }, + "description": "process & inject sbom", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/SbomProcessRequestBody" + }, + "tags": [ + "sbomProcessor" + ], + "security": [ + { + "x-api-key": [] + } + ], + "x-stoplight": { + "id": "3pupuceuxwkth" + } + } + }, + "/v1/org/{org}/project/{project}/sbom/enforcement": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "enforce normalized SBOM based on policies applied", + "operationId": "enforce-sbom", + "responses": { + "200": { + "$ref": "#/components/responses/EnforceSbomResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + }, + "500": { + "description": "Internal Server Error" + }, + "502": { + "description": "Bad Gateway" + } + }, + "description": "enforce an sbom", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnforceSbomRequestBody" + }, + "tags": [ + "sbomProcessor" + ], + "security": [ + { + "x-api-key": [] + } + ], + "x-stoplight": { + "id": "imkfnf4aogvic" + } + } + }, + "/v2/orgs/{org}/projects/{project}/sbom/enforcement": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "enforce normalized SBOM based on policies applied", + "operationId": "enforceSbomV2", + "responses": { + "200": { + "$ref": "#/components/responses/EnforceSbomResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "description": "Forbidden" + }, + "404": { + "description": "Not Found" + }, + "500": { + "description": "Internal Server Error" + }, + "502": { + "description": "Bad Gateway" + } + }, + "description": "enforce an sbom", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/EnforceSbomRequestBodyV2" + }, + "tags": [ + "enforcementV2" + ], + "security": [ + { + "x-api-key": [] + } + ], + "x-stoplight": { + "id": "imkfnf4aogvic" + } + } + }, + "/v1/org/{org}/project/{project}/orchestration/{orchestration-id}/sbom-download": { + "get": { + "summary": "Download SBOM for an artifact", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactSbomResponseBody" + } + }, + "operationId": "downloadSbom", + "x-stoplight": { + "id": "q6aepcsx5fl46" + }, + "description": "Download SBOM for an artifact", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "OrchestrationV2" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "orchestration-id", + "in": "path", + "required": true, + "description": "Orchestration Identifier" + } + ] + }, + "/gateway/ssca-manager/v1/orgs/{org}/projects/{project}/sbom-download": { + "post": { + "summary": "Download SBOM for an artifact", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactSbomResponseBody" + } + }, + "operationId": "downloadSbomForArtifact", + "x-stoplight": { + "id": "q6aepcsx5fl46" + }, + "description": "Download SBOM for an artifact", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-internal": false, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "SBOM" + ], + "requestBody": { + "$ref": "#/components/requestBodies/DownloadSbomRequestBody" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ] + }, + "/v1/org/{org}/project/{project}/orchestration/{orchestration-id}/summary": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "orchestration-id", + "in": "path", + "required": true + } + ] + }, + "/v1/org/{org}/project/{project}/enforcement/{enforcement-id}/summary": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "enforcement-id", + "in": "path", + "required": true + } + ], + "get": { + "summary": "Get Enforcement Summary", + "responses": { + "200": { + "$ref": "#/components/responses/EnforcementSummaryResponseBody" + } + }, + "operationId": "getEnforcementSummary", + "x-stoplight": { + "id": "cfoup8kobxvaj" + }, + "description": "Get Enforcement Summary", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "enforcement" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/org/{org}/project/{project}/enforcement/{enforcement-id}/policy-violations": { + "get": { + "summary": "List Policy Violations", + "tags": [ + "enforcement" + ], + "responses": { + "200": { + "$ref": "#/components/responses/PolicyViolationResponse" + } + }, + "operationId": "getPolicyViolations", + "x-stoplight": { + "id": "4e6p8z1cqvf4q" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "name": "sort", + "description": "Parameter on the basis of which sorting is done.", + "schema": { + "enum": [ + "name", + "identifier", + "created", + "updated", + "license", + "supplier" + ] + } + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "search_text", + "description": "Text on the basis of which results will be filtered" + }, + { + "$ref": "#/components/parameters/ImageLayer" + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "enforcement-id", + "in": "path", + "required": true, + "description": "Enforcement Identifier" + } + ] + }, + "/gateway/ssca-manager/v1/ssca-config/integration-step": { + "post": { + "summary": "Integration step config for Account", + "tags": [ + "Integration Step Config" + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "setIntegrationStepConfig", + "x-stoplight": { + "id": "5ok2bot1k5103" + }, + "requestBody": { + "$ref": "#/components/requestBodies/IntegrationStepConfigRequestBody" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/gateway/ssca-manager/v1/orgs/{org}/projects/{project}/ssca-config/integration-step": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Integration step config for Project", + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "setIntegrationStepConfigForOrgProject", + "x-stoplight": { + "id": "sk7twojq46lhv" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/IntegrationStepConfigRequestBody" + }, + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "Integration Step Config" + ] + } + }, + "/gateway/ssca-manager/v1/orgs/{org}/ssca-config/integration-step": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + } + ], + "post": { + "summary": "Integration step config for Org", + "tags": [ + "Integration Step Config" + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "setIntegrationStepConfigForOrg", + "x-stoplight": { + "id": "zwpins41b1yt4" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/IntegrationStepConfigRequestBody" + }, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "gateway/ssca-manager/v1/orgs/{org}/projects/{project}/ssca-config/pipeline-store": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Save SPM Pipeline Remote Configs", + "operationId": "savePipelineRemoteConfig", + "tags": [ + "Pipeline Store Config" + ], + "responses": { + "200": { + "description": "Shared Response" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error2" + } + } + }, + "description": "Internal Server Error" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-internal": false, + "requestBody": { + "$ref": "#/components/requestBodies/PipelineStoreConfigRequestBody" + } + } + }, + "/gateway/ssca-manager/v1/org/{org}/ssca-config/{config-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "config-id", + "in": "path", + "required": true, + "description": "Config ID" + } + ], + "get": { + "summary": "fetch scs config at org", + "tags": [ + "Config" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ConfigResponseBody" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getConfigForOrg", + "x-stoplight": { + "id": "sf7osk57rtjbv" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + }, + "delete": { + "summary": "Delete step config at Org", + "tags": [ + "Delete Step Config" + ], + "responses": { + "200": { + "description": "OK" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "deleteConfigByOrg", + "x-stoplight": { + "id": "1fvzzgzubm7jk" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/gatway/ssca-manager/v1/ssca-config/{config-id}": { + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "config-id", + "in": "path", + "required": true, + "description": "Config ID" + } + ], + "get": { + "summary": "GET scs config for account", + "tags": [ + "Config" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ConfigResponseBody" + } + }, + "operationId": "getConfigForAccount", + "x-stoplight": { + "id": "24rnitr9md089" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "delete": { + "summary": "Delete step config at Account", + "tags": [ + "Delete Step Config" + ], + "responses": { + "200": { + "description": "OK" + } + }, + "operationId": "deleteConfigByAccount", + "x-stoplight": { + "id": "230c0v7un6ufl" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/org/{org}/project/{project}/normalised-sbom-component": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Get Normalised Sbom Components", + "operationId": "getNormalisedSbomComponent", + "responses": { + "200": { + "$ref": "#/components/responses/NormaliseSbomResponseBody" + } + }, + "description": "Get a paginated list for normalised sbom components for a given orchestration.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/NormalisedSbomComponentRequestBody" + }, + "tags": [ + "enforcement" + ], + "x-stoplight": { + "id": "cdrphvqdy9dld" + } + } + }, + "/v1/org/{org}/project/{project}/enforcement-result": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Save Enforcement Result", + "operationId": "saveEnforcementResult", + "responses": { + "201": { + "description": "Created" + } + }, + "description": "Creates a new Enforcement Result.", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnforcementResultDTO" + } + } + }, + "description": "Enforcement Result DTO" + }, + "tags": [ + "enforcement" + ], + "x-stoplight": { + "id": "8kgg2sedlujpu" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/org/{org}/project/{project}/enforcement-summary": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Save Enforcement Summary", + "operationId": "saveEnforcementSummary", + "responses": { + "201": { + "description": "Created" + } + }, + "description": "Creates a new Enforcement Summary.", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnforcementSummaryDTO" + } + } + }, + "description": "Enforcement Result DTO" + }, + "tags": [ + "enforcement" + ], + "x-stoplight": { + "id": "bwu6h3f34xyvh" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/org/{org}/project/{project}/artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "List All Artifacts", + "operationId": "listArtifacts", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactListingResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "tags": [ + "artifact" + ], + "description": "List all artifacts", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "name", + "updated" + ], + "default": "name" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ArtifactListingRequestBody" + }, + "x-stoplight": { + "id": "sfjqaglg433tw" + } + } + }, + "/v1/orgs/{org}/projects/{project}/artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "List All Artifacts", + "operationId": "artifactList", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactListingResponseBodyV2" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "tags": [ + "artifactV2" + ], + "description": "List artifacts", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "name", + "updated" + ], + "default": "name" + } + }, + { + "schema": { + "type": "string", + "enum": [ + "image", + "repository" + ] + }, + "in": "query", + "name": "type", + "description": "Type of artifacts to be listed", + "required": true + }, + { + "schema": { + "type": "string", + "enum": [ + "all", + "latest" + ], + "default": "all" + }, + "in": "query", + "name": "view_mode", + "description": "Mode in which artifacts should be listed" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ArtifactListingRequestBody" + }, + "x-stoplight": { + "id": "vei5bhkpoktdd" + } + } + }, + "/v1/org/{org}/project/{project}/grouped-artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "List All Artifacts", + "operationId": "listLatestArtifacts", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactListingResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "tags": [ + "artifact" + ], + "description": "List latest version of all artifacts", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "name", + "updated" + ], + "default": "name" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "x-stoplight": { + "id": "uhn8ew9xe1j4g" + } + } + }, + "/v1/org/{org}/project/{project}/artifact/{artifact}/tag/{tag}/components": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + }, + { + "$ref": "#/components/parameters/Tag" + } + ], + "post": { + "summary": "Artifact Detail Component View", + "operationId": "getArtifactDetailComponentView", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactComponentViewResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "tags": [ + "artifact" + ], + "description": "Get artifact detail component view", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "package_name", + "package_supplier" + ], + "default": "package_name" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactComponentViewRequestBody" + } + } + } + }, + "x-stoplight": { + "id": "iee2ipp3sstch" + } + } + }, + "/v1/org/{org}/project/{project}/artifact/{artifact}/tag/{tag}/deployments": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + }, + { + "$ref": "#/components/parameters/Tag" + } + ], + "post": { + "summary": "Artifact Detail Deployment View", + "operationId": "getArtifactDetailDeploymentView", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactDeploymentViewResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + }, + "default": { + "$ref": "#/components/responses/ArtifactDeploymentViewResponseBody" + } + }, + "tags": [ + "artifact" + ], + "description": "Get artifact detail deployment view", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "env_name", + "env_type" + ], + "default": "env_name" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactDeploymentViewRequestBody" + } + } + }, + "description": "" + }, + "x-stoplight": { + "id": "8ivdhaqr6wnc0" + } + } + }, + "/v1/org/{org}/project/{project}/artifact/{artifact}/tag/{tag}/details": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + }, + { + "$ref": "#/components/parameters/Tag" + } + ], + "get": { + "summary": "Artifact Details", + "operationId": "getArtifactDetails", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactDetailResponseBody" + }, + "201": { + "description": "Created" + }, + "400": { + "description": "Bad Request" + } + }, + "description": "Get artifact details", + "security": [ + { + "x-api-key": [] + } + ], + "tags": [ + "artifact" + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-stoplight": { + "id": "sq6emrti1dnvu" + } + } + }, + "/v1/org/{org}/project/{project}/orchestration/{orchestration-id}/sbom-scorecard": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "orchestration-id", + "in": "path", + "required": true, + "description": "Orchestration ID" + } + ], + "post": { + "summary": "Save Scorecard", + "operationId": "saveSbomScorecard", + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "x9zs9hnpf2qui" + }, + "description": "Save SBOM Scorecard", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SbomScorecardRequestBody" + } + } + }, + "description": "" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "tags": [ + "Scorecard" + ] + }, + "get": { + "summary": "Get Scorecard", + "operationId": "getSbomScorecard", + "responses": { + "200": { + "$ref": "#/components/responses/SbomScorecardResponseBody" + }, + "400": { + "description": "Bad Request" + } + }, + "x-stoplight": { + "id": "cogck106pn3l9" + }, + "description": "Get SBOM Scorecard", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "tags": [ + "Scorecard" + ] + } + }, + "/gateway/ssca-manager/v1/org/{org}/project/{project}/ssca-config/{config-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "config-id", + "in": "path", + "required": true, + "description": "Config ID" + } + ], + "get": { + "summary": "Get Config By ID", + "responses": { + "200": { + "$ref": "#/components/responses/ConfigResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "404": { + "description": "Not Found" + } + }, + "operationId": "getConfigById", + "x-stoplight": { + "id": "91ruzzd1vqr6e" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "description": "Get Config By ID", + "tags": [ + "ConfigForProject" + ] + }, + "put": { + "summary": "Update Config By ID", + "operationId": "updateConfigById", + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "12tag1uia7n1b" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConfigRequestBody" + }, + "description": "Update Config By ID", + "tags": [ + "ConfigForProject" + ] + }, + "delete": { + "summary": "Delete step config by Project", + "operationId": "deleteConfigById", + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "description": "Bad Request" + } + }, + "x-stoplight": { + "id": "m3pcr58988151" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "description": "Delete Config By ID", + "tags": [ + "Delete Step Config" + ] + } + }, + "/v1/org/{org}/project/{project}/ssca-config": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "get": { + "summary": "List Configs", + "tags": [ + "Config" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListConfigsResponseBody" + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "listConfigs", + "x-stoplight": { + "id": "ljdrkcdfh8qub" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "schema": { + "enum": [ + "creation_on", + "config_id", + "name", + "type" + ], + "default": "name" + }, + "in": "query", + "name": "sort", + "description": "Parameter on the basis of which sorting is done." + } + ], + "description": "List Configs" + }, + "post": { + "summary": "Save Config By ID", + "operationId": "saveConfig", + "responses": { + "201": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "3s3zrcucnfbjp" + }, + "description": "Save Config By ID", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConfigRequestBody" + }, + "tags": [ + "Config" + ] + } + }, + "/v1/org/{org}/project/{project}/ssca-config/{name}/type/{type}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "name", + "in": "path", + "required": true, + "description": "Config Name" + }, + { + "schema": { + "type": "string" + }, + "name": "type", + "in": "path", + "required": true, + "description": "Config Id" + } + ], + "get": { + "summary": "Get Config By Name And Type", + "tags": [ + "Config" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ConfigResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "404": { + "description": "Not Found" + } + }, + "operationId": "getConfigByNameAndType", + "x-stoplight": { + "id": "dns7c0itdxs24" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "description": "Get Config By Name And Type" + } + }, + "/v1/orgs/{org}/projects/{project}/artifact/{artifact}/baseline": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "get": { + "summary": "Get Baseline For Artifact", + "tags": [ + "Baseline" + ], + "responses": { + "200": { + "$ref": "#/components/responses/BaselineResponseBody" + } + }, + "operationId": "getBaselineForArtifact", + "x-stoplight": { + "id": "4ghyhtaj1qcz8" + }, + "description": "Get the baseline for an artifact", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + }, + "post": { + "summary": "Set Baseline For Artifact", + "operationId": "setBaselineForArtifact", + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "ro0mhka3ykakb" + }, + "description": "Save the baseline for an artifact", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/BaselineRequestBody" + }, + "tags": [ + "Baseline" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifact/{artifact}/sbom-drift": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "artifact", + "in": "path", + "required": true, + "description": "Artifact ID" + } + ], + "post": { + "summary": "Calculate Drift For Artifact", + "operationId": "calculateDriftForArtifact", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactSbomDriftResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "3dsr9opyxu1dg" + }, + "description": "This API calculates and stores drift between 2 versions of an artifact with TTL of 1 hour.", + "tags": [ + "sbomDrift" + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactSbomDriftRequestBody" + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/sbom-drift/{drift}/components": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "drift", + "in": "path", + "required": true, + "description": "SBOM Drift ID" + } + ], + "get": { + "summary": "Get Component Drift", + "tags": [ + "sbomDrift" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ComponentDriftResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getComponentDrift", + "x-stoplight": { + "id": "yrpb128gv7y08" + }, + "description": "Get component drift for provided drift ID.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string", + "enum": [ + "all", + "added", + "modified", + "deleted" + ] + }, + "in": "query", + "name": "status", + "description": "Provide status of components drift to be returned" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "search_term", + "description": "Search for components by name." + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/sbom-drift/{drift}/licenses": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "drift", + "in": "path", + "required": true, + "description": "SBOM Drift ID" + } + ], + "get": { + "summary": "Get License Drift", + "tags": [ + "sbomDrift" + ], + "responses": { + "200": { + "$ref": "#/components/responses/LicenseDriftResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getLicenseDrift", + "x-stoplight": { + "id": "46l29mrkygarx" + }, + "description": "Get license drift for provided drift ID.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string", + "enum": [ + "all", + "added", + "deleted" + ] + }, + "in": "query", + "name": "status", + "description": "Provide status of components drift to be returned" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "search_term", + "description": "Search for licenses by name." + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/remediations": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Create Remediation Tracker", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RemediationTrackerCreateResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "createRemediationTracker", + "x-stoplight": { + "id": "8cdxntj5aqlu3" + }, + "description": "Create Remediation Tracker.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RemediationTrackerCreateRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "List All Remediation Trackers", + "operationId": "listRemediations", + "responses": { + "200": { + "$ref": "#/components/responses/RemediationListingResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "tags": [ + "Remediation" + ], + "description": "List all Remediation Trackers.", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "component", + "status", + "targetDate", + "contactName", + "cve", + "startTimeMilli" + ], + "default": "startTimeMilli" + } + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "order", + "schema": { + "enum": [ + "DESC", + "ASC" + ], + "default": "DESC" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RemediationListingRequestBody" + }, + "x-stoplight": { + "id": "eb3hi5al80vx3" + } + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker ID" + } + ], + "put": { + "summary": "Update Remediation Tracker", + "operationId": "updateRemediationTracker", + "responses": { + "200": { + "$ref": "#/components/responses/RemediationTrackerUpdateResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "w3z2s74z0zoeo" + }, + "tags": [ + "Remediation" + ], + "description": "Update Remediation Tracker.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RemediationTrackerUpdateRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/overall-summary": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "get": { + "summary": "Get Remediation Tracker Overall summary", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RemediationTrackersOverallSummaryResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getOverallSummary", + "x-stoplight": { + "id": "8ie7d2h2woo22" + }, + "description": "Get Overall summary of Remediation Trackers.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/orchestration/{orchestration}/sbom-drift": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "orchestration", + "in": "path", + "required": true, + "description": "Orchestration Step Execution ID" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/close": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker Id" + } + ], + "put": { + "summary": "Close Remediation Tracker", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "closeRemediationTracker", + "x-stoplight": { + "id": "oqbepatk6oy12" + }, + "description": "Close Remediation Tracker.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/exclude-artifact": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker Id" + } + ], + "put": { + "summary": "Exclude Artifact from Remediation Tracker", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "excludeArtifact", + "x-stoplight": { + "id": "lk8f6jp6okqvf" + }, + "description": "Exclude Artifact From Remediation Tracker.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ExcludeArtifactRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/details": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker Id" + } + ], + "get": { + "summary": "Get Remediation Details.", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RemediationDetailsResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getRemediationDetails", + "x-stoplight": { + "id": "qhd60cfh35chp" + }, + "description": "Get Remediation Details.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker Id" + } + ], + "post": { + "summary": "Get Artifact List for Remediations.", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RemediationArtifactListingResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getArtifactListForRemediation", + "x-stoplight": { + "id": "rii0dp21qz04b" + }, + "description": "Get Remediation Details.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RemediationArtifactListingRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/environments": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker Id" + }, + { + "schema": { + "type": "string" + }, + "name": "artifact", + "in": "path", + "required": true, + "description": "Artifact Id" + } + ], + "get": { + "summary": "Get Environment List for Artifact In Remediation.", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RemediationEnvironmentResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getEnvironmentListForRemediation", + "x-stoplight": { + "id": "477pmu269635q" + }, + "description": "Get All Environments impacted with Remediation.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/EnvType" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/details": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker Id" + }, + { + "schema": { + "type": "string" + }, + "name": "artifact", + "in": "path", + "required": true, + "description": "Artifact Id" + } + ], + "get": { + "summary": "Get Details of a Artifact in a Remediation Tracker.", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RemediationArtifactDetailResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getArtifactInRemediationDetails", + "x-stoplight": { + "id": "acya1h6k59vo7" + }, + "description": "Get Details of a Artifact in a Remediation Tracker.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/deployments": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker Id" + }, + { + "schema": { + "type": "string" + }, + "name": "artifact", + "in": "path", + "required": true, + "description": "Artifact Id" + } + ], + "post": { + "summary": "Get Deployments List for Artifact In Remediation.", + "tags": [ + "Remediation" + ], + "responses": { + "200": { + "$ref": "#/components/responses/RemediationArtifactDeploymentsListingResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getDeploymentsListForArtifactInRemediation", + "x-stoplight": { + "id": "hstty9r60f0di" + }, + "description": "Get Deployments List for Artifact In Remediation.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RemediationArtifactDeploymentsListingRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/remediations/{remediation}/create-ticket": { + "post": { + "summary": "Create Ticket", + "operationId": "createTicket", + "responses": { + "201": { + "$ref": "#/components/responses/CreateTicketResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "330euzylehvhl" + }, + "description": "Create Ticket", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateTicketRequestBody" + }, + "tags": [ + "Remediation" + ], + "security": [ + { + "x-api-key": [] + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "remediation", + "in": "path", + "required": true, + "description": "Remediation Tracker ID" + }, + { + "$ref": "#/components/parameters/OrgParam1" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/remediations/check-artifacts": { + "post": { + "summary": "Check Artifacts And Deployments", + "operationId": "checkArtifactAndDeployments", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactAndDeploymentsResponseBody" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "t98vm7wz7n0eq" + }, + "description": "Check Artifacts And Deployments.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/RemediationTrackerCreateRequestBody" + }, + "tags": [ + "Remediation" + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/exemptions": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "get": { + "summary": "List exemptions for project", + "tags": [ + "exemptions" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ExemptionListResponseDTO" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "listExemptionsForProject", + "x-stoplight": { + "id": "9rlhvfejqah63" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExemptionStatusDTO" + } + }, + "in": "query", + "name": "status", + "description": "status of the exemption, all statuses will be returned if this is null" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "artifact_id", + "description": "artifactId of the exemption, only applicable for exemptions with ARTIFACT scope" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "search_term", + "description": "Search for exemptions by name" + } + ], + "description": "List exemptions for project" + }, + "post": { + "summary": "Create exemption for project", + "tags": [ + "exemptions" + ], + "operationId": "createExemptionForProject", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "bgtzrf9osfkqt" + }, + "description": "Create exemption for project", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionRequestDTO" + } + } + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/artifacts/{artifact}/exemptions": { + "parameters": [ + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "post": { + "summary": "Create exemption for artifact", + "operationId": "createExemptionForArtifact", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "description": "Create exemption for artifact", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionRequestDTO" + } + } + } + }, + "x-stoplight": { + "id": "gnrf5uwmpc5nq" + }, + "tags": [ + "exemptions" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/exemptions/{exemption}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Exemption" + } + ], + "get": { + "summary": "Get exemption for project", + "tags": [ + "exemptions" + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getExemptionForProject", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "description": "Get exemption for project", + "x-stoplight": { + "id": "doij0dtepyqtg" + } + }, + "put": { + "summary": "Update exemption for project", + "operationId": "updateExemptionForProject", + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "10lshl289t84n" + }, + "description": "Update exemption for project", + "requestBody": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionRequestDTO" + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "tags": [ + "exemptions" + ] + }, + "delete": { + "summary": "Delete exemption for project", + "operationId": "deleteExemptionForProject", + "responses": { + "204": { + "description": "" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "5rkc3a8lvyqa5" + }, + "description": "Delete exemption for project", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "tags": [ + "exemptions" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifacts/{artifact}/exemptions/{exemption}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Exemption" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "get": { + "summary": "Get exemption for artifact", + "tags": [ + "exemptions" + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getExemptionForArtifact", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "description": "Get exemption for artifact", + "x-stoplight": { + "id": "47eka1spqllsf" + } + }, + "put": { + "summary": "Update exemption for artifact", + "operationId": "updateExemptionForArtifact", + "tags": [ + "exemptions" + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "description": "Update exemption for artifact", + "requestBody": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionRequestDTO" + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-stoplight": { + "id": "wo6x8cpwhbq3m" + } + }, + "delete": { + "summary": "Delete exemption for artifact", + "operationId": "deleteExemptionForArtifact", + "tags": [ + "exemptions" + ], + "responses": { + "204": { + "description": "" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "description": "Delete exemption for artifact", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-stoplight": { + "id": "m4w47h5007z2e" + } + } + }, + "/v1/orgs/{org}/projects/{project}/exemptions/{exemption}/review": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Exemption" + } + ], + "put": { + "summary": "Review exemption for project", + "tags": [ + "exemptions" + ], + "operationId": "reviewExemptionForProject", + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "l079e2dbui1m8" + }, + "description": "Review exemption for project", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionReviewRequestDTO" + } + } + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/artifacts/{artifact}/exemptions/{exemption}/review": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Exemption" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "put": { + "summary": "Review exemption for artifact", + "operationId": "reviewExemptionForArtifact", + "tags": [ + "exemptions" + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "description": "Review exemption for artifact", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-stoplight": { + "id": "2guw8lpxf9fwg" + }, + "requestBody": { + "description": "Shared Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExemptionReviewRequestDTO" + } + } + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/components": { + "get": { + "summary": "Get components for project", + "tags": [ + "component" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ComponentListResponseBody" + } + }, + "operationId": "getComponents", + "x-stoplight": { + "id": "up0ge2m05ccdv" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "search_term", + "description": "Search for components by name." + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/executions/{execution}/ssca-summary": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "pipeline", + "in": "path", + "required": true, + "description": "Harness pipeline ID" + }, + { + "schema": { + "type": "string" + }, + "name": "execution", + "in": "path", + "required": true, + "description": "Harness execution ID" + } + ], + "get": { + "summary": "Get Summary for SSCA Tab", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SSCASummary" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getSSCASummary", + "x-stoplight": { + "id": "o6bx01jzbku58" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "tags": [ + "sscaPipelineView" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/executions/{execution}/artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "pipeline", + "in": "path", + "required": true, + "description": "Harness pipeline ID" + }, + { + "schema": { + "type": "string" + }, + "name": "execution", + "in": "path", + "required": true, + "description": "Harness execution ID" + } + ], + "post": { + "summary": "Get Artifact List for Pipeline View", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactListingResponsePipelineBody" + } + }, + "operationId": "getPipelineArtifactList", + "x-stoplight": { + "id": "egrnx9jyyfjxz" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ArtifactListingPipelineRequestBody" + }, + "tags": [ + "sscaPipelineView" + ] + } + }, + "/v1/license/ssca/usage": { + "post": { + "summary": "SSCA module license usage", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LicenseUsageResponse" + } + } + } + } + }, + "operationId": "sscaLicenseUsage", + "x-stoplight": { + "id": "5wyzib9dvtg21" + }, + "description": "SSCA module license usage", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "integer", + "format": "int64" + }, + "in": "query", + "name": "timestamp", + "description": "current time" + } + ], + "tags": [ + "LicenseUsageResource" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/provenance/{provenance}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "provenance", + "in": "path", + "required": true, + "description": "Provenance Id" + } + ], + "servers": [], + "post": { + "summary": "Save Provenance", + "tags": [ + "Slsa" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveProvenance", + "x-stoplight": { + "id": "qxnsz67gv81xu" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ProvenanceRequestBody" + } + }, + "get": { + "summary": "Get Provenance", + "tags": [ + "Slsa" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ProvenanceResponseBody" + } + }, + "operationId": "getProvenance", + "x-stoplight": { + "id": "x30g28thstz3g" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v2/orgs/{org}/projects/{project}/provenance/{provenance}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/ProvenanceId" + } + ], + "servers": [], + "post": { + "summary": "Save Provenance", + "tags": [ + "slsaV2" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveProvenanceV2", + "x-stoplight": { + "id": "qxnsz67gv81xu" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ProvenanceRequestBodyV2" + } + } + }, + "/v1/orgs/{org}/projects/{project}/slsa-verification/{provenance}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "provenance", + "in": "path", + "required": true, + "description": "Provenance Id" + } + ], + "post": { + "summary": "Save SLSA Verification Status", + "tags": [ + "Slsa" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveSlsaVerification", + "x-stoplight": { + "id": "3fps8yinohu8r" + }, + "requestBody": { + "$ref": "#/components/requestBodies/SLSAVerificationRequestBody" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v2/orgs/{org}/projects/{project}/slsa-verification/{provenance}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/ProvenanceId" + } + ], + "post": { + "summary": "Save SLSA Verification Status", + "tags": [ + "slsaV2" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveSlsaVerificationV2", + "x-stoplight": { + "id": "3fps8yinohu8r" + }, + "requestBody": { + "$ref": "#/components/requestBodies/SLSAVerificationRequestBodyV2" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/slsa-verification/{provenance}/policy-violations": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "provenance", + "in": "path", + "required": true, + "description": "Provenance Id" + } + ], + "post": { + "summary": "Save SLSA Policy Violation", + "tags": [ + "Slsa" + ], + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveSlsaPolicyViolations", + "x-stoplight": { + "id": "y5ntvtrr1fr5v" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/PolicyViolationRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/orchestration/{orchestration-id}/sbom-upload": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "orchestration-id", + "in": "path", + "required": true, + "description": "Orchestration Identifier" + } + ], + "servers": [] + }, + "/v2/orgs/{org}/projects/{project}/orchestration/{orchestration}/sbom-upload": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/OrchestrationId" + } + ], + "servers": [], + "post": { + "summary": "Upload SBOM", + "tags": [ + "orchestrationV3" + ], + "responses": { + "201": { + "description": "Shared Response" + } + }, + "operationId": "uploadSbomV2", + "x-stoplight": { + "id": "nu31o2ljat7wm" + }, + "description": "Upload SBOM for an orchestration run", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "required": [ + "sbom", + "execution_context" + ], + "properties": { + "sbom": { + "type": "string", + "x-stoplight": { + "id": "q6xx2x2hw7izu" + }, + "format": "binary", + "writeOnly": true + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + }, + "sbom_name": { + "type": "string", + "x-stoplight": { + "id": "x2y8o4pdp79wh" + } + } + } + } + } + } + }, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/orchestration/{orchestration-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "orchestration-id", + "in": "path", + "required": true, + "description": "Orchestration ID for SBOM orchestration" + } + ] + }, + "/v2/orgs/{org}/projects/{project}/orchestration/{orchestration}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/OrchestrationId" + } + ], + "post": { + "summary": "Save Orchestration", + "tags": [ + "orchestrationV3" + ], + "responses": { + "201": { + "$ref": "#/components/responses/PluginResponseBody" + }, + "400": { + "description": "Bad Request" + } + }, + "operationId": "saveOrchestrationV2", + "x-stoplight": { + "id": "z435nplrowm4h" + }, + "requestBody": { + "$ref": "#/components/requestBodies/SaveOrchestrationRequestBodyV2" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/base-image/details": { + "post": { + "summary": "Get Base Image Details", + "tags": [ + "baseImage" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactComponentsResponseBody" + } + }, + "operationId": "getBaseImageDetails", + "x-stoplight": { + "id": "shm18amspn3g5" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ArtifactComponentsRequestBody" + } + } + }, + "/gateway/ssca-manager/v1/orgs/{org}/projects/{project}/integration": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Create Integration", + "tags": [ + "integration" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CreateIntegrationResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "403": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error2" + } + } + }, + "description": "Not Acceptable" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "createIntegration", + "x-stoplight": { + "id": "srinp2ibtwp8o" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateIntegrationRequestBody" + }, + "x-internal": false + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-standards": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Create Compliance Standards", + "responses": { + "200": { + "description": "Shared Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceCheck" + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "createComplianceStandards", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateComplianceStandardRequestBody" + }, + "description": "Create Compliance Standards", + "x-stoplight": { + "id": "w7t7slwx4bpyp" + }, + "tags": [ + "ComplianceStandards" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-results/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Fetch Compliance Results", + "responses": { + "200": { + "$ref": "#/components/responses/FetchComplianceResultResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "fetchComplianceResults", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Limit6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FetchComplianceResultRequestBody" + }, + "description": "Fetch Compliance Results", + "x-stoplight": { + "id": "i0heiwkbw253d" + }, + "tags": [ + "ComplianceResults" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-results/compliances": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Fetch Compliance Results Checks", + "responses": { + "200": { + "$ref": "#/components/responses/ComplianceResultsGroupByComplianceIdResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "fetchComplianceResultsGroupById", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "schema": { + "type": "string", + "enum": [ + "severity" + ] + }, + "in": "query", + "name": "sort", + "description": "sort entity" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "start_time", + "description": "Start time for the query, accepts timestamp epoch UTC" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "end_time", + "description": "End time for the query, accepts timestamp epoch UTC" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FetchComplianceResultRequestBody" + }, + "description": "fetch Compliance Results GroupById", + "tags": [ + "ComplianceResults" + ], + "x-stoplight": { + "id": "jswpohsezov5y" + } + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-results/compliances/{compliance}/artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "compliance", + "in": "path", + "required": true, + "description": "compliance ID" + } + ], + "get": { + "summary": "Fetch Compliance Result By Compliance Id", + "tags": [ + "ComplianceResults" + ], + "responses": { + "200": { + "$ref": "#/components/responses/FetchArtifactsByComplianceIdResponseBody" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "fetchComplianceResultsByComplianceId", + "x-stoplight": { + "id": "i0e7u125rfvdr" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "schema": { + "type": "string", + "enum": [ + "repo_name", + "updated", + "status" + ] + }, + "in": "query", + "name": "sort", + "description": "sort order" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "search_term", + "description": "artifact name search" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-results": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Save Compliance Results", + "responses": { + "200": { + "description": "Shared Response" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveComplianceResult", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateComplianceResultRequestBody" + }, + "description": "Save Compliance Results", + "tags": [ + "ComplianceResults" + ], + "x-stoplight": { + "id": "49usqlvlug1m6" + } + } + }, + "/v2/orgs/{org}/projects/{project}/compliance-results": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Save Compliance Results", + "responses": { + "200": { + "description": "Empty Response" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveComplianceResultV2", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "Create Compliance Results Request Body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateComplianceResultV2" + } + } + } + }, + "description": "Save Compliance Results", + "tags": [ + "ComplianceResultsV2" + ], + "x-stoplight": { + "id": "sjyebgk7vdobd" + } + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-standards/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Fetch Compliance Standards", + "responses": { + "200": { + "$ref": "#/components/responses/ComplianceStandardsResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getComplianceStandards", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "sort", + "description": "Parameter on the basis of which sorting is done." + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ComplianceStandardsRequestBody" + }, + "x-stoplight": { + "id": "ba1j9fp38rjbh" + }, + "description": "Fetch Compliance Standards", + "tags": [ + "ComplianceStandards" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-standards/compliances/{compliance}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "compliance", + "in": "path", + "required": true, + "description": "compliance Id" + } + ], + "get": { + "summary": "Get Compliance Standard By Id", + "tags": [ + "complianceStandards" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ComplianceStandardByIdResponseBody" + } + }, + "operationId": "getCompliaceStandardById", + "x-stoplight": { + "id": "pm3x5ic04amhd" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/integration/{integration}/fetch-repos": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "integration", + "in": "path", + "required": true, + "description": "Integration ID" + } + ] + }, + "/gateway/ssca-manager/v1/orgs/{org}/projects/{project}/integration/{integration}/repos": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "integration", + "in": "path", + "required": true, + "description": "A unique identifier for the integration created using the Create Integration API. This ID is returned in the response of the Create Integration API and must be provided as a path parameter when fetching integration details or repositories." + } + ], + "post": { + "summary": "Configure repos in your integration", + "tags": [ + "integration" + ], + "responses": { + "200": { + "$ref": "#/components/responses/UpdateIntegrationResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "configureRepos", + "x-stoplight": { + "id": "amik8vh9jyz77" + }, + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConfigureReposRequest" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + }, + "patch": { + "summary": "Add repos in your integration", + "tags": [ + "integration" + ], + "responses": { + "200": { + "$ref": "#/components/responses/UpdateIntegrationResponseBody" + } + }, + "operationId": "addRepos", + "x-stoplight": { + "id": "amik8vh9jyz77" + }, + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConfigureReposRequest" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + }, + "delete": { + "summary": "Delete Repositories from Integration", + "tags": [ + "Delete Repositories" + ], + "responses": { + "200": { + "$ref": "#/components/responses/UpdateIntegrationResponseBody" + } + }, + "operationId": "deleteRepos", + "x-stoplight": { + "id": "amik8vh9jyz77" + }, + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ConfigureReposRequest" + }, + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifact-sources": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "List Artifact Sources", + "operationId": "listArtifactSources", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactSourcesListingResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "tags": [ + "artifactListing" + ], + "description": "List Artifact Sources and associated artifacts count", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "name" + ] + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "x-stoplight": { + "id": "y2ehf0ax5nsh8" + }, + "requestBody": { + "$ref": "#/components/requestBodies/ArtifactListingRequestBody" + } + } + }, + "/v1/orgs/{org}/projects/{project}/artifact-sources/{source}/artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "source", + "in": "path", + "required": true, + "description": "Artifact Source Id" + } + ], + "post": { + "summary": "List All Artifacts", + "operationId": "artifactListV2", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactV2ListingResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "description": "List artifacts", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "updated" + ] + } + }, + { + "$ref": "#/components/parameters/OrderDefaultDesc" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ArtifactListingRequestBody" + }, + "x-stoplight": { + "id": "25gnwq5h8o5ho" + }, + "tags": [ + "artifactListing" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifacts/{artifact}/components": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "post": { + "summary": "ArtifactV2 Detail Component View", + "tags": [ + "artifactListing" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactComponentViewResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getArtifactV2DetailComponentView", + "x-stoplight": { + "id": "kr7bsdqea6udo" + }, + "description": "Get artifactV2 detail component view", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "type": "string", + "enum": [ + "package_name", + "package_supplier" + ], + "default": "package_name" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactComponentViewRequestBody" + } + } + }, + "description": "ArtifactV2 Component View Request Body." + } + } + }, + "/v1/orgs/{org}/projects/{project}/artifact-sources/{source}/baseline": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "source", + "in": "path", + "required": true, + "description": "Artifact Source ID" + } + ], + "post": { + "summary": "Set Baseline For Artifact", + "operationId": "setBaselineForArtifactV2", + "responses": { + "200": { + "$ref": "#/components/responses/SaveResponse" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "x-stoplight": { + "id": "8zhwp073nwqqn" + }, + "description": "Save the baseline for an artifact", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/BaselineV2RequestBody" + }, + "tags": [ + "BaselineV2" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifacts/{artifact}/deployments": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "post": { + "summary": "Artifact Detail Deployment View", + "operationId": "getArtifactV2DetailDeploymentView", + "responses": { + "200": { + "$ref": "#/components/responses/ArtifactDeploymentViewResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + }, + "default": { + "$ref": "#/components/responses/ArtifactDeploymentViewResponseBody" + } + }, + "description": "Get artifactV2 detail deployment view", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "enum": [ + "env_name", + "env_type" + ], + "default": "env_name" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactDeploymentViewRequestBody" + } + } + }, + "description": "Get artifactV2 detail deployment view." + }, + "x-stoplight": { + "id": "af9upcbwjbi8t" + }, + "tags": [ + "artifactListing" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifact/{artifact}/compliance-results/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "post": { + "summary": "Fetch compliance result by artifact", + "tags": [ + "ComplianceResults" + ], + "responses": { + "200": { + "$ref": "#/components/responses/FetchComplianceResultByArtifactResponse" + } + }, + "operationId": "fetchComplianceResultsByArtifact", + "x-stoplight": { + "id": "obqv1cnxcb7ur" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "in": "query", + "name": "sort", + "description": "Parameter on the basis of which sorting is done.", + "schema": { + "enum": [ + "title", + "severity" + ], + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FetchComplianceResultByArtifactRequestBody" + }, + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/gateway/ssca-manager/v1/orgs/{org}/projects/{project}/integration/{integration}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "integration", + "in": "path", + "required": true, + "description": "Integration ID" + } + ], + "delete": { + "summary": "Delete Integration", + "tags": [ + "integration" + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "deleteIntegration", + "x-stoplight": { + "id": "spufhrt5hdms2" + }, + "security": [ + { + "x-api-key": [] + } + ], + "x-internal": false, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifact-sources/{source}/artifacts/{artifact}/overview": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + }, + { + "schema": { + "type": "string" + }, + "name": "source", + "in": "path", + "required": true, + "description": "Artifact Source Id" + } + ], + "get": { + "summary": "ArtifactV2 Overview", + "tags": [ + "artifactListing" + ], + "responses": { + "200": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactV2Overview" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getArtifactV2Overview", + "x-stoplight": { + "id": "nj4qgvn5l5j53" + }, + "description": "Get ArtifactV2 Overview", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/artifact-overview": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "get": { + "summary": "ArtifactV2 Overview", + "tags": [ + "artifactListing" + ], + "responses": { + "200": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactV2Overview" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getArtifactV2OverviewByName", + "x-stoplight": { + "id": "o6y0qpoj9lk5u" + }, + "description": "Get ArtifactV2 by image name, tag and digest", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "digest", + "required": true, + "description": "Digest of the artifact" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "registry_url", + "description": "Registry url", + "required": true + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "image_name", + "description": "Image name of the artifact", + "required": true + } + ] + } + }, + "/v1/configs/pipeline": { + "post": { + "summary": "Update Pipeline Config", + "tags": [ + "accountConfigs" + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "updatePipelineConfig", + "x-stoplight": { + "id": "ql612lzxrh55y" + }, + "description": "This API will update the pipeline config for an account.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelineConfigUpdateRequestBody" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/code-repos/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "List All Code Repositories", + "operationId": "codeRepositoriesList", + "responses": { + "200": { + "$ref": "#/components/responses/CodeRepositoryListingResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "tags": [ + "codeRepo" + ], + "description": "List Code Repositories", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "type": "string", + "enum": [ + "name", + "last_scan", + "compliance_results" + ], + "default": "last-scan" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CodeRepositoryListingRequestBody" + }, + "x-stoplight": { + "id": "r38yb2r4uttwp" + } + } + }, + "/v1/orgs/{org}/projects/{project}/ci-cd/list": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "List All CI/CD Workflows", + "operationId": "getCICDWorkflowsList", + "responses": { + "200": { + "description": "CI/CD Workflow List Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CICDWorkflowListingResponse" + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "description": "List CI/CD Workflows", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "in": "query", + "description": "Parameter on the basis of which sorting is done.", + "name": "sort", + "schema": { + "type": "string", + "enum": [ + "last_scan", + "evaluation_count" + ], + "default": "last_scan" + } + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "description": "Shared Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CICDWorkflowListingRequest" + } + } + } + }, + "x-stoplight": { + "id": "w1x8cutq6bkqi" + }, + "tags": [ + "CICDWorkflows" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/code-repos/{code-repo}/overview": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "code-repo", + "in": "path", + "required": true, + "description": "Code repository ID" + } + ], + "get": { + "summary": "Get Code Repository Overview", + "tags": [ + "codeRepo" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CodeRepositoryOverviewResponseBody" + } + }, + "operationId": "getCodeRepositoryOverview", + "x-stoplight": { + "id": "q2jzrwo3zf8o7" + }, + "description": "This API provides overview details of code repository.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/code-repos/{code-repo}/rules/evalution-trend": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "code-repo", + "in": "path", + "required": true, + "description": "Code Repository ID" + }, + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "get": { + "summary": "GET Repo Rules Evaluation Trend", + "tags": [ + "codeRepo" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CodeRepoRulesEvaluation" + } + } + } + } + } + }, + "operationId": "getRepoRulesEvaluationTrend", + "x-stoplight": { + "id": "8105jf556pwz3" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "schema": { + "type": "integer", + "format": "int64" + }, + "in": "query", + "name": "start_time", + "description": "Start Time", + "required": true + }, + { + "schema": { + "type": "integer", + "format": "int64" + }, + "in": "query", + "name": "end_time", + "description": "End Time" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-stats/evaluation-breakdown": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Compliance Results Stats Overview Severity", + "responses": { + "200": { + "$ref": "#/components/responses/ComplianceResultsEvaluationBreakdownResponse" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "postComplianceResultStatsOverview", + "x-stoplight": { + "id": "v8wrumipa2mwv" + }, + "description": "Post call to show Compliance Results for Compliance Dashboard Overview", + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "start_time", + "description": "Start time for the query, accepts timestamp epoch UTC" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "end_time", + "description": "End time for the query, accepts timestamp epoch UTC" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ComplianceResultsOverviewRequestBody" + }, + "tags": [ + "ComplianceStats" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-stats/checks": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Fetch Compliance Result Stats By Compliance Checks", + "responses": { + "200": { + "$ref": "#/components/responses/ComplianceChecksStatsResponse" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getComplianceResultStatsByComplianceChecks", + "x-stoplight": { + "id": "5jio4bts674f8" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "start_time", + "description": "Start time for the query, accepts timestamp" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "end_time", + "description": "End time for the query, accepts timestamp" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "sort", + "description": "Parameter on the basis of which sorting is done, known sorts: failed" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/FetchComplianeResultChecksStatsRequestBody" + }, + "tags": [ + "ComplianceStats" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/code-repos/summary": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "get": { + "summary": "GET All Repositories Summary", + "tags": [ + "codeRepo" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RepositoriesSummary" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getAllRepositoriesSummary", + "x-stoplight": { + "id": "6i10swrdmen5o" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/ci-cd/summary": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "get": { + "summary": "GET All CI/CD Workflows Summary", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CICDWorkflowSummary" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getCICDWorkflowsSummary", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "x-stoplight": { + "id": "mwxtnz07xmd0n" + }, + "tags": [ + "CICDWorkflows" + ], + "description": "Get all CI/CD Workflow Summary including Number of workflows and Compliance evaluations for all workflows." + } + }, + "/v1/orgs/{org}/projects/{project}/ci-cd/{workflow}/overview": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "workflow", + "in": "path", + "required": true, + "description": "CI/Cd Workflow ID" + } + ], + "get": { + "summary": "Get CI/CD Workflow Overview", + "responses": { + "200": { + "$ref": "#/components/responses/CICDOverviewResponseBody" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getCICDOverview", + "x-stoplight": { + "id": "s6xgds8h03apk" + }, + "description": "This API provides overview details of a Ci/Cd Workflow.", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "tags": [ + "CICDWorkflows" + ] + } + }, + "/v1/orgs/{org}/projects/{project}/ci-cd/{workflow}/rules/evalution-trend": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "workflow", + "in": "path", + "required": true, + "description": "CICD Workflow ID" + }, + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "get": { + "summary": "GET CI/CD Rules Evaluation Trend", + "tags": [ + "CICDWorkflows" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CICDRulesEvaluation" + } + } + } + } + } + }, + "operationId": "getCICDRulesEvaluationTrend", + "x-stoplight": { + "id": "8bt8ww6kmivsz" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "schema": { + "type": "integer", + "format": "int64" + }, + "in": "query", + "name": "start_time", + "description": "Start Time", + "required": true + }, + { + "schema": { + "type": "integer", + "format": "int64" + }, + "in": "query", + "name": "end_time", + "description": "End Time" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-stats/evaluation-breakdown/artifacts": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Compliance Results Stats Overview Evaluation Breakdown Artifacts", + "tags": [ + "ComplianceStats" + ], + "responses": { + "200": { + "$ref": "#/components/responses/ComplianceResultsEvaluationBreakdownByArtifactsResponse" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "postComplianceResultStatsEvaluationBreakdownArtifactType", + "x-stoplight": { + "id": "2m8yg1vqxn5ya" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "start_time" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "end_time" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ComplianceResultsEvaluationBreakdownByArtifactsRequest" + } + } + }, + "/v1/integrations/config": { + "get": { + "summary": "GET Integrations Config", + "tags": [ + "integrationConfig" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IntegrationConfig" + } + } + } + } + }, + "operationId": "getIntegrationsConfig", + "x-stoplight": { + "id": "vww4hg8qec9oa" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string", + "default": "GITHUB", + "enum": [ + "GITHUB" + ] + }, + "in": "query", + "name": "type", + "description": "Integration Type", + "required": true + } + ] + } + }, + "/gateway/ssca-manager/v1/repository": { + "parameters": [], + "delete": { + "summary": "Delete Repositories from Repo Listing Page", + "tags": [ + "Delete Repositories" + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "deleteRepositories", + "x-stoplight": { + "id": "o8kj31dcokuhk" + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "DeleteRepositoriesRequestBody", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteRepositoriesRequestBody" + } + } + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/artifacts/{artifact}/chain-of-custody": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "get": { + "summary": "ArtifactV2 Chain Of Custody", + "tags": [ + "artifactListing" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactChainOfCustody" + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getArtifactV2ChainOfCustody", + "x-stoplight": { + "id": "nd9bu65d75xsl" + }, + "description": "get artifactV2 chain of custody", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v2/orgs/{org}/projects/{project}/artifacts/{artifact}/chain-of-custody": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/Artifact" + } + ], + "get": { + "summary": "Artifact Chain Of Custody V2", + "tags": [ + "artifactListingV2" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactChainOfCustodyV2" + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getArtifactChainOfCustodyV2", + "x-stoplight": { + "id": "nd9bu65d75xsl" + }, + "description": "get artifactV2 chain of custody", + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/compliance-stats/evaluation-trend": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Compliance Evaluation Trend API", + "responses": { + "200": { + "$ref": "#/components/responses/ComplianceEvaluationTrendResponse" + } + }, + "operationId": "get-compliance-evaluation-trends", + "x-stoplight": { + "id": "4yhrxle7b01jd" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "start_time", + "description": "start time in epoch timestamp ms" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "end_time", + "description": "end time in epoch timestamp ms" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "aggregation_period", + "description": "time in epoch timestamp depicting the window length in ms" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/ComplianceEvaluationTrendRequest" + }, + "tags": [ + "ComplianceStats" + ] + } + }, + "/v1/version": { + "get": { + "summary": "Get SSCA Manager Version", + "tags": [ + "version" + ], + "responses": { + "200": { + "$ref": "#/components/responses/VersionResponseBody" + } + }, + "operationId": "getVersion", + "x-stoplight": { + "id": "wbg2mgvs327ho" + }, + "security": [], + "parameters": [] + } + }, + "/v1/orgs/{org}/projects/{project}/ci-cd/harness/pipeline/{pipeline-id}": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "pipeline-id", + "in": "path", + "required": true, + "description": "pipeline identifier" + } + ], + "get": { + "summary": "GET harness pipeline information", + "tags": [ + "CICDWorkflows" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CICDHarnessPipelineResponseBody" + } + }, + "operationId": "getHarnessPipelineYaml", + "x-stoplight": { + "id": "xrl53lnewor3z" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/integration/harness-pipeline": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/ci-cd/{workflow}/plugins": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "schema": { + "type": "string" + }, + "name": "workflow", + "in": "path", + "required": true, + "description": "workflow ID" + } + ], + "get": { + "summary": "Fetch List of plugins for a workflow", + "tags": [ + "CICDWorkflows" + ], + "responses": { + "200": { + "$ref": "#/components/responses/CICDWorklfowPluginsResponseBody" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "fetchPluginsForWorkflow", + "x-stoplight": { + "id": "1v19c850aossa" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + }, + { + "$ref": "#/components/parameters/Page2" + }, + { + "$ref": "#/components/parameters/Limit6" + }, + { + "$ref": "#/components/parameters/Order2" + }, + { + "schema": { + "type": "string", + "enum": [ + "name" + ], + "default": "name" + }, + "in": "query", + "name": "sort", + "description": "sort order" + }, + { + "schema": { + "type": "string" + }, + "in": "query", + "name": "search_term", + "description": "plugin name search" + } + ] + } + }, + "/v1/compliance-standards/filters": { + "get": { + "summary": "Compliance Standards Filters", + "tags": [ + "ComplianceStandardsFilter" + ], + "responses": { + "200": { + "description": "Supported Compliance Standards Filters", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardsFilterEntity", + "tags": [ + "ComplianceStandardsFilterEntity" + ] + } + }, + "examples": { + "Example 1": { + "value": [ + { + "scan_type": "CICD", + "integrations": [ + "GITHUB", + "HARNESS" + ] + } + ] + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "getComplianceStandardsFilters", + "x-stoplight": { + "id": "pprn01ssu6zvd" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "security": [ + { + "x-api-key": [] + } + ] + } + }, + "/v1/orgs/{org}/projects/{project}/signing/{signatureId}/save-signature": { + "post": { + "summary": "Save Signature", + "tags": [ + "ArtifactSigning" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "type": "string", + "x-stoplight": { + "id": "vtyhvs8qnepzx" + } + }, + "response": { + "$ref": "#/components/schemas/PluginResponseBody" + } + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveSignature", + "x-stoplight": { + "id": "is0kq4v50g4i9" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "SaveSignatureRequestBody", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SaveSignatureRequestBody" + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/SignatureId" + } + ] + }, + "/v1/orgs/{org}/projects/{project}/signing/{signatureId}/save-integrity-verification": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + }, + { + "$ref": "#/components/parameters/SignatureId" + } + ], + "post": { + "summary": "Save Integrity Verification", + "tags": [ + "ArtifactSigning" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "type": "string", + "x-stoplight": { + "id": "kfdang5pcb2x7" + } + }, + "response": { + "$ref": "#/components/schemas/PluginResponseBody" + } + } + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveIntegrityVerification", + "x-stoplight": { + "id": "ltk4b3mciohbc" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "SaveIntegrityVerificationRequestBody", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SaveIntegrityVerificationRequestBody" + } + } + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/signing/upload-signature": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Upload Signature", + "tags": [ + "ArtifactSigning" + ], + "responses": { + "201": { + "description": "Created", + "content": {} + } + }, + "operationId": "uploadSignature", + "x-stoplight": { + "id": "cgr50robzhdqd" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "description": "UploadSignatureRequestBody", + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + }, + "payload": { + "type": "string", + "x-stoplight": { + "id": "vhvbeq9asg6zf" + }, + "format": "binary" + }, + "signature": { + "type": "string", + "x-stoplight": { + "id": "2vz1j7z1z7j5z" + }, + "format": "binary" + }, + "signature_id": { + "type": "string", + "x-stoplight": { + "id": "uqm4wyjmscj99" + } + } + } + } + } + } + } + } + }, + "/v1/orgs/{org}/projects/{project}/signing/download-signature": { + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam1" + }, + { + "$ref": "#/components/parameters/ProjectParam1" + } + ], + "post": { + "summary": "Download Signature", + "tags": [ + "ArtifactSigning" + ], + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DownloadSignatureResponseBody" + } + } + } + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "downloadSignature", + "x-stoplight": { + "id": "yek55xhhnj1y4" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + } + } + } + } + } + }, + "/gateway/ssca-manager/v1/ssca-config/pipeline-infra": { + "post": { + "summary": "Save SPM Pipeline Infra Configs", + "operationId": "savePipelineInfraConfig", + "tags": [ + "PipelineInfraConfig" + ], + "responses": { + "200": { + "description": "Shared Response" + }, + "400": { + "description": "Bad Request" + }, + "401": { + "description": "Unauthorized" + }, + "500": { + "description": "Internal Server Error" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelineInfraConfigRequestBody" + }, + "x-internal": false + } + }, + "/v1/ssca-config/integrations": { + "post": { + "summary": "Configure your scan frequency", + "tags": [ + "PipelineInfraConfig" + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "description": "Internal Server Error" + } + }, + "operationId": "saveIntegrationConfig", + "x-internal": false, + "x-stoplight": { + "id": "ayp05ppewni05" + }, + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader6" + } + ], + "security": [ + { + "x-api-key": [] + } + ], + "requestBody": { + "description": "Save Integration Config Request Body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IntegrationConfigRequestBody" + } + } + } + } + } + } + }, + "components": { + "schemas": { + "GovernanceStatus": { + "type": "string", + "title": "GovernanceStatus", + "x-stoplight": { + "id": "kh0hxoiqon3so" + }, + "enum": [ + "WARNING", + "ERROR", + "PASS" + ], + "description": "Governance Status" + }, + "Policy": { + "title": "Policy", + "x-stoplight": { + "id": "96ka3iug8rbc4" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Policy Identifier" + }, + "name": { + "type": "string", + "description": "Policy Name" + }, + "org": { + "type": "string", + "description": "Organization identifier where the Policy is defined" + }, + "project": { + "type": "string", + "description": "Project Identifier where the Policy is defined" + }, + "evaluation_error": { + "type": "string", + "description": "Error message in Policy Evaluation" + }, + "deny_messages": { + "type": "array", + "description": "Deny messages", + "items": { + "type": "string" + } + }, + "status": { + "$ref": "#/components/schemas/GovernanceStatus" + } + }, + "description": "Contains Details about Policy" + }, + "PolicySet": { + "title": "PolicySet", + "x-stoplight": { + "id": "lxrtpc1yji0pm" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifer of the Policy Set" + }, + "name": { + "type": "string", + "description": "Name of the Policy Set" + }, + "org": { + "type": "string", + "description": "Organization Identifier where the Policy Set is defined" + }, + "project": { + "type": "string", + "description": "Project Identifier where the Policy Set is defined" + }, + "deny_messages": { + "type": "array", + "description": "Deny messages", + "items": { + "type": "string" + } + }, + "status": { + "$ref": "#/components/schemas/GovernanceStatus" + }, + "policies": { + "type": "array", + "description": "List of policies defined inside Policy Set", + "items": { + "$ref": "#/components/schemas/Policy" + } + } + }, + "description": "Contains Policy Set Detail" + }, + "GovernanceMetadata": { + "title": "GovernanceMetadata", + "x-stoplight": { + "id": "05qhnkvljwzzm" + }, + "description": "Governace Error Details", + "x-discriminator-value": "GovernanceMetadata", + "allOf": [ + { + "$ref": "#/components/schemas/ErrorMetadata" + }, + { + "type": "object", + "properties": { + "deny": { + "type": "boolean", + "description": "Indicate whether the action is denied or not based on Governance rules" + }, + "message": { + "type": "string", + "description": "Governance Message" + }, + "status": { + "$ref": "#/components/schemas/GovernanceStatus" + }, + "policy_sets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicySet" + } + } + } + } + ] + }, + "TestErrorMetadata": { + "title": "TestErrorMetadata", + "x-discriminator-value": "TestErrorMetadata", + "x-stoplight": { + "id": "mgogkf26yt2ka" + }, + "description": "Test Error Metadata", + "allOf": [ + { + "$ref": "#/components/schemas/ErrorMetadata" + }, + { + "type": "object", + "properties": { + "test": { + "type": "string" + } + } + } + ] + }, + "ErrorMetadata": { + "title": "ErrorMetadata", + "x-stoplight": { + "id": "344dmnhe1c5kt" + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "GovernanceMetadata": "#/components/schemas/GovernanceMetadata", + "TestErrorMetadata": "#/components/schemas/TestErrorMetadata" + } + }, + "description": "Contains more details about the error", + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "GovernanceMetadata", + "TestErrorMetadata" + ] + } + }, + "required": [ + "type" + ] + }, + "FieldError": { + "title": "FieldError", + "x-stoplight": { + "id": "ahdrlp251yecr" + }, + "type": "object", + "properties": { + "field_name": { + "type": "string", + "description": "Name of the field" + }, + "message": { + "type": "string", + "description": "Error message" + } + }, + "description": "Contains Field-wise error detail" + }, + "ErrorResponse": { + "title": "ErrorResponse", + "x-stoplight": { + "id": "vn5jzgz2umbw0" + }, + "type": "object", + "description": "Contains information about the error", + "properties": { + "message": { + "type": "string", + "description": "Error Message" + }, + "code": { + "type": "string", + "enum": [ + "RESOURCE_NOT_FOUND", + "INVALID_ARGUMENT", + "ENTITY_NOT_FOUND" + ], + "description": "Error code" + }, + "errors": { + "type": "array", + "description": "Contains field-wise error detail", + "items": { + "$ref": "#/components/schemas/FieldError" + } + }, + "error_metadata": { + "$ref": "#/components/schemas/ErrorMetadata" + } + } + }, + "RolesResponse": { + "title": "RolesResponse", + "x-stoplight": { + "id": "q6oq3jxkd2who" + }, + "type": "object", + "description": "Role Response Model", + "x-examples": { + "example-role": { + "identifier": "example_role", + "name": "Example_Role", + "permissions": [ + "core_resource_view" + ], + "allowed_scope_levels": [ + "account" + ], + "description": "This is an Example Role", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "scope": { + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managed": true + } + }, + "properties": { + "identifier": { + "type": "string", + "description": "Role Identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Role Name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "permissions": { + "type": "array", + "description": "Permissions for this Role.", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "allowed_scope_levels": { + "type": "array", + "description": "The Scope levels at which this Role can be used.", + "uniqueItems": true, + "items": { + "type": "string", + "enum": [ + "account", + "organization", + "project" + ] + } + }, + "description": { + "type": "string", + "description": "Role description", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Role tags", + "maxProperties": 128 + }, + "scope": { + "$ref": "#/components/schemas/RoleScope" + }, + "created": { + "type": "integer", + "description": "Creation timestamp for Role.", + "format": "int64" + }, + "updated": { + "type": "integer", + "description": "Last modification timestamp for Role.", + "format": "int64" + }, + "harness_managed": { + "type": "boolean", + "description": "This indicates if this Role is managed by Harness or not. If true, Harness can manage and modify this Role." + } + }, + "required": [ + "identifier", + "name" + ] + }, + "CreateRoleRequest": { + "title": "CreateRoleRequest", + "x-stoplight": { + "id": "z8g6ol73nsqjs" + }, + "type": "object", + "description": "Role request body", + "x-examples": { + "role-request": { + "identifier": "example_role", + "name": "Example_Role", + "permissions": [ + "core_view" + ], + "description": "This is an Example Role", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + } + } + }, + "properties": { + "identifier": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "description": "Role identifier" + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "description": "Role name" + }, + "permissions": { + "type": "array", + "uniqueItems": true, + "description": "List of the permission identifiers.", + "items": { + "type": "string" + } + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Role description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Role tags" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "RoleScope": { + "title": "Scope", + "x-stoplight": { + "id": "w8j3bc9323bxb" + }, + "type": "object", + "description": "Scope of the Role", + "properties": { + "account": { + "type": "string", + "description": "Account identifier" + }, + "org": { + "type": "string", + "description": "Organization identifier" + }, + "project": { + "type": "string", + "description": "Project identifier" + } + }, + "x-examples": { + "example-1": { + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + } + } + }, + "RoleAssignment": { + "title": "RoleAssignment", + "type": "object", + "description": "Role assignment request model", + "properties": { + "identifier": { + "type": "string", + "description": "Role assignment identifier" + }, + "resource_group": { + "type": "string", + "description": "Resource group name" + }, + "role": { + "type": "string", + "description": "Role identifier" + }, + "roleReference": { + "$ref": "#/components/schemas/RoleReference" + }, + "principal": { + "$ref": "#/components/schemas/Principal" + }, + "disabled": { + "type": "boolean", + "description": "Role assignment is disabled or not" + }, + "managed": { + "type": "boolean", + "description": "Role assignment is managed or not" + } + }, + "required": [ + "identifier", + "resource_group", + "role", + "principal" + ] + }, + "Principal": { + "title": "Principal", + "type": "object", + "description": "Role assignment principal", + "properties": { + "scope_level": { + "type": "string", + "description": "Principal scope level" + }, + "identifier": { + "type": "string", + "description": "Principal identifier" + }, + "type": { + "type": "string", + "enum": [ + "USER", + "USER_GROUP", + "SERVICE_ACCOUNT" + ], + "description": "Principal type" + } + }, + "required": [ + "identifier", + "type" + ] + }, + "RoleReference": { + "title": "RoleReference", + "type": "object", + "description": "Role referenced in role assignment", + "properties": { + "scope_level": { + "type": "string", + "description": "Role scope level" + }, + "identifier": { + "type": "string", + "description": "Role identifier" + } + }, + "required": [ + "scope_level", + "identifier" + ] + }, + "RoleAssignmentResponse": { + "title": "RoleAssignmentResponse", + "type": "object", + "description": "Role assignment response model", + "properties": { + "role-assignment": { + "$ref": "#/components/schemas/RoleAssignment" + }, + "created": { + "type": "integer", + "description": "Creation timestamp for Role.", + "format": "int64" + }, + "updated": { + "type": "integer", + "description": "Last modification timestamp for Role.", + "format": "int64" + }, + "harness_managed": { + "type": "boolean", + "description": "Is harness managed" + } + } + }, + "PublicAccessRequest": { + "title": "PublicAccessRequest", + "x-stoplight": { + "id": "iwewenxaom066" + }, + "type": "object", + "description": "Request to mark a resource as public", + "properties": { + "resource_identifier": { + "type": "string", + "description": "Identifier of the resource" + }, + "resource_type": { + "type": "string", + "description": "Type of the resource." + }, + "resource_scope": { + "$ref": "#/components/schemas/Scope" + } + }, + "required": [ + "resource_identifier", + "resource_type", + "resource_scope" + ] + }, + "PublicAccessCheckRequest": { + "title": "PublicAccessCheckRequest", + "type": "object", + "description": "Request to check if given resources are public or not", + "x-stoplight": { + "id": "2fa1394cf970a" + }, + "properties": { + "resource_identifiers": { + "type": "array", + "description": "List of resource identifiers", + "items": { + "type": "string" + } + }, + "resource_type": { + "type": "string", + "description": "Type of the resource." + }, + "resource_scope": { + "$ref": "#/components/schemas/Scope" + } + }, + "required": [ + "resource_identifiers", + "resource_type", + "resource_scope" + ], + "x-examples": { + "Example 1": { + "resource_identifiers": [ + "pipelineIdentifier1", + "pipelineIdentifier2" + ], + "resource_type": "PIPELINE", + "resource_scope": { + "account": "ACCOUNT_ID", + "org": "ORG_ID", + "project": "PROJECT_ID" + } + } + } + }, + "Scope": { + "title": "Scope", + "x-stoplight": { + "id": "5ozno3ho0k6r7" + }, + "type": "object", + "description": "Scope of the Resource", + "properties": { + "account": { + "type": "string", + "description": "Account Identifier" + }, + "org": { + "type": "string", + "description": "Org Identifier" + }, + "project": { + "type": "string", + "description": "Project Identifier" + } + }, + "required": [ + "account" + ] + }, + "RoleRequest": { + "title": "RoleRequest", + "x-stoplight": { + "id": "c3e929c83d0fd" + }, + "type": "object", + "x-internal": false, + "description": "Request to analyze policies based on Role details", + "properties": { + "identifier": { + "type": "string", + "description": "Role identifier" + }, + "scope_level": { + "type": "string", + "description": "Scope level at which role is defined. This can be from query scope level or parent scope level. " + } + } + }, + "Resource": { + "title": "Resource", + "x-stoplight": { + "id": "t79jjwaf9icna" + }, + "type": "object", + "description": "Request to analyze access policies based on Resource details. Resource scope can be provided from query scope or its child scope", + "x-internal": false, + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of resource in given scope" + }, + "type": { + "type": "string", + "description": "Type of resource in a given scope" + }, + "attribute": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource attribute such as \"type\" in case of Environment or Connector" + }, + "scope": { + "$ref": "#/components/schemas/Scope" + } + } + }, + "ResourceGroupResponse": { + "type": "object", + "x-examples": { + "Example 1": { + "identifier": "string", + "name": "string" + } + }, + "x-internal": false, + "title": "ResourceGroupResponse", + "description": "Resource Group details which is assigned along with role to provide access on resources.", + "properties": { + "identifier": { + "type": "string", + "description": "Resource group identifier" + }, + "name": { + "type": "string", + "description": "Resource group name" + } + } + }, + "AccessPolicyAnalysisRequest": { + "title": "AccessPolicyAnalysisRequest", + "x-stoplight": { + "id": "e3t22fn76ryz7" + }, + "type": "object", + "x-internal": false, + "description": "Input that accepts parameters based on which access policies will be queried within a given scope.", + "x-tags": [ + "AccessPolicy" + ], + "properties": { + "query_scope": { + "$ref": "#/components/schemas/QueryScopeRequest" + }, + "principal": { + "$ref": "#/components/schemas/Principal" + }, + "permission_identifier": { + "type": "string", + "description": "Permission identifier for which access policies need to be analysed." + }, + "resource_group_identifier": { + "type": "string", + "description": "Resource group identifiert for which access policies need to be analysed." + }, + "role": { + "$ref": "#/components/schemas/RoleRequest" + }, + "resource": { + "$ref": "#/components/schemas/Resource" + }, + "advance_options": { + "$ref": "#/components/schemas/AccessAnalysisAdvanceOptions" + } + } + }, + "AccessPolicyAnalysisResponse": { + "title": "AccessPolicyAnalysisResponse", + "x-stoplight": { + "id": "z0jvavfz25ak4" + }, + "type": "object", + "x-internal": false, + "description": "Response that list parameters related to access policy and what type of access it provides and to which Principal.", + "properties": { + "role_assignment": { + "$ref": "#/components/schemas/RoleAssignmentMetaData" + }, + "principal": { + "$ref": "#/components/schemas/PrincipalResponse" + }, + "resource_group": { + "$ref": "#/components/schemas/ResourceGroupResponse" + }, + "role": { + "$ref": "#/components/schemas/RoleResponse" + }, + "permission": { + "$ref": "#/components/schemas/Permission" + }, + "resource": { + "$ref": "#/components/schemas/Resource" + } + } + }, + "PrincipalResponse": { + "title": "PrincipalResponse", + "x-stoplight": { + "id": "673d44eaneumv" + }, + "type": "object", + "description": "Principal for which role assignment is created", + "x-internal": false, + "properties": { + "identifier": { + "type": "string", + "description": "Principal Identifier" + }, + "name": { + "type": "string", + "description": "Principal Name" + }, + "type": { + "type": "string", + "description": "Principal type" + }, + "scope_level": { + "type": "string", + "description": "Scope of Principal" + } + }, + "required": [ + "identifier", + "type" + ] + }, + "AccessAnalysisAdvanceOptions": { + "title": "AccessAnalysisAdvanceOptions", + "x-stoplight": { + "id": "xlq5y89mztz6k" + }, + "type": "object", + "description": "Advance Options to control the output of a given query", + "x-internal": false, + "properties": { + "expand_role": { + "type": "boolean", + "description": "True, if response should list all permissions inside role.", + "default": false + }, + "expand_resource_group": { + "type": "boolean", + "description": "True, if response should list all resources inside a resource group.", + "default": false + }, + "expand_user_group": { + "type": "boolean", + "description": "True, if response should list all users inside a user group.", + "default": false + } + } + }, + "AccessPolicyAnalysisResponseWrapper": { + "title": "AccessPolicyAnalysisResponseWrapper", + "x-stoplight": { + "id": "avjt5ezdvhxfb" + }, + "type": "object", + "description": "This is the view of output for policy analyzer query.", + "x-internal": false, + "properties": { + "access_policy_analysis_response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AccessPolicyAnalysisResponse" + } + } + } + }, + "RoleAssignmentMetaData": { + "title": "RoleAssignmentMetaData", + "x-stoplight": { + "id": "9cdu46qqlkjov" + }, + "type": "object", + "x-internal": false, + "properties": { + "scope": { + "$ref": "#/components/schemas/Scope" + }, + "role_assignment_id": { + "type": "string", + "description": "Role assignment Identifier" + }, + "principal": { + "$ref": "#/components/schemas/PrincipalResponse" + } + }, + "required": [ + "scope", + "role_assignment_id" + ], + "description": "This contains Role Assignment details and to which Principal this Role Assignment is assigned." + }, + "Permission": { + "title": "Permission", + "x-stoplight": { + "id": "b1o4qt6tco3qj" + }, + "type": "object", + "x-internal": false, + "description": "Permission details which are assigned via given role assignment", + "properties": { + "identifier": { + "type": "string", + "description": "Permisision identifier" + }, + "name": { + "type": "string", + "description": "Permission Name" + } + } + }, + "QueryScopeRequest": { + "title": "QueryScopeRequest", + "x-stoplight": { + "id": "66hcxma97s02d" + }, + "type": "object", + "description": "This includes details about the scope for which policies should be analysed", + "x-internal": false, + "properties": { + "filter": { + "type": "string", + "enum": [ + "INCLUDING_CHILD_SCOPE", + "EXCLUDING_CHILD_SCOPE" + ], + "default": "EXCLUDING_CHILD_SCOPE", + "description": "Filter provide a way of either selecting ONLY specified scope or also include its child scopes." + }, + "scope": { + "$ref": "#/components/schemas/Scope" + }, + "include_access_policies_from_parent_scope": { + "type": "boolean", + "default": false + } + } + }, + "PublicAccessCheckResponse": { + "title": "PublicAccessCheckResponse", + "x-stoplight": { + "id": "fh5hfwc6y1u7p" + }, + "type": "object", + "description": "This contains list of resources along with information if they are public or not", + "properties": { + "resource_type": { + "type": "string", + "description": "Resource Type" + }, + "resource_scope": { + "$ref": "#/components/schemas/Scope" + }, + "public_access_list": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PublicAccessListResponse" + } + } + }, + "x-examples": { + "Example 1": { + "resource_type": "PIPELINE", + "resource_scope": { + "account": "ACCOUNT_ID", + "org": "ORG_ID", + "project": "PROJECT_ID" + }, + "public_access_list": [ + { + "resource_identifier": "pipelineIdentifier1", + "public": true + }, + { + "resource_identifier": "pipelineIdentifier2", + "public": false + } + ] + } + } + }, + "PublicAccessListResponse": { + "title": "PublicAccessListResponse", + "x-stoplight": { + "id": "8mepgxbhco75c" + }, + "type": "object", + "properties": { + "resource_identifier": { + "type": "string", + "description": "Identifier of a resource" + }, + "public": { + "type": "boolean", + "description": "If true, then resource is marked for public access" + } + } + }, + "RoleResponse": { + "title": "RoleResponse", + "x-stoplight": { + "id": "1bd6pmusgc535" + }, + "type": "object", + "description": "Role details", + "properties": { + "identifier": { + "type": "string", + "description": "Role Identifier" + }, + "name": { + "type": "string", + "description": "Role Name" + }, + "scope_level": { + "type": "string", + "description": "Scope at which Role is created" + } + }, + "x-internal": false + }, + "UserWithAccessEntity": { + "x-stoplight": { + "id": "18na0szgoztrr" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "xauaeb4nf75kj" + } + }, + "email": { + "type": "string", + "x-stoplight": { + "id": "ux96f5g61dxyw" + } + }, + "isServiceAccount": { + "type": "boolean", + "x-stoplight": { + "id": "jlf10s4usvuco" + } + }, + "lastLogin": { + "type": "integer", + "x-stoplight": { + "id": "hrgto6a4d1ywo" + }, + "format": "int64" + }, + "orgs": { + "type": "array", + "x-stoplight": { + "id": "f3nwrt8ii1jp2" + }, + "items": { + "x-stoplight": { + "id": "mareqvqg10k1n" + }, + "type": "string" + } + }, + "projects": { + "type": "array", + "x-stoplight": { + "id": "0364et044xhlz" + }, + "items": { + "x-stoplight": { + "id": "ejmjxhbs0o3pw" + }, + "type": "string" + } + }, + "userGroups": { + "type": "array", + "x-stoplight": { + "id": "0mqgc5uipwf3m" + }, + "items": { + "x-stoplight": { + "id": "3w6mw72cv8l2f" + }, + "type": "string" + } + } + }, + "title": "" + }, + "UpdateAccessRequest": { + "x-stoplight": { + "id": "034njhrzl7d3s" + }, + "type": "object", + "properties": { + "moduleType": { + "$ref": "#/components/schemas/ModuleType", + "x-stoplight": { + "id": "qf4xwys87p96r" + } + }, + "userGroupsToGrant": { + "type": "array", + "x-stoplight": { + "id": "hkvp36485q8z9" + }, + "items": { + "$ref": "#/components/schemas/UpdateRequestEntity", + "x-stoplight": { + "id": "644cajjlgngr6" + } + } + }, + "userGroupsToRevoke": { + "type": "array", + "x-stoplight": { + "id": "8yuqucw64ynbu" + }, + "items": { + "$ref": "#/components/schemas/UpdateRequestEntity", + "x-stoplight": { + "id": "gnk0hv0vee9ya" + } + } + }, + "serviceAccountsToGrant": { + "type": "array", + "x-stoplight": { + "id": "juxwg5jsb617v" + }, + "items": { + "$ref": "#/components/schemas/UpdateRequestEntity", + "x-stoplight": { + "id": "89122qtdieg8d" + } + } + }, + "serviceAccountsToRevoke": { + "type": "array", + "x-stoplight": { + "id": "7f58v0g2pocu4" + }, + "items": { + "$ref": "#/components/schemas/UpdateRequestEntity", + "x-stoplight": { + "id": "z6im6hqs9gvhh" + } + } + } + } + }, + "UpdateRequestEntity": { + "x-stoplight": { + "id": "9atlba00qrn2i" + }, + "type": "object", + "required": [ + "identifier", + "accountIdentifier" + ], + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "san8yczoiztq8" + } + }, + "accountIdentifier": { + "type": "string", + "x-stoplight": { + "id": "j0209h31uepks" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "w38v242vrxl0k" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "a7jm4l0ps81n0" + } + } + }, + "title": "" + }, + "PrometheusQueryRequest": { + "type": "object", + "properties": { + "query": { + "type": "string", + "description": "Prometheus query to fetch metrics, with specific parameters and time range modifiers" + }, + "startTime": { + "type": "integer", + "format": "int64", + "description": "Start time for the data query in epoch seconds" + }, + "endTime": { + "type": "integer", + "format": "int64", + "description": "End time for the data query in epoch seconds" + }, + "accountId": { + "type": "string", + "description": "Unique identifier for the user's account" + }, + "connectorRef": { + "type": "string", + "description": "connector reference" + }, + "step": { + "type": "string", + "default": "60s", + "description": "Step parameter for prometheus query" + }, + "type": { + "type": "string", + "description": "Type of the data query or the data being fetched" + } + }, + "required": [ + "query", + "startTime", + "endTime", + "connectorInfoDTO", + "type" + ] + }, + "LicenseUsageActivityFilterPropertiesDTO": { + "type": "object", + "properties": { + "organizationIdentifiers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This is the list of organization Identifiers on which the filter will be applied." + }, + "projectIdentifiers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This is the list of project Identifiers on which the filter will be applied." + }, + "pipelineIdentifiers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This is the list of pipeline Identifiers on which the filter will be applied." + }, + "resourceClasses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This is the list of resource classes on which the filter will be applied." + }, + "moduleType": { + "$ref": "#/components/schemas/ModuleType" + } + } + }, + "LicenseUsageActivity": { + "type": "object", + "properties": { + "timestamp": { + "type": "integer", + "format": "int64", + "description": "Timestamp for the activity response" + }, + "credits": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CreditUsage" + } + } + }, + "required": [ + "timestamp", + "credits" + ] + }, + "PrometheusMetricsResponse": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "CreditUsage": { + "type": "object", + "properties": { + "totalCredits": { + "type": "integer", + "description": "Total number of credits used" + }, + "ciOsType": { + "type": "string", + "description": "Type of CI/OS" + } + }, + "required": [ + "totalCredits", + "ciOsType" + ] + }, + "CreditOverUsage": { + "type": "object", + "properties": { + "overUsageCount": { + "type": "integer", + "description": "Total number of overuse credits" + }, + "moduleType": { + "type": "string", + "description": "Module Type for which the credits' overusage is being captured" + } + }, + "required": [ + "overUsageCount", + "moduleType" + ] + }, + "LicenseTypeResponse": { + "description": "Type of Licenses that can be provisioned for an account", + "type": "object", + "x-stoplight": { + "id": "59b1960a8fa10" + }, + "properties": { + "licenseType": { + "type": "string", + "enum": [ + "Dev360", + "DevopsEssentials", + "Default" + ] + } + } + }, + "DevopsEssentialsResponse": { + "description": "Devops Essentials response model", + "type": "object", + "properties": { + "devops_license": { + "$ref": "#/components/schemas/DevopsEssentialsDTO" + }, + "devops_essentials_metrics": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DevopsEssentialsMetricsDTO" + } + } + } + }, + "DevopsEssentialsDTO": { + "description": "Devops Essentials response model", + "type": "object", + "properties": { + "namedUser": { + "type": "integer", + "description": "Number of named users provisioned for a given account", + "format": "int64" + }, + "totalAvailable": { + "type": "integer", + "description": "Maximum named users that can be provisioned on an account" + }, + "licenseExpiry": { + "type": "integer", + "description": "Expiry timestamp of the license", + "format": "int64" + } + } + }, + "DevopsEssentialsMetricsDTO": { + "title": "DevopsEssentialsMetricsDTO", + "type": "object", + "properties": { + "moduleType": { + "type": "string" + }, + "totalAvailable": { + "type": "integer", + "format": "int64", + "description": "Maximum named users that can be provisioned on an account" + }, + "usage": { + "$ref": "#/components/schemas/DevopsEssentialsConsumption" + }, + "applied": { + "$ref": "#/components/schemas/DevopsEssentialsConsumption" + }, + "remaining": { + "$ref": "#/components/schemas/DevopsEssentialsRemaining" + } + } + }, + "DevopsEssentialsConsumption": { + "title": "DevopsEssentialsConsumption", + "type": "object", + "description": "Devops Essentials consumption Model", + "properties": { + "prepayUnitsConsumed": { + "type": "integer", + "description": "Number of Prepay units consumed" + }, + "prepayUnitsCost": { + "type": "number", + "format": "double", + "description": "Cost of the prepay units" + }, + "postpayUnitsConsumed": { + "type": "integer", + "description": "Number of Postpay units consumed" + }, + "postpayUnitsCost": { + "type": "number", + "format": "double", + "description": "Cost of the postpay units" + }, + "totalCharges": { + "type": "number", + "format": "double", + "description": "Total charges of all units" + } + } + }, + "DevopsEssentialsRemaining": { + "title": "DevopsEssentialsRemaining", + "type": "object", + "description": "Devops Essentials Remaining metrics Model", + "properties": { + "prepayUnitsRemaining": { + "type": "integer", + "description": "Number of Prepay units consumed" + }, + "prepayUnitsCost": { + "type": "number", + "format": "double", + "description": "Cost of the prepay units" + }, + "postpayUnitsRemaining": { + "type": "integer", + "description": "Number of Postpay units consumed" + }, + "postpayUnitsCost": { + "type": "number", + "format": "double", + "description": "Cost of the postpay units" + } + } + }, + "Service": { + "type": "object", + "x-examples": { + "example-1": { + "account": "sample_account", + "identifier": "example_service", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + } + }, + "description": "This is the Service entity defined in Harness", + "title": "Service", + "properties": { + "account": { + "type": "string", + "description": "Account Identifier", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier of the Service Request.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Organization Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Service Request.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the entity", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Service tags", + "maxProperties": 128 + }, + "yaml": { + "type": "string", + "description": "Yaml related to service" + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "Environment": { + "type": "object", + "x-examples": { + "example-1": { + "account": "sample_account", + "identifier": "example_environment", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_environment", + "description": "This is a example environment", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\n" + } + }, + "description": "This is the Environment entity defined in Harness", + "title": "Environment", + "properties": { + "account": { + "type": "string", + "description": "Account Identifier", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier of the Environment Request.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Organization Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Environment Request.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the entity", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Environment tags", + "maxProperties": 128 + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + }, + "yaml": { + "type": "string", + "description": "Yaml related to environment" + } + }, + "required": [ + "identifier", + "name" + ], + "x-stoplight": { + "id": "t0gj2z2q9pwsn" + } + }, + "Infrastructure": { + "type": "object", + "x-examples": { + "example-1": { + "account": "sample_infrastructure", + "identifier": "example_infrastructure", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_environment", + "description": "This is a example infrastructure", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\n" + } + }, + "description": "This is the Infrastructure entity defined in Harness", + "title": "Infrastructure", + "properties": { + "account": { + "type": "string", + "description": "Account Identifier", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier of the Environment Request.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Organization Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Infrastructure.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "environment": { + "type": "string", + "description": "Name of the parent Environment.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "type": { + "$ref": "#/components/schemas/InfrastructureType" + }, + "description": { + "type": "string", + "description": "Description of the entity", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Infrastructure tags", + "maxProperties": 128 + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + }, + "yaml": { + "type": "string", + "description": "Yaml related to infrastructure" + } + }, + "required": [ + "identifier", + "name", + "type" + ] + }, + "FavoriteDTO": { + "type": "object", + "x-examples": { + "example-1": { + "org": "sample_organization", + "project": "sample_project", + "user_id": "example_userId", + "module": "example_module", + "resource_type": "example_resourceType", + "resource_id": "example_resourceId" + } + }, + "description": "This is the favorite entity defined in Harness", + "title": "FavoriteDTO", + "properties": { + "org": { + "type": "string", + "description": "Organization Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "user_id": { + "type": "string", + "description": "Identifier of the user.", + "minLength": 1, + "maxLength": 128 + }, + "module": { + "$ref": "#/components/schemas/ModuleType" + }, + "resource_type": { + "$ref": "#/components/schemas/FavoritesResourceType", + "description": "Type of resource", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "resource_id": { + "type": "string", + "description": "Resource Identifier of the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 256 + } + } + }, + "FavoriteResponse": { + "type": "object", + "x-examples": { + "example-1": { + "FavoriteDTO": { + "user_id": "example_userId", + "org": "sample_organization", + "project": "sample_project", + "resource_type": "Example_resourceType", + "resource_id": "This is a example resource" + }, + "created": 1234567890 + } + }, + "title": "FavoriteResponse", + "properties": { + "Favorite": { + "$ref": "#/components/schemas/FavoriteDTO" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for favorite." + } + } + }, + "ServiceResponse": { + "type": "object", + "x-examples": { + "example-1": { + "service": { + "account": "sample_account", + "identifier": "example_service", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + }, + "description": "Default response when a service is returned", + "title": "ServiceResponse", + "properties": { + "service": { + "$ref": "#/components/schemas/Service" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for Service." + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last modification timestamp for Service." + } + } + }, + "ServiceCreateRequest": { + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_service", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + } + }, + "title": "ServiceCreateRequest", + "description": "Service Request Body ", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Service", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Service", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the entity", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Service tags", + "maxProperties": 128 + }, + "yaml": { + "type": "string", + "description": "YAML for the Service Request" + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "ServiceUpdateRequest": { + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_service", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + } + }, + "title": "ServiceUpdateRequest", + "description": "Service Update Request Body ", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Service", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Service", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the entity", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Service tags", + "maxProperties": 128 + }, + "yaml": { + "type": "string", + "description": "YAML for the Service Request" + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "EnvironmentResponse": { + "type": "object", + "x-examples": { + "example-1": { + "service": { + "account": "sample_account", + "identifier": "example_environment", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_environment", + "description": "This is a example environment", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + }, + "description": "Default response when a environment is returned", + "title": "EnvironmentResponse", + "properties": { + "environment": { + "$ref": "#/components/schemas/Environment" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for environment." + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last modification timestamp for environment." + } + }, + "x-stoplight": { + "id": "8wkghgenuyufw" + } + }, + "EnvironmentCreateRequest": { + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_environment", + "name": "Example_environment", + "description": "This is a example environment", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\n" + } + }, + "title": "EnvironmentCreateRequest", + "description": "Environment Request Body ", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Environment", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Environment", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the Environment", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Environment tags", + "maxProperties": 128 + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType" + }, + "color": { + "type": "string", + "description": "Environment color" + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + }, + "yaml": { + "type": "string", + "description": "YAML for the Environment Request" + } + }, + "required": [ + "identifier", + "name", + "type" + ], + "x-stoplight": { + "id": "v1x9is61l27ki" + } + }, + "EnvironmentUpdateRequest": { + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_environment", + "name": "Example_environment", + "description": "This is a example environment", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\n" + } + }, + "title": "EnvironmentUpdateRequest", + "description": "Environment Update Request Body ", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Environment", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Environment", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the Environment", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Environment tags", + "maxProperties": 128 + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType" + }, + "color": { + "type": "string", + "description": "Environment color" + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + }, + "yaml": { + "type": "string", + "description": "YAML for the Environment Request" + } + }, + "required": [ + "identifier", + "name", + "type" + ], + "x-stoplight": { + "id": "stztl057sv571" + } + }, + "InfrastructureResponse": { + "type": "object", + "x-examples": { + "example-1": { + "infrastructure": { + "account": "sample_account", + "identifier": "example_infrastructure", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_infrastructure", + "description": "This is a example infrastructure", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + }, + "description": "Default response when a infrastructure is returned", + "title": "InfrastructureResponse", + "properties": { + "infrastructure": { + "$ref": "#/components/schemas/Infrastructure" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for infrastructure." + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last modification timestamp for infrastructure." + } + } + }, + "InfrastructureCreateRequest": { + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_infrastructure", + "name": "Example_infrastructure", + "description": "This is a example infrastructure", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "infrastructure:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\n" + } + }, + "title": "InfrastructureCreateRequest", + "description": "Infrastructure Request Body ", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Infrastructure", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Infrastructure", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the Infrastructure", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Infrastructure tags", + "maxProperties": 128 + }, + "type": { + "$ref": "#/components/schemas/InfrastructureType" + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + }, + "yaml": { + "type": "string", + "description": "YAML for the Infrastructure Request" + } + }, + "required": [ + "identifier", + "name", + "type", + "yaml" + ] + }, + "InfrastructureUpdateRequest": { + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_infrastructure", + "name": "Example_infrastructure", + "description": "This is a example infrastructure", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "infrastructure:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\n" + } + }, + "title": "InfrastructureUpdateRequest", + "description": "Infrastructure Update Request Body ", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Infrastructure", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name of the Infrastructure", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the Infrastructure", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Infrastructure tags", + "maxProperties": 128 + }, + "type": { + "$ref": "#/components/schemas/InfrastructureType" + }, + "harness_version": { + "type": "string", + "description": "version of harness yaml" + }, + "yaml": { + "type": "string", + "description": "YAML for the Infrastructure Request" + } + }, + "required": [ + "identifier", + "name", + "type", + "yaml" + ] + }, + "CreateOrganizationRequest": { + "type": "object", + "properties": { + "org": { + "$ref": "#/components/schemas/Organization" + } + }, + "required": [ + "org" + ] + }, + "Organization": { + "description": "Organization model", + "type": "object", + "properties": { + "identifier": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "description": "Organization identifier", + "maxLength": 128 + }, + "name": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "description": "Organization name", + "maxLength": 128 + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Organization description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Organization tags" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "ModuleType": { + "type": "string", + "description": "Type of Modules", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "CHAOS", + "CET", + "IDP", + "SSCA", + "SEI", + "CODE", + "HAR" + ] + }, + "FavoritesResourceType": { + "type": "string", + "enum": [ + "CONNECTOR", + "DELEGATE", + "PIPELINE", + "SECRET", + "PROJECT", + "IDPENTITY", + "IDPFLOWS" + ] + }, + "EnvironmentType": { + "type": "string", + "enum": [ + "PreProduction", + "Production" + ] + }, + "InfrastructureType": { + "type": "string", + "enum": [ + "KUBERNETES_DIRECT", + "KUBERNETES_GCP", + "KUBERNETES_AZURE", + "PDC", + "SSH_WINRM_AZURE", + "SERVERLESS_AWS_LAMBDA", + "AZURE_WEB_APP", + "SSH_WINRM_AWS", + "CUSTOM_DEPLOYMENT", + "ECS", + "ELASTIGROUP", + "TAS", + "ASG", + "GOOGLE_CLOUD_FUNCTIONS", + "AWS_SAM", + "AWS_LAMBDA", + "KUBERNETES_AWS", + "KUBERNETES_RANCHER" + ] + }, + "CreateProjectRequest": { + "description": "Create project request", + "type": "object", + "properties": { + "project": { + "$ref": "#/components/schemas/ProjectRequest" + } + }, + "required": [ + "project" + ] + }, + "ProjectRequest": { + "description": "Project model", + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_project_identifier", + "name": "example-project-name", + "color": "#0063F7", + "modules": [ + "CD" + ], + "description": "This is a example project", + "tags": { + "property1": "value1", + "property2": "value2" + } + } + }, + "properties": { + "identifier": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "description": "Project identifier", + "maxLength": 128 + }, + "name": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "description": "Project name", + "maxLength": 128 + }, + "color": { + "type": "string", + "description": "Project color" + }, + "modules": { + "type": "array", + "maxItems": 1024, + "description": "List of modules for project", + "items": { + "$ref": "#/components/schemas/ModuleType" + } + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Project description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Project tags" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "Project": { + "description": "Project model", + "type": "object", + "x-examples": { + "example-1": { + "identifier": "example_project_identifier", + "name": "example-project-name", + "org": "example_org_identifier", + "color": "#0063F7", + "modules": [ + "CD" + ], + "description": "This is a example project", + "tags": { + "property1": "value1", + "property2": "value2" + } + } + }, + "properties": { + "identifier": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "description": "Project identifier", + "maxLength": 128 + }, + "name": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "description": "Project name", + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Organization identifier for the project" + }, + "color": { + "type": "string", + "description": "Project color" + }, + "modules": { + "type": "array", + "maxItems": 1024, + "description": "List of modules for project", + "items": { + "$ref": "#/components/schemas/ModuleType" + } + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Project description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Project tags" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "ProjectResponse": { + "description": "Project response model", + "type": "object", + "properties": { + "project": { + "$ref": "#/components/schemas/Project" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for the project" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Updated timestamp for the project" + }, + "isFavorite": { + "type": "boolean", + "description": "True if its your favorite project" + } + } + }, + "OrganizationResponse": { + "title": "OrganizationResponse", + "type": "object", + "description": "Organization response Model", + "x-examples": { + "example-1": { + "org": { + "identifier": "example_organization", + "name": "Example Organization", + "description": "This is an Example Organization", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + } + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managed": true + } + }, + "properties": { + "org": { + "$ref": "#/components/schemas/Organization" + }, + "created": { + "type": "integer", + "description": "Creation timestamp for organization", + "format": "int64" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Updated timestamp for organization" + }, + "harness_managed": { + "type": "boolean", + "description": "This indicates if this organization is managed by Harness or not. If true, Harness can manage and modify this organization." + } + } + }, + "UpdateOrganizationRequest": { + "description": "Update oganization request", + "type": "object", + "properties": { + "org": { + "$ref": "#/components/schemas/Organization" + } + }, + "required": [ + "org" + ] + }, + "GitEntityFindInfoDTO": { + "type": "object", + "description": "Details to find Git Entity including Git Sync Config Id and Branch Name.", + "properties": { + "branch": { + "type": "string", + "description": "The branch name." + }, + "yamlGitConfigId": { + "type": "string", + "description": "Git Sync Config ID." + }, + "defaultFromOtherRepo": { + "type": "boolean", + "description": "If true, return all default entities." + }, + "parentEntityConnectorRef": { + "type": "string", + "description": "Connector ref of parent entity if remote." + }, + "parentEntityRepoName": { + "type": "string", + "description": "Repo name of parent entity if remote." + }, + "parentEntityAccountIdentifier": { + "type": "string", + "description": "Account identifier of parent entity." + }, + "parentEntityOrgIdentifier": { + "type": "string", + "description": "Organization identifier of parent entity." + }, + "parentEntityProjectIdentifier": { + "type": "string", + "description": "Project identifier of parent entity." + }, + "repoName": { + "type": "string", + "description": "Repository name." + } + } + }, + "UpdateProjectRequest": { + "description": "Update project request", + "type": "object", + "properties": { + "project": { + "$ref": "#/components/schemas/ProjectRequest" + } + }, + "required": [ + "project" + ] + }, + "SecretSpec": { + "title": "SecretSpec", + "type": "object", + "description": "Details of the secret defined in Harness", + "required": [ + "type" + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "SSHKeyPath": "#/components/schemas/SSHKeyPathSpec", + "SSHKeyReference": "#/components/schemas/SSHKeyReferenceSpec", + "SSHPassword": "#/components/schemas/SSHPasswordSpec", + "SSHKerberosTGTKeyTabFile": "#/components/schemas/SSHKerberosTGTKeyTabFileSpec", + "SSHKerberosTGTPassword": "#/components/schemas/SSHKerberosTGTPasswordSpec", + "SecretFile": "#/components/schemas/SecretFileSpec", + "SecretText": "#/components/schemas/SecretTextSpec", + "WinRmTGTKeyTabFile": "#/components/schemas/WinRmTGTKeyTabFileSpec", + "WinRmTGTPassword": "#/components/schemas/WinRmTGTPasswordSpec", + "WinRmNTLM": "#/components/schemas/WinRmNTLMSpec" + } + }, + "properties": { + "type": { + "type": "string", + "enum": [ + "SSHKeyPath", + "SSHKeyReference", + "SSHPassword", + "SSHKerberosTGTKeyTabFile", + "SSHKerberosTGTPassword", + "SecretFile", + "SecretText", + "WinRmTGTKeyTabFile", + "WinRmTGTPassword", + "WinRmNTLM" + ], + "description": "This specifies the type of secret" + } + } + }, + "SSHKeyPathSpec": { + "title": "SSHKeyPath", + "x-discriminator-value": "SSHKeyPath", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SSHKeyPath" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "description": "SSH port" + }, + "username": { + "type": "string", + "description": "SSH username" + }, + "key_path": { + "type": "string", + "description": "Path of the key file" + }, + "encrypted_passphrase": { + "type": "string", + "description": "This is the passphrase provided while creating the SSH key for local encryption" + } + }, + "required": [ + "type", + "username", + "key_path" + ] + } + ] + }, + "SSHKeyReferenceSpec": { + "title": "SSHKeyReference", + "x-discriminator-value": "SSHKeyReference", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SSHKeyReference" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "description": "SSH port" + }, + "username": { + "type": "string", + "description": "SSH username" + }, + "key": { + "type": "string", + "description": "SSH key" + }, + "encrypted_passphrase": { + "type": "string", + "description": "This is the passphrase provided while creating the SSH key for local encryption" + } + }, + "required": [ + "type", + "username" + ] + } + ] + }, + "SSHPasswordSpec": { + "title": "SSHPassword", + "x-discriminator-value": "SSHPassword", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SSHPassword" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "description": "SSH port" + }, + "username": { + "type": "string", + "description": "SSH username" + }, + "password": { + "type": "string", + "description": "SSH password" + } + }, + "required": [ + "type", + "username", + "password" + ] + } + ] + }, + "SSHKerberosTGTKeyTabFileSpec": { + "title": "SSHKerberosTGTKeyTabFile", + "x-discriminator-value": "SSHKerberosTGTKeyTabFile", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SSHKerberosTGTKeyTabFile" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "description": "SSH port" + }, + "principal": { + "type": "string", + "description": "Kerberos principal" + }, + "realm": { + "type": "string", + "description": "Kerberos realm" + }, + "key_path": { + "type": "string", + "description": "Kerberos keytab file path" + } + }, + "required": [ + "type" + ] + } + ] + }, + "SSHKerberosTGTPasswordSpec": { + "title": "SSHKerberosTGTPassword", + "x-discriminator-value": "SSHKerberosTGTPassword", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SSHKerberosTGTPassword" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "description": "SSH port" + }, + "principal": { + "type": "string", + "description": "Kerberos principal" + }, + "realm": { + "type": "string", + "description": "Kerberos realm" + }, + "password": { + "type": "string", + "description": "Kerberos password" + } + }, + "required": [ + "type" + ] + } + ] + }, + "SecretFileSpec": { + "title": "SecretFile", + "x-discriminator-value": "SecretFile", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SecretFile" + ], + "description": "This specifies the type of secret" + }, + "secret_manager_identifier": { + "type": "string", + "description": "Identifier of the secret manager used to manage the secret" + } + }, + "required": [ + "type", + "secret_manager_identifier" + ] + } + ] + }, + "SecretTextSpec": { + "title": "SecretText", + "x-discriminator-value": "SecretText", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SecretText" + ], + "description": "This specifies the type of secret" + }, + "secret_manager_identifier": { + "type": "string", + "description": "Identifier of the secret manager used to manage the secret" + }, + "value_type": { + "type": "string", + "enum": [ + "Inline", + "Reference" + ], + "description": "This has details to specify if the secret value is inline or referenced" + }, + "value": { + "type": "string", + "description": "Value of the Secret" + }, + "additional_metadata": { + "type": "object", + "properties": { + "values": { + "type": "object" + } + }, + "description": "Additional metadata of the secret if any exist" + } + }, + "required": [ + "type", + "secret_manager_identifier", + "value_type" + ] + } + ] + }, + "WinRmTGTKeyTabFileSpec": { + "title": "WinRmTGTKeyTabFile", + "x-discriminator-value": "WinRmTGTKeyTabFile", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "WinRmTGTKeyTabFile" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "default": 5986, + "description": "WinRm port" + }, + "principal": { + "type": "string", + "description": "Kerberos principal" + }, + "realm": { + "type": "string", + "description": "Kerberos realm" + }, + "key_path": { + "type": "string", + "description": "Keytab file path" + }, + "use_ssl": { + "type": "boolean", + "default": true, + "description": "This is the Kerberos either to use SSL/https" + }, + "skip_cert_checks": { + "type": "boolean", + "default": true, + "description": "This is the Kerberos either to skip certificate checks" + }, + "use_no_profile": { + "type": "boolean", + "description": "This is the Kerberos powershell runs without loading profile" + } + }, + "required": [ + "type" + ] + } + ] + }, + "WinRmTGTPasswordSpec": { + "title": "WinRmTGTPassword", + "x-discriminator-value": "WinRmTGTPassword", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "WinRmTGTPassword" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "default": 5986, + "description": "WinRm port" + }, + "principal": { + "type": "string", + "description": "Kerberos principal" + }, + "realm": { + "type": "string", + "description": "Kerberos realm" + }, + "password": { + "type": "string", + "description": "Kerberos password" + }, + "use_ssl": { + "type": "boolean", + "default": true, + "description": "This is the Kerberos either to use SSL/https" + }, + "skip_cert_checks": { + "type": "boolean", + "default": true, + "description": "This is the Kerberos either to skip certificate checks" + }, + "use_no_profile": { + "type": "boolean", + "description": "This is the Kerberos powershell runs without loading profile" + } + }, + "required": [ + "type" + ] + } + ] + }, + "WinRmNTLMSpec": { + "title": "WinRmNTLM", + "x-discriminator-value": "WinRmNTLM", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "WinRmNTLM" + ], + "description": "This specifies the type of secret" + }, + "port": { + "type": "integer", + "format": "int32", + "default": 5986, + "description": "WinRm port" + }, + "domain": { + "type": "string", + "description": "This is the NTLM domain name" + }, + "username": { + "type": "string", + "description": "This is the NTLM user name" + }, + "password": { + "type": "string", + "description": "This is the NTLM password" + }, + "use_ssl": { + "type": "boolean", + "default": true, + "description": "This is the NTLM either to use SSL/https" + }, + "skip_cert_checks": { + "type": "boolean", + "default": true, + "description": "This is the Kerberos either to skip certificate checks" + }, + "use_no_profile": { + "type": "boolean", + "description": "This is the Kerberos powershell runs without loading profile" + } + }, + "required": [ + "type", + "domain", + "username", + "password" + ] + } + ] + }, + "SecretRequest": { + "type": "object", + "properties": { + "secret": { + "$ref": "#/components/schemas/Secret" + } + }, + "required": [ + "secret" + ] + }, + "Secret": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Secret name", + "pattern": "^[0-9a-zA-Z-_ ]{0,127}$" + }, + "identifier": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$-]{0,127}$", + "description": "Secret identifier", + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Organization identifier for secret", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$" + }, + "project": { + "type": "string", + "description": "Project identifier for secret", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Secret tags" + }, + "description": { + "type": "string", + "description": "Secret description" + }, + "spec": { + "$ref": "#/components/schemas/SecretSpec" + } + }, + "required": [ + "name", + "identifier", + "spec" + ] + }, + "SecretResponse": { + "title": "SecretResponse", + "type": "object", + "properties": { + "secret": { + "$ref": "#/components/schemas/Secret" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for the secret" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Updated timestamp for the secret" + }, + "draft": { + "type": "boolean" + }, + "governance_metadata": { + "type": "object", + "description": "Governance metadata information" + } + }, + "description": "Secret response model" + }, + "ModuleVersionsResponse": { + "title": "Module Versions Response Body", + "type": "object", + "description": "Module Versions Response Body", + "properties": { + "name": { + "type": "string", + "description": "Module name" + }, + "version": { + "type": "string", + "description": "Module version" + }, + "display_name": { + "type": "string", + "description": "Module display name" + }, + "updated": { + "type": "string", + "description": "Module updated at" + }, + "version_url": { + "type": "string", + "description": "Module version URL" + }, + "release_notes_link": { + "type": "string", + "description": "Module Release Notes link" + }, + "microservices_version_info": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MicroserviceVersionInfo" + } + } + } + }, + "MicroserviceVersionInfo": { + "title": "Microservice Version Info", + "x-stoplight": { + "id": "bmqfflnoo0jid" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Microservices name" + }, + "version": { + "type": "string", + "description": "Microservices version URL" + }, + "version_url": { + "type": "string", + "description": "Microservices version" + } + }, + "description": "Microservice Version Info" + }, + "SecretValidationMetadata": { + "title": "SecretValidationMetadata", + "type": "object", + "description": "Details of the secret reference", + "properties": { + "secret_manager_identifier": { + "type": "string", + "description": "Identifier of the secretManager" + }, + "secret_ref_path": { + "type": "string", + "description": "Path to the secret present which needs to be referenced." + } + }, + "required": [ + "secretManagerIdentifer", + "secretRefPath" + ] + }, + "SecretValidationResponse": { + "title": "SecretValidationResponse", + "type": "object", + "description": "Response of the secret reference validation", + "properties": { + "success": { + "type": "boolean" + }, + "message": { + "type": "string", + "description": "Secret reference path validation result" + } + } + }, + "EulaSignRequest": { + "title": "EulaSignRequest", + "type": "object", + "description": "Details of an Agreement to be Signed", + "properties": { + "agreement_type": { + "$ref": "#/components/schemas/AgreementType", + "description": "Type of Agreement" + } + }, + "required": [ + "agreement_type" + ] + }, + "AgreementType": { + "type": "string", + "description": "Type of Agreement", + "enum": [ + "AIDA" + ] + }, + "EulaSignResponse": { + "title": "EulaSignResponse", + "type": "object", + "description": "Response of signing an End User License Agreement", + "properties": { + "signed": { + "type": "boolean" + }, + "message": { + "type": "string", + "description": "Signing an End User License Agreement result" + } + } + }, + "IPAllowlistConfig": { + "title": "IPAllowlistConfig", + "x-stoplight": { + "id": "z54w7edwpccca" + }, + "type": "object", + "description": "This contains data for a config set in Harness to allow selected IPs", + "properties": { + "name": { + "type": "string", + "description": "Name of the IP Config defined in Harness", + "pattern": "^[0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier of the IP Config", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "enabled": { + "type": "boolean", + "default": false, + "description": "If true, it will allow all the IPs that are part of the config and block others." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "IP Allowlist tags", + "maxProperties": 128 + }, + "allowed_source_type": { + "type": "array", + "uniqueItems": true, + "items": { + "$ref": "#/components/schemas/AllowedSourceType" + } + }, + "ip_address": { + "type": "string" + } + }, + "required": [ + "name", + "identifier", + "ip_address" + ] + }, + "AllowedSourceType": { + "title": "AllowedSourceType", + "x-stoplight": { + "id": "j4g1a19tpiovc" + }, + "type": "string", + "enum": [ + "UI", + "API" + ], + "description": "This denotes source from which IPs are allowed." + }, + "IPAllowlistConfigRequest": { + "title": "IPAllowlistConfigRequest", + "x-stoplight": { + "id": "gmdedmqicwsx4" + }, + "type": "object", + "description": "This is the request spec to create IP Allowlist config in Harness", + "properties": { + "ip_allowlist_config": { + "$ref": "#/components/schemas/IPAllowlistConfig" + } + } + }, + "IPAllowlistConfigResponse": { + "title": "IPAllowlistConfigResponse", + "x-stoplight": { + "id": "9rirmo68rh6st" + }, + "type": "object", + "properties": { + "ip_allowlist_config": { + "$ref": "#/components/schemas/IPAllowlistConfig" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for the IP Allowlist config." + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last modification timestamp for IP Allowlist config." + } + }, + "required": [ + "ip_allowlist_config", + "created", + "updated" + ] + }, + "IPAllowlistConfigValidateResponse": { + "title": "IPAllowlistConfigValidateResponse", + "x-stoplight": { + "id": "smtu2jgnoz1up" + }, + "type": "object", + "properties": { + "allowed_for_custom_block": { + "type": "boolean", + "description": "This indicates if given IP Address lies in range of custom IP block or not." + }, + "allowlisted_configs": { + "type": "array", + "description": "This is the list of IP configs configured in Harness from which IP address is allowed. This is empty in case of custom IP address block.\n", + "items": { + "$ref": "#/components/schemas/IPAllowlistConfigResponse" + } + }, + "allowed_for_ui": { + "type": "boolean", + "description": "This indicates if a given IP is allowlisted in Harness for UI requests" + }, + "allowed_for_api": { + "type": "boolean", + "description": "This indicates if a given IP is allowlisted in Harness for API requests" + }, + "disabled_allowlisted_configs": { + "type": "array", + "description": "This is the list of IP configs configured in Harness from which IP address is allowed but the config is disabled. This is empty in case of custom IP address block.\n", + "items": { + "$ref": "#/components/schemas/IPAllowlistConfigResponse" + } + } + } + }, + "ManifestsResponseDTO": { + "title": "ManifestsResponseDTO", + "type": "object", + "properties": { + "identifiers": { + "type": "array", + "description": "List of Manifest Identifiers", + "items": { + "type": "string" + } + } + }, + "description": "ManifestsResponseDTO returns a list of manifest identifiers from a service's eligible primary manifests.", + "x-internal": false, + "x-examples": { + "Example 1": { + "identifiers": [ + "id1", + "id2" + ] + } + } + }, + "CreateGitXWebhookRequest": { + "title": "CreateGitXWebhookRequest", + "x-stoplight": { + "id": "dfl2rgteqjv9l" + }, + "type": "object", + "description": "Contains information about the GitX webhook creation request", + "properties": { + "webhook_identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$" + }, + "repo_name": { + "type": "string" + }, + "connector_ref": { + "type": "string" + }, + "folder_paths": { + "type": "array", + "items": { + "type": "string" + } + }, + "webhook_name": { + "type": "string", + "pattern": "^[0-9a-zA-Z-_ ]{0,127}$" + } + } + }, + "CreateGitXWebhookResponse": { + "title": "CreateGitXWebhookResponse", + "x-stoplight": { + "id": "x9148732e2m4l" + }, + "type": "object", + "description": "Contains information about the GitX webhook creation ", + "properties": { + "webhook_identifier": { + "type": "string" + } + } + }, + "UpdateGitXWebhookRequest": { + "title": "UpdateGitXWebhookRequest", + "x-stoplight": { + "id": "4muh4be0aj4te" + }, + "type": "object", + "description": "Contains information about the GitX webhook updation ", + "properties": { + "repo_name": { + "type": "string" + }, + "webhook_name": { + "type": "string" + }, + "folder_paths": { + "type": "array", + "items": { + "type": "string" + } + }, + "is_enabled": { + "type": "boolean" + }, + "connector_ref": { + "type": "string" + } + } + }, + "UpdateGitXWebhookResponse": { + "title": "UpdateGitXWebhookResponse", + "x-stoplight": { + "id": "ne0fmq08o05bg" + }, + "type": "object", + "description": "Contains information about the GitX webhook updation ", + "properties": { + "webhook_identifier": { + "type": "string" + } + } + }, + "GitXWebhookResponse": { + "title": "GitXWebhookResponse", + "x-stoplight": { + "id": "vkv1a5drhxln9" + }, + "type": "object", + "description": "Contains information about the GitX webhooks ", + "properties": { + "webhook_identifier": { + "type": "string" + }, + "webhook_name": { + "type": "string" + }, + "connector_ref": { + "type": "string" + }, + "repo_name": { + "type": "string" + }, + "folder_paths": { + "type": "array", + "items": { + "type": "string" + } + }, + "is_enabled": { + "type": "boolean" + }, + "event_trigger_time": { + "type": "integer", + "format": "int64" + } + } + }, + "GitXWebhookEventResponse": { + "title": "GitXWebhookEventResponse", + "x-stoplight": { + "id": "kcprstctf6ja6" + }, + "type": "object", + "description": "Contains information about the GitX webhook Events", + "properties": { + "author_name": { + "type": "string" + }, + "event_identifier": { + "type": "string" + }, + "webhook_identifier": { + "type": "string" + }, + "payload": { + "type": "string" + }, + "event_trigger_time": { + "type": "integer", + "format": "int64" + }, + "repo_name": { + "type": "string" + }, + "event_status": { + "type": "string", + "enum": [ + "SKIPPED", + "FAILED", + "QUEUED", + "SUCCESSFUL", + "PROCESSING", + "WARNING", + "UNKNOWN" + ] + }, + "commit_message": { + "type": "string", + "x-stoplight": { + "id": "12a2uyvbqq1wj" + } + }, + "commit_id": { + "type": "string", + "x-stoplight": { + "id": "slrl29uhxanaz" + } + }, + "commit_url": { + "type": "string" + }, + "file_count": { + "type": "integer", + "x-stoplight": { + "id": "t6r1ww64hy73r" + } + }, + "failure_file_count": { + "type": "integer", + "x-stoplight": { + "id": "gp3tw3rci44n0" + } + }, + "branch": { + "type": "string", + "x-stoplight": { + "id": "yaxr6jkdztqyq" + } + } + } + }, + "DeleteGitXWebhookResponse": { + "title": "DeleteGitXWebhookResponse", + "x-stoplight": { + "id": "bnhbfd0j7x6ag" + }, + "type": "object", + "description": "Contains information about the GitX webhooks that was deleted.", + "properties": { + "webhook_identifier": { + "type": "string" + } + } + }, + "ReleaseDetailsResponse": { + "title": "ReleaseDetailsResponse", + "x-stoplight": { + "id": "dwib2397lfhgo" + }, + "type": "object", + "x-examples": { + "Example 1": { + "_id": {}, + "account": "account", + "org": "org", + "project": "project", + "release_key": "release_key", + "service_details": { + "service_id": "k8sservice", + "service_name": "k8s service", + "org": "orgid", + "project": "projectid" + }, + "environment_details": { + "env_id": "k8senv", + "env_name": "k8s env", + "org": "orgid", + "project": "projectid", + "connector_ref": "string", + "infra_name": "infra_name", + "infra_id": "infra_id", + "infrastructure_kind": "K8sDirect" + } + } + }, + "description": "Response model of single release details", + "properties": { + "_id": { + "type": "object" + }, + "account": { + "type": "string" + }, + "org": { + "type": "string" + }, + "project": { + "type": "string" + }, + "release_key": { + "type": "string" + }, + "service_details": { + "$ref": "#/components/schemas/ReleaseServiceDetails" + }, + "environment_details": { + "$ref": "#/components/schemas/ReleaseEnvDetails" + } + } + }, + "BatchReleaseDetailsResponse": { + "title": "BatchReleaseDetailsResponse", + "x-stoplight": { + "id": "kg0byl39j3q3k" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/ReleaseDetailsResponse" + }, + "x-examples": { + "Example 1": [ + { + "_id": {}, + "account": "account", + "org": "org", + "project": "project", + "release_key": "release_key", + "service_details": { + "service_id": "k8sservice", + "service_name": "k8s service", + "org": "orgid", + "project": "projectid" + }, + "environment_details": { + "env_id": "k8senv", + "env_name": "k8s env", + "org": "orgid", + "project": "projectid", + "connector_ref": "string", + "infra_name": "infra_name", + "infra_id": "infra_id", + "infrastructure_kind": "K8sDirect" + } + } + ] + }, + "description": "Response model of Batch release details" + }, + "ReleaseServiceDetails": { + "title": "ReleaseServiceDetails", + "x-stoplight": { + "id": "bm6tau937r4gy" + }, + "type": "object", + "x-examples": { + "Example 1": { + "service_id": "serviceid", + "service_name": "k8sManifestService", + "org": "orgid", + "project": "projectid" + } + }, + "description": "Response model of service release details", + "properties": { + "service_id": { + "type": "string" + }, + "service_name": { + "type": "string" + }, + "org": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "ReleaseEnvDetails": { + "title": "ReleaseEnvDetails", + "x-stoplight": { + "id": "j2ei3sszd3fma" + }, + "type": "object", + "description": "Response model of environment release details", + "x-examples": { + "Example 1": { + "env_id": "env1", + "env_name": "envname", + "org": "org", + "project": "project", + "connector_ref": "k8sDirectConnector", + "infra_name": "infra1", + "infra_id": "infraid", + "infrastructureKind": "K8sDirect" + } + }, + "properties": { + "env_id": { + "type": "string" + }, + "env_name": { + "type": "string" + }, + "org": { + "type": "string" + }, + "project": { + "type": "string" + }, + "connector_ref": { + "type": "string" + }, + "infra_name": { + "type": "string" + }, + "infra_id": { + "type": "string" + }, + "infrastructure_kind": { + "type": "string" + } + } + }, + "ReleaseDetailsRequest": { + "title": "ReleaseDetailsRequest", + "x-stoplight": { + "id": "dbiy8u97r6ik0" + }, + "type": "object", + "description": "Contains information regarding a single release details required", + "x-examples": { + "Example 1": { + "namespace": "default", + "release_name": "release-pre-deployment-todolist" + } + }, + "properties": { + "namespace": { + "type": "string" + }, + "release_name": { + "type": "string" + } + } + }, + "UpdateGitXWebhookEventRequest": { + "title": "UpdateGitXWebhookEventRequest", + "x-stoplight": { + "id": "obt3lz7g85gic" + }, + "type": "object", + "description": "Update GitX Webhook Event Request", + "properties": { + "event_status": { + "type": "string", + "x-stoplight": { + "id": "mdqi6s78z7g1i" + } + } + } + }, + "CertificateDTO": { + "title": "CertificateDTO", + "x-stoplight": { + "id": "l9q8ph7p1mi4o" + }, + "description": "This is the request dto to create a Certificate in Harness", + "allOf": [ + { + "$ref": "#/components/schemas/CertificateInfoDTO" + }, + { + "type": "object", + "properties": { + "input_spec": { + "$ref": "#/components/schemas/CertificateInputSpecDTO" + } + }, + "required": [ + "input_spec" + ] + } + ] + }, + "CertificateInfoDTO": { + "title": "CertificateInfoDTO", + "x-stoplight": { + "id": "o43wu1pwo0n40" + }, + "type": "object", + "description": "This is the Certificate Entity in Harness", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "5s4lvxucs4340" + }, + "description": "Name for the Entity.", + "pattern": "^[0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "hr2a03wdanpjs" + }, + "description": "Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "mo4zkt909dmyx" + }, + "description": "Organization Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "ykyl1jrjm5yae" + }, + "description": "Project Identifier for the Entity.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "certificate_value": { + "type": "string", + "x-stoplight": { + "id": "xmkfxyqoijdcd" + }, + "description": "Certificate Content (Read only field whose value is populated only in response)", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-stoplight": { + "id": "bignws4547i7g" + }, + "description": "Certificate tags" + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "enyo3ngtqsypb" + } + } + }, + "required": [ + "name", + "identifier" + ] + }, + "CertificateInputSpecDTO": { + "title": "CertificateInputSpecDTO", + "x-stoplight": { + "id": "0d1izu97xpl66" + }, + "type": "object", + "discriminator": { + "propertyName": "type", + "mapping": { + "TEXT": "#/components/schemas/TextCertificateInputSpecDTO", + "FILE": "#/components/schemas/FileCertificateInputSpecDTO" + } + }, + "properties": { + "type": { + "$ref": "#/components/schemas/CertificateInputSpecType" + } + }, + "required": [ + "type" + ], + "description": "" + }, + "TextCertificateInputSpecDTO": { + "title": "TextCertificateInputSpecDTO", + "x-stoplight": { + "id": "d701noymmmnvu" + }, + "allOf": [ + { + "$ref": "#/components/schemas/CertificateInputSpecDTO" + }, + { + "type": "object", + "x-stoplight": { + "id": "eywbr9ncc8jor" + }, + "properties": { + "value": { + "type": "string", + "x-stoplight": { + "id": "67cnzqv4oarfk" + } + } + }, + "required": [ + "value" + ] + } + ], + "description": "This DTO defines the fields required when creating a certificate by passing it as text.", + "x-discriminator-value": "TEXT" + }, + "FileCertificateInputSpecDTO": { + "title": "FileCertificateInputSpecDTO", + "x-stoplight": { + "id": "lzs8geqg3peyv" + }, + "allOf": [ + { + "$ref": "#/components/schemas/CertificateInputSpecDTO" + } + ], + "description": "This DTO defines the fields required when creating a certificate by passing it as text.", + "x-discriminator-value": "FILE" + }, + "CertificateResponseDTO": { + "title": "CertificateResponseDTO", + "x-stoplight": { + "id": "08arjpkqc1kl4" + }, + "type": "object", + "properties": { + "certificate": { + "$ref": "#/components/schemas/CertificateDTO" + }, + "certificate_details": { + "$ref": "#/components/schemas/CertificateDetailsDTO" + }, + "created": { + "type": "integer", + "x-stoplight": { + "id": "1la1qxtgvwuuj" + }, + "format": "int64" + }, + "updated": { + "type": "integer", + "x-stoplight": { + "id": "dzphxs7u5apmm" + }, + "format": "int64" + } + }, + "required": [ + "certificate", + "certificate_details" + ] + }, + "CertificateDetailsDTO": { + "title": "CertificateDetailsDTO", + "x-stoplight": { + "id": "mlof3rn4vqe64" + }, + "type": "object", + "properties": { + "issued_to": { + "$ref": "#/components/schemas/CertificateIssuanceInfo" + }, + "issued_by": { + "$ref": "#/components/schemas/CertificateIssuanceInfo" + }, + "valid_from": { + "type": "integer", + "x-stoplight": { + "id": "j5a9tcl5i3a2o" + }, + "format": "int64" + }, + "valid_to": { + "type": "integer", + "x-stoplight": { + "id": "1339ez6fx8l2g" + }, + "format": "int64" + }, + "signature_algo": { + "type": "string", + "x-stoplight": { + "id": "rx7w596wytqr3" + } + } + } + }, + "CertificateInputSpecType": { + "title": "CertificateInputSpecType", + "x-stoplight": { + "id": "nhxqu9kwgv634" + }, + "type": "string", + "enum": [ + "TEXT", + "FILE" + ], + "description": "This defines different ways a certificate can be created" + }, + "CertificateIssuanceInfo": { + "title": "CertificateIssuanceInfo", + "x-stoplight": { + "id": "ag74zjmlc3qyp" + }, + "type": "object", + "properties": { + "common_name": { + "type": "string", + "x-stoplight": { + "id": "ei027bhkq7cam" + } + }, + "organization": { + "type": "string", + "x-stoplight": { + "id": "anat62b0vdzp7" + } + }, + "organizational_unit": { + "type": "string", + "x-stoplight": { + "id": "1ll9qrdntms7o" + } + } + } + }, + "BannerDTO": { + "title": "BannerDTO", + "x-stoplight": { + "id": "bjkd0178m4ic6" + }, + "type": "object", + "description": "This is the request dto to create a Banner in Harness", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "izz4aokqklu02" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "ext4ub1eyfa2d" + } + }, + "enabled": { + "type": "boolean", + "x-stoplight": { + "id": "o1bqftrzgja8o" + }, + "default": false + }, + "intent": { + "$ref": "#/components/schemas/BannerIntent" + }, + "title": { + "type": "string", + "x-stoplight": { + "id": "f13e2ake7hr2e" + }, + "maxLength": 80, + "description": "Banner Title with max length 80" + }, + "message": { + "type": "string", + "x-stoplight": { + "id": "8kabcedzxhhao" + }, + "maxLength": 250, + "description": "Banner Message with max length 250" + }, + "callToActions": { + "type": "object", + "x-stoplight": { + "id": "gjergkzmibzw3" + } + } + }, + "required": [ + "name", + "identifier", + "intent", + "title", + "message" + ] + }, + "BannerIntent": { + "title": "BannerIntent", + "x-stoplight": { + "id": "0lz494izh75cr" + }, + "type": "string", + "enum": [ + "INFORMATIONAL", + "HIGH", + "MEDIUM", + "LOW" + ], + "description": "enum for \"intent\" field in BannerDTO" + }, + "BannerResponseDTO": { + "title": "BannerResponseDTO", + "x-stoplight": { + "id": "8farxrnz2d6o3" + }, + "type": "object", + "properties": { + "banner": { + "$ref": "#/components/schemas/BannerDTO" + }, + "created": { + "type": "integer", + "x-stoplight": { + "id": "w5vpxgir9xee8" + }, + "format": "int64" + }, + "updated": { + "type": "integer", + "x-stoplight": { + "id": "6wuncr0735opi" + }, + "format": "int64" + } + }, + "required": [ + "banner" + ] + }, + "LdapSettingsDTO": { + "title": "LdapSettingsDTO", + "x-stoplight": { + "id": "f8znhldy5ze5v" + }, + "type": "object", + "description": "Ldap Settings DTO", + "required": [ + "account_identifier", + "identifier", + "name" + ], + "properties": { + "account_identifier": { + "type": "string", + "x-stoplight": { + "id": "8qppu3sep0fvz" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "62ki9cggzt1jm" + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "ce8y7fyupcwie" + } + }, + "disabled": { + "type": "boolean", + "x-stoplight": { + "id": "vlqp8sh98y08b" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "3dwefjtun1rn1" + } + }, + "cron_expression": { + "type": "string", + "x-stoplight": { + "id": "9v59g4w3hg5wo" + } + }, + "ldap_connection_settings": { + "$ref": "#/components/schemas/LdapConnectionSettingsDTO" + }, + "ldap_user_settings": { + "type": "array", + "x-stoplight": { + "id": "q2qnvvvats82o" + }, + "items": { + "$ref": "#/components/schemas/LdapUserSettingsDTO" + } + }, + "ldap_group_settings": { + "type": "array", + "x-stoplight": { + "id": "e38bwrq8oy07r" + }, + "items": { + "$ref": "#/components/schemas/LdapGroupSettingsDTO" + } + }, + "sso_type": { + "type": "string", + "x-stoplight": { + "id": "xdgeaawghtmno" + } + } + } + }, + "LdapUserSettingsDTO": { + "title": "LdapUserSettingsDTO", + "x-stoplight": { + "id": "z57exi0ztqq9a" + }, + "type": "object", + "description": "Ldap User Settings DTO", + "properties": { + "base_d_n": { + "type": "string", + "x-stoplight": { + "id": "wfuahenplizat" + } + }, + "search_filter": { + "type": "string", + "x-stoplight": { + "id": "y3wrrf6vz37z2" + } + }, + "uid_attr": { + "type": "string", + "x-stoplight": { + "id": "nuqp9fo5w05iy" + } + }, + "sam_account_name_attr": { + "type": "string", + "x-stoplight": { + "id": "yb9qmhbz1mffp" + } + }, + "email_attr": { + "type": "string", + "x-stoplight": { + "id": "drfzqz8mpu1ou" + } + }, + "display_name_attr": { + "type": "string", + "x-stoplight": { + "id": "zs09zxyk5phg6" + } + }, + "group_membership_attr": { + "type": "string", + "x-stoplight": { + "id": "5qa5pc978l4o4" + } + } + } + }, + "LdapConnectionSettingsDTO": { + "title": "LdapConnectionSettingsDTO", + "x-stoplight": { + "id": "sk8ot06b5sety" + }, + "type": "object", + "description": "Ldap Connection Settings DTO", + "properties": { + "host": { + "type": "string", + "x-stoplight": { + "id": "i5rmxd4zc7128" + } + }, + "port": { + "type": "integer", + "x-stoplight": { + "id": "ealsta50aysfs" + } + }, + "ssl_enabled": { + "type": "boolean", + "x-stoplight": { + "id": "l9ucsqzqz65de" + } + }, + "referrals_enabled": { + "type": "boolean", + "x-stoplight": { + "id": "g8e480fibh1p2" + } + }, + "secret_ref_path": { + "type": "string", + "x-stoplight": { + "id": "3lrfk14jzy69x" + } + }, + "max_referral_hops": { + "type": "integer", + "x-stoplight": { + "id": "twu8lt66e08tz" + } + }, + "connection_timeout": { + "type": "integer", + "x-stoplight": { + "id": "p8kjsb8doifih" + } + }, + "response_timeout": { + "type": "integer", + "x-stoplight": { + "id": "2ersoqf1fspni" + } + }, + "use_recursive_group_membership_search": { + "type": "boolean", + "x-stoplight": { + "id": "wvps1gevlwqa0" + } + }, + "bind_d_n": { + "type": "string", + "x-stoplight": { + "id": "m41ae2qg2kusj" + } + }, + "delegate_selectors": { + "type": "array", + "x-stoplight": { + "id": "yagarnzxe76av" + }, + "items": { + "x-stoplight": { + "id": "wh3l7x013ckkn" + }, + "type": "string" + } + } + } + }, + "LdapGroupSettingsDTO": { + "title": "LdapGroupSettingsDTO", + "x-stoplight": { + "id": "s1809t4lth330" + }, + "type": "object", + "description": "Ldap Group Settings DTO", + "properties": { + "base_d_n": { + "type": "string", + "x-stoplight": { + "id": "2vl2n5ez5kkcf" + } + }, + "search_filter": { + "type": "string", + "x-stoplight": { + "id": "3qft0ce07rero" + } + }, + "name_attr": { + "type": "string", + "x-stoplight": { + "id": "hae6bbgmjtxst" + } + }, + "description_attr": { + "type": "string", + "x-stoplight": { + "id": "xpf6h6kvblidv" + } + }, + "user_membership_attr": { + "type": "string", + "x-stoplight": { + "id": "h7mf9q80034ei" + } + }, + "referenced_user_attr": { + "type": "string", + "x-stoplight": { + "id": "lszd5uip1q5gs" + } + } + } + }, + "LdapSettingsRequest": { + "title": "LdapSettingsRequest", + "x-stoplight": { + "id": "gjqwk2pmix9vu" + }, + "type": "object", + "properties": { + "ldap_settings": { + "$ref": "#/components/schemas/LdapSettingsDTO" + } + } + }, + "LdapSettingsResponse": { + "title": "LdapSettingsResponse", + "x-stoplight": { + "id": "ra1gzj4t8u9w3" + }, + "type": "object", + "properties": { + "ldap_settings": { + "$ref": "#/components/schemas/LdapSettingsDTO" + }, + "created": { + "type": "integer", + "x-stoplight": { + "id": "tbd3xz9v3adk5" + }, + "format": "int64" + }, + "last_modified": { + "type": "integer", + "x-stoplight": { + "id": "mxo2ysfo8d5k2" + }, + "format": "int64" + } + } + }, + "LdapValidateResponseDTO": { + "title": "LdapValidateResponseDTO", + "x-stoplight": { + "id": "lkcy3ohrgij3e" + }, + "type": "object", + "description": "Ldap Validate Response DTO", + "properties": { + "message": { + "type": "string", + "x-stoplight": { + "id": "x7s66994hwdmg" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "spkzkdo8p00u8" + }, + "enum": [ + "SUCCESS", + "FAILURE" + ] + } + } + }, + "LdapGroupResponseDTO": { + "title": "LdapGroupResponseDTO", + "x-stoplight": { + "id": "ag80fl4djk8u7" + }, + "type": "object", + "properties": { + "dn": { + "type": "string", + "x-stoplight": { + "id": "fb8ur4bakp95d" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "ezgerm7dbzalu" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "3cynjss7jge6c" + } + }, + "total_members": { + "type": "integer", + "x-stoplight": { + "id": "607akg5zkmwd5" + } + }, + "message": { + "type": "string", + "x-stoplight": { + "id": "4fyyiyx1tigej" + } + } + }, + "description": "LdapGroupResponse" + }, + "UserGroupDTO": { + "title": "UserGroupDTO", + "x-stoplight": { + "id": "809ed71ctxw4g" + }, + "type": "object", + "description": "User Group DTO", + "properties": { + "account_identifier": { + "type": "string", + "x-stoplight": { + "id": "izybl5ndyou6l" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "8zscs32ljrqlh" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "zckgqa40bii85" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "71xnxf5lmbo19" + } + }, + "is_sso_linked": { + "type": "boolean", + "x-stoplight": { + "id": "jrzpdhkukejp6" + } + }, + "linked_sso_type": { + "type": "boolean", + "x-stoplight": { + "id": "x2ss9gzmisdxe" + } + }, + "linked_sso_id": { + "type": "boolean", + "x-stoplight": { + "id": "cyvwp3kmu2qfs" + } + }, + "linked_sso_display_name": { + "type": "string", + "x-stoplight": { + "id": "dja5o8cdrz0ul" + } + }, + "sso_group_id": { + "type": "string", + "x-stoplight": { + "id": "ni3iyd67b31i5" + } + }, + "sso_group_name": { + "type": "string", + "x-stoplight": { + "id": "3rr7v12c2xapx" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "d4d4zjg9l2d2p" + } + }, + "users": { + "type": "array", + "x-stoplight": { + "id": "ol1or1092op6l" + }, + "items": { + "x-stoplight": { + "id": "3s9neyuurscsv" + }, + "type": "string" + } + }, + "notification_configs": { + "type": "array", + "x-stoplight": { + "id": "8a4qp4lj2nmkc" + }, + "items": { + "$ref": "#/components/schemas/NotificationSettingConfigDTO" + } + }, + "externally_managed": { + "type": "boolean", + "x-stoplight": { + "id": "oqy81utjz3qmf" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "hc4inmpqjcfsi" + } + }, + "tags": { + "type": "array", + "x-stoplight": { + "id": "4dtahmt1tenew" + }, + "items": { + "x-stoplight": { + "id": "llx1wlnfosa3x" + }, + "type": "string" + } + }, + "harness_managed": { + "type": "boolean", + "x-stoplight": { + "id": "sm26t4i5t4kcf" + } + } + } + }, + "NotificationSettingConfigDTO": { + "title": "NotificationSettingConfigDTO", + "x-stoplight": { + "id": "rhy104v0cjttt" + }, + "type": "object", + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "ets95lazoqt1o" + } + } + } + }, + "LinkSSOGroupRequestDTO": { + "title": "LinkSSOGroupRequestDTO", + "x-stoplight": { + "id": "9nq8edmxoq01f" + }, + "type": "object", + "properties": { + "sso_id": { + "type": "string", + "x-stoplight": { + "id": "ytazjgz12l17u" + } + }, + "sso_group_id": { + "type": "string", + "x-stoplight": { + "id": "gqw1001ki7ni6" + } + }, + "sso_group_name": { + "type": "string", + "x-stoplight": { + "id": "fkrxfo9iz681u" + } + } + }, + "description": "" + }, + "UnlinkSSOGroupRequestDTO": { + "title": "UnlinkSSOGroupRequestDTO", + "x-stoplight": { + "id": "99zgtjmcs8t67" + }, + "type": "object", + "properties": { + "retain_members": { + "type": "boolean", + "x-stoplight": { + "id": "yyqh40xyuksld" + } + } + } + }, + "LdapSettingsIterations": { + "title": "LdapSettingsIterations", + "x-stoplight": { + "id": "fm7tb4yt6xber" + }, + "type": "object", + "properties": { + "iterations": { + "type": "array", + "x-stoplight": { + "id": "1p2rv44mibkb5" + }, + "items": { + "x-stoplight": { + "id": "bl9mqhxdepfe5" + }, + "type": "integer", + "format": "int64" + } + } + } + }, + "CronExpressionRequestDTO": { + "title": "CronExpressionRequestDTO", + "x-stoplight": { + "id": "w60gppl5cy5uu" + }, + "type": "object", + "properties": { + "cron": { + "type": "string", + "x-stoplight": { + "id": "gje1x6922v6fd" + } + } + } + }, + "LdapTestLoginResponseDTO": { + "title": "LdapTestLoginResponseDTO", + "x-stoplight": { + "id": "qyovi99w6fhk5" + }, + "type": "object", + "properties": { + "message": { + "type": "string", + "x-stoplight": { + "id": "ffhbs5s2f4g5u" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "j8e7dfj2vqvic" + }, + "enum": [ + "SUCCESS", + "FAILURE" + ] + } + } + }, + "LdapTestLoginRequestDTO": { + "title": "LdapTestLoginRequestDTO", + "x-stoplight": { + "id": "o4dbv260dkvc3" + }, + "type": "object", + "properties": { + "email": { + "type": "string", + "x-stoplight": { + "id": "ov0ic5u510oql" + } + }, + "password": { + "type": "string", + "x-stoplight": { + "id": "r1c8uwaviczpl" + } + } + } + }, + "GetGitXWebhookEventFileValidationResponse": { + "title": "GetGitXWebhookEventFileValidationResponse", + "x-stoplight": { + "id": "bq4d9by7xkllw" + }, + "type": "object", + "description": "Get GitX Webhook Event File Validation Response", + "properties": { + "file_path": { + "type": "string" + }, + "file_url": { + "type": "string" + }, + "file_action_type": { + "type": "string", + "enum": [ + "ADDED", + "MODIFIED", + "DELETED" + ] + }, + "entity_details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityDetails" + } + } + } + }, + "ErrorMetadata1": { + "title": "ErrorMetadata", + "x-stoplight": { + "id": "k44xlbscpqhti" + }, + "type": "object", + "description": "Error meta data", + "properties": { + "error_message": { + "type": "string", + "x-stoplight": { + "id": "kkpconlup6wwr" + } + }, + "hint": { + "type": "string", + "x-stoplight": { + "id": "k6z0qdp0rmuw4" + } + }, + "explanation": { + "type": "string", + "x-stoplight": { + "id": "f3q0sm25vvdyp" + } + } + } + }, + "EntityMetadata": { + "title": "EntityMetadata", + "type": "object", + "description": "Entity metadata", + "properties": { + "pipeline_identifier": { + "type": "string" + }, + "template_version_label": { + "type": "string" + }, + "environment_identifier": { + "type": "string" + }, + "override_type": { + "type": "string" + } + } + }, + "EntityDetails": { + "title": "EntityDetails", + "x-stoplight": { + "id": "off09hxwghp46" + }, + "type": "object", + "description": "Entity Details with its yaml validation result ", + "properties": { + "is_valid": { + "type": "boolean" + }, + "error_metadata": { + "$ref": "#/components/schemas/ErrorMetadata1" + }, + "entity_metadata": { + "$ref": "#/components/schemas/EntityMetadata" + }, + "identifier": { + "type": "string" + }, + "org": { + "type": "string" + }, + "project": { + "type": "string" + }, + "entity_type": { + "type": "string", + "enum": [ + "Pipelines", + "Template", + "InputSets", + "Service", + "Environment", + "Infrastructure", + "Overrides", + "Unknown" + ] + }, + "entity_url": { + "type": "string" + }, + "branch": { + "type": "string" + } + } + }, + "PrometheusRequestBody": { + "type": "object", + "properties": { + "query": { + "type": "string", + "description": "Prometheus query to be executed" + }, + "startTime": { + "type": "string", + "format": "date-time" + }, + "endTime": { + "type": "string", + "format": "date-time" + }, + "accountId": { + "type": "string" + }, + "connectorInfoDTO": { + "$ref": "#/components/schemas/ConnectorInfoDTO" + } + } + }, + "ConnectorInfoDTO": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "type": { + "type": "string" + }, + "spec": { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "username": { + "type": "string" + }, + "passwordRef": { + "type": "string" + }, + "headers": { + "type": "array", + "items": { + "type": "object" + } + }, + "delegateSelectors": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "uniqueId": { + "type": "string" + }, + "parentUniqueId": { + "type": "string" + } + } + }, + "ListGitXWebhookBranchesDTO": { + "title": "ListGitXWebhookBranchesDTO", + "x-stoplight": { + "id": "uz8rg7ns5igqa" + }, + "type": "object", + "x-examples": {}, + "properties": { + "branches": { + "type": "array", + "x-stoplight": { + "id": "zvzsd37einxjd" + }, + "items": { + "x-stoplight": { + "id": "tlfvydcm6psya" + }, + "type": "string" + } + } + } + }, + "WebhookResponse": { + "title": "WebhookResponse", + "x-stoplight": { + "id": "qp85gbelru04a" + }, + "type": "object", + "description": "Contains information about the webhooks ", + "properties": { + "webhook_identifier": { + "type": "string", + "x-stoplight": { + "id": "ca15qky0ubhp0" + } + }, + "webhook_name": { + "type": "string", + "x-stoplight": { + "id": "akdk55si8n2t5" + } + }, + "is_enabled": { + "type": "boolean", + "x-stoplight": { + "id": "yxa6x7c817cpi" + } + }, + "event_trigger_time": { + "type": "integer", + "x-stoplight": { + "id": "s5gogy1jeqrxg" + }, + "format": "int64" + }, + "spec": { + "$ref": "#/components/schemas/WebhookResponseSpec" + } + } + }, + "ListWebhookRequest": { + "title": "ListWebhookRequest", + "x-stoplight": { + "id": "jx8oxje21olue" + }, + "type": "object", + "description": "Contains information about the webhook list request", + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "upkw62u05iw1k" + }, + "enum": [ + "GIT", + "GENERIC", + "SLACK", + "EVENT_BRIDGE_TRIGGER" + ] + } + } + }, + "CreateWebhookRequest": { + "title": "CreateWebhookRequest", + "x-stoplight": { + "id": "wyugz3znopto1" + }, + "type": "object", + "description": "Contains information about the webhook creation request", + "required": [ + "webhook_identifier", + "webhook_name", + "spec" + ], + "properties": { + "webhook_identifier": { + "type": "string", + "pattern": "^[0-9a-zA-Z-_ ]{0,127}$" + }, + "webhook_name": { + "type": "string" + }, + "spec": { + "$ref": "#/components/schemas/WebhookSpec" + } + } + }, + "CreateWebhookResponse": { + "title": "CreateWebhookResponse", + "x-stoplight": { + "id": "yak0fnugfnazi" + }, + "type": "object", + "description": "Contains information about the webhook creation ", + "properties": { + "webhook_identifier": { + "type": "string", + "x-stoplight": { + "id": "48gdql1ypcu24" + } + } + } + }, + "UpdateWebhookRequest": { + "title": "UpdateWebhookRequest", + "x-stoplight": { + "id": "bcygq1n9977fe" + }, + "type": "object", + "description": "Contains information about the webhook updation ", + "required": [ + "webhook_name", + "is_enabled", + "spec" + ], + "properties": { + "webhook_name": { + "type": "string", + "x-stoplight": { + "id": "neynteoeg0mp2" + } + }, + "is_enabled": { + "type": "boolean", + "x-stoplight": { + "id": "0s3sv7cnssgfa" + } + }, + "spec": { + "$ref": "#/components/schemas/WebhookSpec" + } + } + }, + "UpdateWebhookResponse": { + "title": "UpdateWebhookResponse", + "x-stoplight": { + "id": "53ifddpwomu03" + }, + "type": "object", + "properties": { + "webhook_identifier": { + "type": "string", + "x-stoplight": { + "id": "ilve5xc00itqc" + } + } + }, + "description": "Contains information about the webhook updation " + }, + "WebhookSpec": { + "title": "WebhookSpec", + "type": "object", + "description": "Details of the Webhook defined in Harness", + "x-stoplight": { + "id": "flbjcalbbs9ui" + }, + "discriminator": { + "propertyName": "webhook_type", + "mapping": { + "GIT": "#/components/schemas/GitWebhookSpec", + "GENERIC": "#/components/schemas/GenericWebhookSpec", + "SLACK": "#/components/schemas/SlackWebhookSpec" + } + }, + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "zbdq4istt2a2f" + }, + "enum": [ + "GIT", + "GENERIC", + "SLACK" + ] + } + } + }, + "GitWebhookSpec": { + "title": "GitWebhookSpec", + "x-discriminator-value": "GIT", + "x-stoplight": { + "id": "trz0qbwvx7k1i" + }, + "allOf": [ + { + "$ref": "#/components/schemas/WebhookSpec" + }, + { + "x-stoplight": { + "id": "6gu0t0qgjboz5" + } + }, + { + "type": "object", + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "wxi9pj91fywzj" + }, + "enum": [ + "GIT" + ] + }, + "connector_ref": { + "type": "string", + "x-stoplight": { + "id": "2vissvp1jw3an" + } + }, + "repo_name": { + "type": "string", + "x-stoplight": { + "id": "k9u93n1c4y0l6" + } + }, + "folder_paths": { + "type": "array", + "x-stoplight": { + "id": "4b4jeap1ifget" + }, + "items": { + "x-stoplight": { + "id": "1gu5k09urni8k" + }, + "type": "string" + } + } + } + } + ], + "description": "Details of the Git Webhook defined in Harness" + }, + "GenericWebhookSpec": { + "title": "GenericWebhookSpec", + "x-discriminator-value": "GENERIC", + "x-stoplight": { + "id": "bjiw082j0w14h" + }, + "description": "Details of the Git Webhook Response defined in Harness", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookSpec" + }, + { + "x-stoplight": { + "id": "biqu7kl6qreuy" + } + }, + { + "type": "object", + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "6hsv7lbktirfd" + }, + "enum": [ + "GENERIC" + ] + }, + "auth_spec": { + "type": "object", + "$ref": "#/components/schemas/GenericWebhookAuthSpec" + } + } + } + ] + }, + "GenericWebhookAuthSpec": { + "title": "GenericWebhookAuthSpec", + "x-stoplight": { + "id": "pztsx6mhts2mu" + }, + "type": "object", + "description": "Details of Authentication for Generic Webhook defined in Harness", + "discriminator": { + "propertyName": "auth_type", + "mapping": { + "Hmac": "#/components/schemas/HmacAuthSpec", + "NoAuth": "#/components/schemas/NoAuthSpec" + } + }, + "properties": { + "auth_type": { + "x-stoplight": { + "id": "wwgviivc5ne1g" + }, + "type": "string", + "enum": [ + "NoAuth", + "Hmac" + ] + } + } + }, + "HmacAuthSpec": { + "title": "HmacAuthSpec", + "x-discriminator-value": "Hmac", + "x-stoplight": { + "id": "68e0228wlnywm" + }, + "description": "Details of HMAC Authentication for Generic Webhook defined in Harness", + "allOf": [ + { + "$ref": "#/components/schemas/GenericWebhookAuthSpec" + }, + { + "x-stoplight": { + "id": "a33mm0webcei4" + } + }, + { + "type": "object", + "properties": { + "auth_type": { + "type": "string", + "x-stoplight": { + "id": "k4oztsz98ooav" + }, + "enum": [ + "Hmac" + ] + }, + "header": { + "type": "string", + "x-stoplight": { + "id": "12s5qh848c633" + } + }, + "secret_key": { + "type": "string", + "x-stoplight": { + "id": "vwz1xib1kcy2c" + } + }, + "hash_algorithm": { + "type": "string", + "x-stoplight": { + "id": "3d1cnhx2uicyx" + } + } + } + } + ] + }, + "NoAuthSpec": { + "title": "NoAuthSpec", + "x-discriminator-value": "NoAuth", + "x-stoplight": { + "id": "68e0228wlnywm" + }, + "allOf": [ + { + "$ref": "#/components/schemas/GenericWebhookAuthSpec" + }, + { + "x-stoplight": { + "id": "a33mm0webcei4" + } + }, + { + "type": "object", + "properties": { + "auth_type": { + "type": "string", + "x-stoplight": { + "id": "k4oztsz98ooav" + }, + "enum": [ + "NoAuth" + ] + } + } + } + ] + }, + "GenericWebhookResponse": { + "title": "GenericWebhookResponse", + "x-discriminator-value": "GENERIC", + "x-stoplight": { + "id": "1p9ofc5cq7yb6" + }, + "description": "Details of the Generic Webhook Response defined in Harness", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookResponseSpec" + }, + { + "x-stoplight": { + "id": "i1gksyzeugz8u" + } + }, + { + "type": "object", + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "22s2vlv3t9fj5" + }, + "enum": [ + "GENERIC" + ] + }, + "webhook_url": { + "type": "string", + "x-stoplight": { + "id": "ojhz9wdjeqwbz" + } + }, + "auth_spec": { + "$ref": "#/components/schemas/GenericWebhookAuthSpec" + } + } + } + ] + }, + "WebhookResponseSpec": { + "title": "WebhookResponseSpec", + "x-stoplight": { + "id": "hf8a59m9zplq5" + }, + "type": "object", + "description": "Details of the Webhook Response defined in Harness", + "discriminator": { + "propertyName": "webhook_type", + "mapping": { + "GIT": "#/components/schemas/GitWebhookSpec", + "GENERIC": "#/components/schemas/GenericWebhookSpec", + "SLACK": "#/components/schemas/SlackWebhookSpec" + } + }, + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "ea5q8oze71hsh" + }, + "enum": [ + "GIT", + "GENERIC", + "SLACK" + ] + } + } + }, + "GitWebhookResponse": { + "title": "GitWebhookResponse", + "x-discriminator-value": "GIT", + "x-stoplight": { + "id": "6c6sx5s78gbvd" + }, + "description": "Details of the Git Webhook Response defined in Harness", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookResponseSpec" + }, + { + "x-stoplight": { + "id": "7u67s12no6eqs" + } + }, + { + "type": "object", + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "i3u6hd4kywhvr" + }, + "enum": [ + "GIT" + ] + }, + "connector_ref": { + "type": "string", + "x-stoplight": { + "id": "c5h3wyv7hqczh" + } + }, + "repo_name": { + "type": "string", + "x-stoplight": { + "id": "wbd3foe4j6h5c" + } + }, + "folder_paths": { + "type": "array", + "x-stoplight": { + "id": "wn4diemka6nzi" + }, + "items": { + "x-stoplight": { + "id": "fh5uhrykr1t11" + }, + "type": "string" + } + } + } + } + ] + }, + "SlackWebhookSpec": { + "title": "SlackWebhookSpec", + "x-stoplight": { + "id": "jadhjui3txho7" + }, + "description": "Details of the Slack Webhook defined in Harness", + "x-discriminator-value": "SLACK", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookSpec" + }, + { + "x-stoplight": { + "id": "biqu7kl6qreuy" + } + }, + { + "type": "object", + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "6hsv7lbktirfd" + }, + "enum": [ + "SLACK" + ] + }, + "auth_spec": { + "type": "object", + "$ref": "#/components/schemas/SlackWebhookAuthSpec" + } + } + } + ] + }, + "SlackWebhookResponse": { + "title": "SlackWebhookResponse", + "x-discriminator-value": "SLACK", + "x-stoplight": { + "id": "8kwhi2hjdrmbg" + }, + "description": "Details of the Slack Webhook Response defined in Harness", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookResponseSpec" + }, + { + "x-stoplight": { + "id": "i1gksyzeugz8u" + } + }, + { + "type": "object", + "properties": { + "webhook_type": { + "type": "string", + "x-stoplight": { + "id": "22s2vlv3t9fj5" + }, + "enum": [ + "SLACK" + ] + }, + "webhook_url": { + "type": "string", + "x-stoplight": { + "id": "ojhz9wdjeqwbz" + } + }, + "auth_spec": { + "$ref": "#/components/schemas/SlackWebhookAuthSpec" + } + } + } + ] + }, + "SlackWebhookAuthSpec": { + "title": "SlackWebhookAuthSpec", + "x-stoplight": { + "id": "7cdpn5p579ldc" + }, + "type": "object", + "description": "Details of Authentication for Slack Webhook defined in Harness", + "discriminator": { + "propertyName": "auth_type", + "mapping": { + "Hmac": "#/components/schemas/SlackHmacAuthSpec", + "NoAuth": "#/components/schemas/SlackNoAuthSpec" + } + }, + "properties": { + "auth_type": { + "x-stoplight": { + "id": "wwgviivc5ne1g" + }, + "type": "string", + "enum": [ + "NoAuth", + "Hmac" + ] + } + } + }, + "SlackHmacAuthSpec": { + "title": "SlackHmacAuthSpec", + "x-discriminator-value": "Hmac", + "x-stoplight": { + "id": "l57gr481c0yev" + }, + "description": "Details of HMAC Authentication for Slack Webhook defined in Harness", + "allOf": [ + { + "$ref": "#/components/schemas/SlackWebhookAuthSpec" + }, + { + "x-stoplight": { + "id": "a33mm0webcei4" + } + }, + { + "type": "object", + "properties": { + "auth_type": { + "type": "string", + "x-stoplight": { + "id": "k4oztsz98ooav" + }, + "enum": [ + "Hmac" + ] + }, + "secret_key": { + "type": "string", + "x-stoplight": { + "id": "vwz1xib1kcy2c" + } + } + } + } + ] + }, + "SlackNoAuthSpec": { + "title": "SlackNoAuthSpec", + "x-discriminator-value": "NoAuth", + "x-stoplight": { + "id": "68e0228wlnywm" + }, + "allOf": [ + { + "$ref": "#/components/schemas/SlackWebhookAuthSpec" + }, + { + "x-stoplight": { + "id": "a33mm0webcei4" + } + }, + { + "type": "object", + "properties": { + "auth_type": { + "type": "string", + "x-stoplight": { + "id": "k4oztsz98ooav" + }, + "enum": [ + "NoAuth" + ] + } + } + } + ] + }, + "LicensedModules": { + "title": "LicensedModules", + "x-stoplight": { + "id": "8imv8mxpfibki" + }, + "type": "object", + "description": "Licensed Modules", + "properties": { + "licensedModules": { + "type": "array", + "x-stoplight": { + "id": "w7l9vzqme8c8b" + }, + "items": { + "type": "object", + "$ref": "#/components/schemas/ModuleType" + } + } + } + }, + "SubscriptionUsageDTO": { + "title": "SubscriptionUsageDTO", + "x-stoplight": { + "id": "asbfb0izkw46s" + }, + "type": "object", + "description": "Total Users Count for the account", + "properties": { + "year": { + "type": "integer", + "x-stoplight": { + "id": "b17mljsrq4yt3" + } + }, + "month": { + "type": "integer", + "x-stoplight": { + "id": "3btxrzr9lmhvf" + }, + "minimum": 1, + "maximum": 12 + }, + "usage": { + "type": "integer", + "x-stoplight": { + "id": "ge7d7w7kw47i7" + } + } + } + }, + "ModuleUtilizationDTO": { + "title": "ModuleUtilizationDTO", + "x-stoplight": { + "id": "9biptclblynf6" + }, + "type": "object", + "properties": { + "moduleType": { + "type": "string" + }, + "licenses": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "ytjlqy2qne6lp" + } + }, + "entitlements": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "h3royjzc0y07x" + } + }, + "utilization": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "9jrf8gh467ywv" + } + }, + "licenseUnit": { + "type": "string", + "x-stoplight": { + "id": "f7kad5hq31ojb" + } + }, + "entitlementUnit": { + "type": "string", + "x-stoplight": { + "id": "qhuu3tdijaw9u" + } + } + } + }, + "PrincipalWithAccessResponse": { + "title": "PrincipalWithAccessResponse", + "x-stoplight": { + "id": "0iqrzwy2eac9w" + }, + "type": "object", + "properties": { + "totalPrincipals": { + "type": "integer", + "x-stoplight": { + "id": "6ab0i1j3hpkme" + } + }, + "userGroups": { + "type": "array", + "x-stoplight": { + "id": "fgty89brdsnff" + }, + "items": { + "$ref": "#/components/schemas/UserGroupEntity" + } + }, + "serviceAccounts": { + "type": "array", + "x-stoplight": { + "id": "zh42c3dota9wp" + }, + "items": { + "$ref": "#/components/schemas/PrincipalEntity" + } + }, + "orgs": { + "type": "array", + "x-stoplight": { + "id": "inu3d41xzect0" + }, + "items": { + "x-stoplight": { + "id": "6pyj9v5wp146q" + }, + "type": "string" + } + }, + "projects": { + "type": "array", + "x-stoplight": { + "id": "c88wnjk59ledb" + }, + "items": { + "x-stoplight": { + "id": "mmujpoa5sln83" + }, + "type": "array", + "items": { + "x-stoplight": { + "id": "ggnmtd6ivokrj" + }, + "type": "string" + } + } + }, + "usersWithAccess": { + "type": "array", + "x-stoplight": { + "id": "9nidfhubhcf7i" + }, + "items": { + "$ref": "#/components/schemas/UserWithAccessEntity" + } + }, + "totalPages": { + "type": "integer", + "x-stoplight": { + "id": "her4f6qotj9h0" + } + } + } + }, + "PrincipalEntity": { + "title": "PrincipalEntity", + "x-stoplight": { + "id": "asm05p372hcq4" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "pzzrkgehhya5r" + } + }, + "accountIdentifier": { + "type": "string", + "x-stoplight": { + "id": "0p4tznxz5qjng" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "2p7cnue3epiz3" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "8vf2lmgn5xo4l" + } + } + } + }, + "PrincipalWithAccessFilter": { + "title": "PrincipalWithAccessFilter", + "x-stoplight": { + "id": "dupdo3pmtijg6" + }, + "type": "object", + "properties": { + "principalType": { + "type": "string", + "x-stoplight": { + "id": "3unmqy95qmlzt" + } + }, + "userGroups": { + "type": "array", + "x-stoplight": { + "id": "9n26db88ry5nc" + }, + "items": { + "$ref": "#/components/schemas/PrincipalEntity" + } + }, + "orgs": { + "type": "array", + "x-stoplight": { + "id": "7r6jrob5jmbc8" + }, + "items": { + "x-stoplight": { + "id": "kp39q44vlmrxm" + }, + "type": "string" + } + }, + "projects": { + "type": "array", + "x-stoplight": { + "id": "1g91pml71htb9" + }, + "items": { + "x-stoplight": { + "id": "jhj18lqilh4rs" + }, + "type": "array", + "items": { + "x-stoplight": { + "id": "z9464nu0fsja6" + }, + "type": "string" + } + } + } + } + }, + "UserGroupEntity": { + "title": "UserGroupEntity", + "x-stoplight": { + "id": "b8w2br3njf3cn" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "xx6q3dtm4c5hz" + } + }, + "accountIdentifier": { + "type": "string", + "x-stoplight": { + "id": "305th55frjrg9" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "7y6bvcurxzf81" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "xi4hb24q1vdmx" + } + }, + "userCount": { + "type": "integer", + "x-stoplight": { + "id": "jfu0h1fgjls12" + } + } + } + }, + "DailyModuleAccountAccessDTO": { + "title": "DailyModuleAccountAccessDTO", + "x-stoplight": { + "id": "0fm4v5k2zryjx" + }, + "type": "object", + "description": "Information about accounts which have access to a module (Developer 360)", + "x-tags": [ + "DailyModuleAccountAccessDTO" + ], + "properties": { + "day": { + "type": "integer", + "x-stoplight": { + "id": "bjaedycec1m4e" + }, + "format": "int32" + }, + "month": { + "type": "integer", + "x-stoplight": { + "id": "97ro4vatizg98" + }, + "format": "int32" + }, + "year": { + "type": "integer", + "x-stoplight": { + "id": "iac0h8hhs590q" + }, + "format": "int32" + }, + "userAccountCount": { + "type": "integer", + "x-stoplight": { + "id": "d2ilgqnafs236" + }, + "format": "int64" + }, + "serviceAccountCount": { + "type": "integer", + "x-stoplight": { + "id": "ufyo6wcsrl7ya" + }, + "format": "int64" + } + } + }, + "OidcProviderDTO": { + "title": "OidcProviderDTO", + "x-stoplight": { + "id": "a5xmcfu1j1fju" + }, + "type": "object", + "description": "Details about the OIDC provider", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "gsym6jqr1i73y" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "f7z4d33clyz4k" + } + }, + "scope": { + "type": "array", + "x-stoplight": { + "id": "mei65fkn9qrhh" + }, + "items": { + "x-stoplight": { + "id": "dcxrlqmfym2a2" + }, + "type": "string" + } + }, + "response_type": { + "type": "string", + "x-stoplight": { + "id": "kxv7d8amk3txa" + }, + "enum": [ + "code" + ] + }, + "issuer": { + "type": "string", + "x-stoplight": { + "id": "u95v85rmzlwq1" + } + }, + "discovery": { + "type": "boolean", + "x-stoplight": { + "id": "9ktoaz5mxqa2s" + } + }, + "uid_field": { + "type": "string", + "x-stoplight": { + "id": "9u85v2mrk9y1h" + } + }, + "send_scope_to_token_endpoint": { + "type": "boolean", + "x-stoplight": { + "id": "8v8u9e7dvyngp" + } + }, + "pkce": { + "type": "boolean", + "x-stoplight": { + "id": "1widmung9ibyp" + } + }, + "clientConfig": { + "$ref": "#/components/schemas/OidcClientConfigDTO" + }, + "jitConfig": { + "$ref": "#/components/schemas/OidcJitConfigDTO" + }, + "authorizationConfig": { + "$ref": "#/components/schemas/OidcAuthorizationConfigDTO" + } + } + }, + "OidcClientConfigDTO": { + "title": "OidcClientConfigDTO", + "x-stoplight": { + "id": "2kdbp946t6kg9" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "0in5oe66k7nvn" + } + }, + "secretRef": { + "x-stoplight": { + "id": "eyxi8k6edrkfm" + }, + "type": "string" + }, + "redirect_uri": { + "type": "string", + "x-stoplight": { + "id": "3bq833hvcnz1v" + } + }, + "authorization_endpoint": { + "type": "string", + "x-stoplight": { + "id": "5iklodf33c02u" + } + }, + "token_endpoint": { + "type": "string", + "x-stoplight": { + "id": "5xgvlfqxyp4le" + } + }, + "jwks_uri": { + "type": "string", + "x-stoplight": { + "id": "p1xko0sc5hw9s" + } + }, + "userinfo_endpoint": { + "type": "string", + "x-stoplight": { + "id": "q410k8i8p3vgq" + } + } + } + }, + "OidcJitConfigDTO": { + "title": "OidcJITConfigDTO", + "x-stoplight": { + "id": "hqnlr9yhe6gv0" + }, + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "x-stoplight": { + "id": "ouiufzrdoe9ep" + } + }, + "claim_key": { + "type": "string", + "x-stoplight": { + "id": "op7r7p3feip94" + } + }, + "claim_value": { + "type": "string", + "x-stoplight": { + "id": "ojfdm29mn1p1o" + } + } + } + }, + "SLONotificationDTO": { + "title": "SLONotificationDTO", + "x-stoplight": { + "id": "qyuapp5pfrkjw" + }, + "type": "object", + "properties": { + "rule_org_id": { + "type": "string", + "x-stoplight": { + "id": "rcw4qilpfyuvl" + } + }, + "rule_project_id": { + "type": "string", + "x-stoplight": { + "id": "urybiyxpmulev" + } + }, + "slo_org_id": { + "type": "string", + "x-stoplight": { + "id": "nhkb8dwys5frx" + } + }, + "slo_project_id": { + "type": "string", + "x-stoplight": { + "id": "lmbq839felmiw" + } + }, + "slo_name": { + "type": "string", + "x-stoplight": { + "id": "rq7nmyt0leopv" + } + }, + "entity_identifier": { + "type": "string", + "x-stoplight": { + "id": "zyzk78pxq3h0o" + } + }, + "event_template_identifier": { + "type": "string", + "x-stoplight": { + "id": "5xtcpb4a02yaz" + } + }, + "correlation_id": { + "type": "string", + "x-stoplight": { + "id": "nipy6xp3su79o" + } + } + } + }, + "OidcAuthorizationConfigDTO": { + "title": "OidcAuthorizationConfigDTO", + "x-stoplight": { + "id": "s28hwq548wp3e" + }, + "type": "object", + "properties": { + "groupClaim": { + "type": "string", + "x-stoplight": { + "id": "sskwxc1e7xlsd" + } + }, + "authorizationEnabled": { + "type": "boolean", + "x-stoplight": { + "id": "xcm08wzh01dfz" + } + } + } + }, + "Team": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The team ID." + }, + "name": { + "type": "string", + "description": "The team name." + } + } + }, + "Enterprise": { + "type": "object", + "nullable": true, + "properties": { + "id": { + "type": "string", + "description": "The enterprise ID." + }, + "name": { + "type": "string", + "description": "The enterprise name." + }, + "domain": { + "type": "string", + "description": "The enterprise domain." + } + } + }, + "AuthedUser": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The ID of the authenticated user." + }, + "username": { + "type": "string", + "description": "The username of the authenticated user." + }, + "email": { + "type": "string", + "description": "The email address of the authenticated user." + } + } + }, + "RancherClusterItem": { + "title": "RancherClusterItem", + "description": "Represents a Rancher-managed cluster with details like ID and name.", + "type": "object", + "properties": { + "clusters": { + "type": "array", + "items": { + "type": "string" + } + }, + "clusterItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + } + } + } + } + } + }, + "ConnectorTestConnectionErrorDetail": { + "title": "ConnectorTestConnectionErrorDetail", + "type": "object", + "description": "Connector test connection errors and their details.", + "properties": { + "reason": { + "type": "string", + "description": "Reason of test connection error" + }, + "message": { + "type": "string", + "description": "Test connection error message" + }, + "code": { + "type": "integer", + "description": "Test connection error code" + } + } + }, + "ConnectorConnectivityDetail": { + "title": "ConnectorConnectivityDetail", + "type": "object", + "description": "This has details of the connectivity status of the Connector.", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "PARTIAL", + "FAILURE", + "UNKNOWN" + ], + "description": "Connectivity status of a Connector" + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectorTestConnectionErrorDetail" + }, + "description": "List of errors and their details" + }, + "error_summary": { + "type": "string", + "description": "Summary of errors" + }, + "tested_at": { + "type": "integer", + "format": "int64", + "description": "Time at which Test Connection was completed" + }, + "connected_at": { + "type": "integer", + "format": "int64", + "description": "This is the last time at which the Connector was successfully connected" + } + } + }, + "ConnectorTestConnectionResponse": { + "title": "ConnectorTestConnectionResponse", + "type": "object", + "description": "This has test connection details for the Connector defined in Harness.", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "PARTIAL", + "FAILURE", + "UNKNOWN" + ], + "description": "Connectivity status of a Connector" + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectorTestConnectionErrorDetail" + } + }, + "error_summary": { + "type": "string", + "description": "Summary of errors" + }, + "tested_at": { + "type": "integer", + "format": "int64", + "description": "Time at which Test Connection was completed" + }, + "delegate_id": { + "type": "string", + "description": "ID of Delegate on which Test Connection is executed" + } + } + }, + "ConnectorResponse": { + "title": "ConnectorResponse", + "type": "object", + "description": "Connector response model", + "properties": { + "connector": { + "$ref": "#/components/schemas/Connector" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for the connector" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Updated timestamp for the connector" + }, + "status": { + "$ref": "#/components/schemas/ConnectorConnectivityDetail" + }, + "harness_managed": { + "type": "boolean", + "description": "This indicates if this Connector is managed by Harness or not. If True, Harness can manage and modify this Connector." + }, + "governance_metadata": { + "type": "object", + "description": "Governance metadata information" + } + } + }, + "ConnectorRequest": { + "type": "object", + "properties": { + "connector": { + "$ref": "#/components/schemas/Connector" + } + }, + "required": [ + "connector" + ] + }, + "Connector": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Connector name", + "pattern": "^[0-9a-zA-Z-_ ]{0,127}$" + }, + "identifier": { + "type": "string", + "minLength": 1, + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "description": "Connector identifier", + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Connector description" + }, + "org": { + "type": "string", + "description": "Organization identifier for connector", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$" + }, + "project": { + "type": "string", + "description": "Project identifier for connector", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connector tags" + }, + "spec": { + "$ref": "#/components/schemas/ConnectorSpec" + } + }, + "required": [ + "name", + "identifier", + "spec" + ] + }, + "ConnectorSpec": { + "title": "ConnectorSpec", + "type": "object", + "description": "Details of the connector defined in Harness", + "required": [ + "type" + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "GitHttp": "#/components/schemas/GitHttpConnectorSpec", + "GitHttpEncrypted": "#/components/schemas/GitHttpEncryptedConnectorSpec", + "GitSsh": "#/components/schemas/GitSshConnectorSpec", + "Appdynamics": "#/components/schemas/AppdynamicsConnectorSpec", + "AppdynamicsClientId": "#/components/schemas/AppdynamicsClientIdConnectorSpec", + "Artifactory": "#/components/schemas/ArtifactoryConnectorSpec", + "ArtifactoryEncrypted": "#/components/schemas/ArtifactoryEncryptedConnectorSpec", + "ArtifactoryAnonymous": "#/components/schemas/ArtifactoryAnonymousConnectorSpec", + "AzureClientSecretKey": "#/components/schemas/AzureClientSecretKeyConnectorSpec", + "AzureClientCertificate": "#/components/schemas/AzureClientCertificateConnectorSpec", + "AzureInheritFromDelegateUserAssignedManagedIdentity": "#/components/schemas/AzureInheritFromDelegateUserAssignedManagedIdentityConnectorSpec", + "AzureInheritFromDelegateSystemAssignedManagedIdentity": "#/components/schemas/AzureInheritFromDelegateSystemAssignedManagedIdentityConnectorSpec" + } + }, + "properties": { + "type": { + "type": "string", + "enum": [ + "GitHttp", + "GitHttpEncrypted", + "GitSsh", + "Appdynamics", + "AppdynamicsClientId", + "Artifactory", + "ArtifactoryEncrypted", + "ArtifactoryAnonymous", + "AzureClientSecretKey", + "AzureClientCertificate", + "AzureInheritFromDelegateUserAssignedManagedIdentity", + "AzureInheritFromDelegateSystemAssignedManagedIdentity" + ], + "description": "This specifies the type of connector" + } + } + }, + "GitHttpConnectorSpec": { + "title": "GitHttp", + "x-discriminator-value": "GitHttp", + "description": "This contains details of the Generic Git http connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "GitHttp" + ], + "description": "This specifies the type of connector" + }, + "url": { + "type": "string", + "description": "Git repo url" + }, + "branch": { + "type": "string", + "description": "branch name" + }, + "connection_type": { + "type": "string", + "enum": [ + "Account", + "Repo", + "Project" + ] + }, + "username": { + "type": "string", + "description": "git username" + }, + "password_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for git password" + }, + "validation_repo": { + "type": "string", + "description": "validation repo" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "description": "execute on delegate" + } + }, + "required": [ + "type", + "url", + "connection_type", + "username", + "password_ref" + ] + } + ] + }, + "GitHttpEncryptedConnectorSpec": { + "title": "GitHttpEncrypted", + "x-discriminator-value": "GitHttpEncrypted", + "description": "This contains details of the Generic Git http connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "GitHttpEncrypted" + ], + "description": "This specifies the type of connector" + }, + "url": { + "type": "string", + "description": "Git repo url" + }, + "branch": { + "type": "string", + "description": "branch name" + }, + "connection_type": { + "type": "string", + "enum": [ + "Account", + "Repo", + "Project" + ] + }, + "username_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for git username" + }, + "password_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for git password" + }, + "validation_repo": { + "type": "string", + "description": "validation repo" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "description": "execute on delegate" + } + }, + "required": [ + "type", + "url", + "connection_type", + "username_ref", + "password_ref" + ] + } + ] + }, + "GitSshConnectorSpec": { + "title": "GitSsh", + "x-discriminator-value": "GitSsh", + "description": "This contains details of the Generic Git ssh connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "GitSsh" + ], + "description": "This specifies the type of connector" + }, + "url": { + "type": "string", + "description": "Git repo url" + }, + "branch": { + "type": "string", + "description": "branch name" + }, + "connection_type": { + "type": "string", + "enum": [ + "Account", + "Repo", + "Project" + ] + }, + "ssh_key_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for git ssh key" + }, + "validation_repo": { + "type": "string", + "description": "validation repo" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "description": "execute on delegate" + } + }, + "required": [ + "type", + "url", + "connection_type", + "ssh_key_ref" + ] + } + ] + }, + "AppdynamicsConnectorSpec": { + "title": "Appdynamics", + "x-discriminator-value": "Appdynamics", + "description": "This contains details of the appdynamics connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Appdynamics" + ], + "description": "This specifies the type of connector" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "account_name": { + "type": "string", + "description": "appdymanics account name" + }, + "controller_url": { + "type": "string", + "description": "appdynamics controller url" + }, + "username": { + "type": "string", + "description": "appdynamics username" + }, + "password_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for appdynamics password secret" + } + }, + "required": [ + "type", + "account_name", + "controller_url" + ] + } + ] + }, + "AppdynamicsClientIdConnectorSpec": { + "title": "AppdynamicsClientId", + "x-discriminator-value": "AppdynamicsClientId", + "description": "This contains details of the appdynamics connector with client secrets", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AppdynamicsClientId" + ] + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "account_name": { + "type": "string", + "description": "appdymanics account name" + }, + "controller_url": { + "type": "string", + "description": "appdynamics controller url" + }, + "client_id": { + "type": "string", + "description": "appdynamics client id" + }, + "client_secret_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for appdynamics client secret" + } + }, + "required": [ + "type", + "account_name", + "controller_url" + ] + } + ] + }, + "ArtifactoryAnonymousConnectorSpec": { + "title": "ArtifactoryAnonymous", + "x-discriminator-value": "ArtifactoryAnonymous", + "description": "This contains details of the artifactory connector with anonymous user", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "ArtifactoryAnonymous" + ], + "description": "This specifies the type of connector" + }, + "url": { + "type": "string", + "description": "artifactory repo url" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "description": "execute on delegate" + } + }, + "required": [ + "type", + "url" + ] + } + ] + }, + "ArtifactoryConnectorSpec": { + "title": "Artifactory", + "x-discriminator-value": "Artifactory", + "description": "This contains details of the artifactory connector with username/password", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Artifactory" + ], + "description": "This specifies the type of connector" + }, + "url": { + "type": "string", + "description": "artifactory repo url" + }, + "username": { + "type": "string", + "description": "artifactory username" + }, + "password_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for artifactory password" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "description": "execute on delegate" + } + }, + "required": [ + "type", + "url", + "username", + "password_ref" + ] + } + ] + }, + "ArtifactoryEncryptedConnectorSpec": { + "title": "ArtifactoryEncrypted", + "x-discriminator-value": "ArtifactoryEncrypted", + "description": "This contains details of the artifactory connector with encrypted username/password", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "ArtifactoryEncrypted" + ], + "description": "This specifies the type of connector" + }, + "url": { + "type": "string", + "description": "artifactory repo url" + }, + "username_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for artifactory username" + }, + "password_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for artifactory password" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "description": "execute on delegate" + } + }, + "required": [ + "type", + "url", + "username_ref", + "password_ref" + ] + } + ] + }, + "AwsCodeCommitConnectorSpec": { + "title": "AwsCodeCommit", + "x-discriminator-value": "AwsCodeCommit", + "description": "This contains details of the AWS code commit connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsCodeCommit" + ], + "description": "This specifies the type of connector" + }, + "url": { + "type": "string", + "description": "AWS codecommit repository url" + }, + "url_type": { + "type": "string", + "description": "AWS codecommit repository url type", + "enum": [ + "Repo", + "Region" + ] + }, + "access_key": { + "type": "string", + "description": "AWS access key" + }, + "access_key_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for AWS access key" + }, + "secret_key_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for AWS secret key" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + } + }, + "required": [ + "type", + "url", + "url_type", + "secret_key_ref" + ] + } + ] + }, + "AwsAccessKeyConnectorSpec": { + "title": "AwsAccessKey", + "x-discriminator-value": "AwsAccessKey", + "description": "This contains details of the AWS connector and needs AWS access and secret keys for an AWS IAM user.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsAccessKey" + ], + "description": "This specifies the type of connector" + }, + "access_key": { + "type": "string", + "description": "AWS access key" + }, + "secret_key_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for AWS secret key" + }, + "cross_account_role_arn": { + "type": "string", + "description": "If you want to use one AWS account for the connection, but you want to deploy or build in a different AWS account. In this scenario, the AWS account used for AWS access in Credentials will assume the IAM role you specify in Cross-account role ARN setting. This option uses the AWS Security Token Service (STS) feature." + }, + "external_id": { + "type": "string", + "description": "If the administrator of the account to which the role belongs provided you with an external ID, then enter that value." + }, + "test_region": { + "type": "string", + "description": "By default, Harness uses the us-east-1 region to test the credentials for this Connector. If you want to use an AWS GovCloud account for this Connector, select it in Test Region. GovCloud is used by organizations such as government agencies at the federal, state, and local level, as well as contractors, educational institutions. It is also used for regulatory compliance with these organizations." + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + } + }, + "required": [ + "type", + "access_key", + "secret_key_ref" + ] + } + ] + }, + "AwsEncryptedAccessKeyConnectorSpec": { + "title": "AwsEncryptedAccessKey", + "x-discriminator-value": "AwsEncryptedAccessKey", + "description": "This contains details of the AWS connector and needs AWS encrypted access and secret keys for an AWS IAM user.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsEncryptedAccessKey" + ], + "description": "This specifies the type of connector" + }, + "access_key_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for AWS access key" + }, + "secret_key_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for AWS secret key" + }, + "cross_account_role_arn": { + "type": "string", + "description": "If you want to use one AWS account for the connection, but you want to deploy or build in a different AWS account. In this scenario, the AWS account used for AWS access in Credentials will assume the IAM role you specify in Cross-account role ARN setting. This option uses the AWS Security Token Service (STS) feature." + }, + "external_id": { + "type": "string", + "description": "If the administrator of the account to which the role belongs provided you with an external ID, then enter that value." + }, + "test_region": { + "type": "string", + "description": "By default, Harness uses the us-east-1 region to test the credentials for this Connector. If you want to use an AWS GovCloud account for this Connector, select it in Test Region. GovCloud is used by organizations such as government agencies at the federal, state, and local level, as well as contractors, educational institutions. It is also used for regulatory compliance with these organizations." + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + } + }, + "required": [ + "type", + "access_key_ref", + "secret_key_ref" + ] + } + ] + }, + "AwsIAMRoleConnectorSpec": { + "title": "AwsIAMRole", + "x-discriminator-value": "AwsIAMRole", + "description": "This contains details of the AWS connector. This assume IAM role on Delegate and uses the IAM role of a Harness Delegate running in your AWS account.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsIAMRole" + ], + "description": "This specifies the type of connector" + }, + "cross_account_role_arn": { + "type": "string", + "description": "If you want to use one AWS account for the connection, but you want to deploy or build in a different AWS account. In this scenario, the AWS account used for AWS access in Credentials will assume the IAM role you specify in Cross-account role ARN setting. This option uses the AWS Security Token Service (STS) feature." + }, + "external_id": { + "type": "string", + "description": "If the administrator of the account to which the role belongs provided you with an external ID, then enter that value." + }, + "test_region": { + "type": "string", + "description": "By default, Harness uses the us-east-1 region to test the credentials for this Connector. If you want to use an AWS GovCloud account for this Connector, select it in Test Region. GovCloud is used by organizations such as government agencies at the federal, state, and local level, as well as contractors, educational institutions. It is also used for regulatory compliance with these organizations." + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + } + }, + "required": [ + "type" + ] + } + ] + }, + "AwsIRSAConnectorSpec": { + "title": "AwsIRSA", + "x-discriminator-value": "AwsIRSA", + "description": "This contains details of the AWS connector. This uses IRSA and forces the Harness kubernetes delegate in AWS EKS to use a specific IAM role.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsIRSA" + ], + "description": "This specifies the type of connector" + }, + "cross_account_role_arn": { + "type": "string", + "description": "If you want to use one AWS account for the connection, but you want to deploy or build in a different AWS account. In this scenario, the AWS account used for AWS access in Credentials will assume the IAM role you specify in Cross-account role ARN setting. This option uses the AWS Security Token Service (STS) feature." + }, + "external_id": { + "type": "string", + "description": "If the administrator of the account to which the role belongs provided you with an external ID, then enter that value." + }, + "test_region": { + "type": "string", + "description": "By default, Harness uses the us-east-1 region to test the credentials for this Connector. If you want to use an AWS GovCloud account for this Connector, select it in Test Region. GovCloud is used by organizations such as government agencies at the federal, state, and local level, as well as contractors, educational institutions. It is also used for regulatory compliance with these organizations." + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of unique delegate selectors" + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + } + }, + "required": [ + "type" + ] + } + ] + }, + "AwsKmsAccessKeyConnectorSpec": { + "title": "AwsKmsAccessKey", + "x-discriminator-value": "AwsKmsAccessKey", + "description": "This contains details of the AWS and needs AWS encrypted access and secret keys for the AWS KMS.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsKmsAccessKey" + ], + "description": "This specifies the type of connector" + }, + "kms_arn": { + "type": "string", + "description": "Amazon Resource Name (ARN)" + }, + "region": { + "type": "string", + "description": "AWS Region for kms" + }, + "default": { + "type": "boolean", + "description": "Boolean value to indicate if the Secret Manager is your default Secret Manager" + }, + "access_key": { + "type": "string", + "description": "Access Key for AWS authentication" + }, + "secret_key": { + "type": "string", + "description": "Secret Key for AWS authentication" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager" + } + }, + "required": [ + "type", + "kms_arn", + "region", + "access_key", + "secret_key" + ] + } + ] + }, + "AwsKmsAssumeIAMConnectorSpec": { + "title": "AwsKmsAssumeIAM", + "x-discriminator-value": "AwsKmsAssumeIAM", + "description": "This contains details of the AWS connector and Harness will authenticate using the IAM role assigned to the AWS host running the Delegate, you select using a Delegate Selector.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsKmsAssumeIAM" + ], + "description": "This specifies the type of connector" + }, + "kms_arn": { + "type": "string", + "description": "Amazon Resource Name (ARN)" + }, + "region": { + "type": "string", + "description": "AWS Region for kms" + }, + "default": { + "type": "boolean", + "description": "Boolean value to indicate if the Secret Manager is your default Secret Manager" + }, + "delegate_selectors": { + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1, + "items": { + "type": "string" + } + } + }, + "required": [ + "type", + "kms_arn", + "region", + "delegate_selectors" + ] + } + ] + }, + "AwsKmsAssumeSTSConnectorSpec": { + "title": "AwsKmsAssumeSTS", + "x-discriminator-value": "AwsKmsAssumeSTS", + "description": "This contains details of the AWS connector and Harness will authenticate using the IAM role assigned to the AWS host running the Delegate, you select using a Delegate Selector.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsKmsAssumeSTS" + ], + "description": "This specifies the type of connector" + }, + "kms_arn": { + "type": "string", + "description": "Amazon Resource Name (ARN)" + }, + "region": { + "type": "string", + "description": "AWS Region for kms" + }, + "default": { + "type": "boolean", + "description": "Boolean value to indicate if the Secret Manager is your default Secret Manager" + }, + "delegate_selectors": { + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1, + "items": { + "type": "string" + } + }, + "role_arn": { + "type": "string", + "description": "Role ARN for the Delegate with STS Role" + }, + "external_id": { + "type": "string", + "description": "If the administrator of the account to which the role belongs provided you with an external ID, then enter that value." + }, + "assume_sts_role_duration": { + "type": "string", + "description": "This is the AssumeRole Session Duration" + } + }, + "required": [ + "type", + "kms_arn", + "region", + "delegate_selectors" + ] + } + ] + }, + "AwsSecretManagerAccessKeyConnectorSpec": { + "title": "AwsSecretManagerAccessKey", + "x-discriminator-value": "AwsSecretManagerAccessKey", + "description": "This contains details of the AWS and needs AWS encrypted access and secret keys for the AWS Secret Manager.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsSecretManagerAccessKey" + ], + "description": "This specifies the type of connector" + }, + "region": { + "type": "string", + "description": "AWS Region for kms" + }, + "default": { + "type": "boolean", + "description": "Boolean value to indicate if the Secret Manager is your default Secret Manager" + }, + "access_key": { + "type": "string", + "description": "Access Key for AWS authentication" + }, + "secret_key": { + "type": "string", + "description": "Secret Key for AWS authentication" + }, + "secret_name_prefix": { + "type": "string", + "description": "Text that is prepended to the Secret name as a prefix" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager" + } + }, + "required": [ + "type", + "region", + "access_key", + "secret_key" + ] + } + ] + }, + "AwsSecretManagerAssumeIAMConnectorSpec": { + "title": "AwsSecretManagerAssumeIAM", + "x-discriminator-value": "AwsSecretManagerAssumeIAM", + "description": "This contains details of the AWS connector and Harness will authenticate using the IAM role assigned to the AWS host running the Delegate, you select using a Delegate Selector.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsSecretManagerAssumeIAM" + ], + "description": "This specifies the type of connector" + }, + "region": { + "type": "string", + "description": "AWS Region for kms" + }, + "default": { + "type": "boolean", + "description": "Boolean value to indicate if the Secret Manager is your default Secret Manager" + }, + "secret_name_prefix": { + "type": "string", + "description": "Text that is prepended to the Secret name as a prefix" + }, + "delegate_selectors": { + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1, + "items": { + "type": "string" + } + } + }, + "required": [ + "type", + "region" + ] + } + ] + }, + "AwsSecretManagerAssumeSTSConnectorSpec": { + "title": "AwsSecretManagerAssumeSTS", + "x-discriminator-value": "AwsSecretManagerAssumeSTS", + "description": "This contains details of the AWS connector and Harness will authenticate using the STS role assigned to the AWS host running the Delegate, you select using a Delegate Selector.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AwsSecretManagerAssumeSTS" + ], + "description": "This specifies the type of connector" + }, + "region": { + "type": "string", + "description": "AWS Region for kms" + }, + "default": { + "type": "boolean", + "description": "Boolean value to indicate if the Secret Manager is your default Secret Manager" + }, + "secret_name_prefix": { + "type": "string", + "description": "Text that is prepended to the Secret name as a prefix" + }, + "delegate_selectors": { + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1, + "items": { + "type": "string" + } + }, + "role_arn": { + "type": "string", + "description": "Role ARN for the Delegate with STS Role" + }, + "external_id": { + "type": "string", + "description": "If the administrator of the account to which the role belongs provided you with an external ID, then enter that value." + }, + "assume_sts_role_duration": { + "type": "string", + "description": "This is the AssumeRole Session Duration" + } + }, + "required": [ + "type", + "region", + "role_arn" + ] + } + ] + }, + "AzureClientSecretKeyConnectorSpec": { + "title": "AzureClientSecretKey", + "x-discriminator-value": "AzureClientSecretKey", + "description": "This contains details of the Azure connector and uses Azure client secret key details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AzureClientSecretKey" + ], + "description": "This specifies the type of connector" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1 + }, + "azure_environment_type": { + "type": "string", + "default": "AZURE", + "enum": [ + "AZURE", + "AZURE_US_GOVERNMENT" + ], + "description": "This specifies the Azure Environment type, which is AZURE by default." + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + }, + "application_id": { + "type": "string", + "description": "Application ID of the Azure App" + }, + "tenant_id": { + "type": "string", + "description": "The Azure Active Directory (AAD) directory ID where you created your application" + }, + "secret_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for Azure client secret" + } + }, + "required": [ + "type", + "azure_environment_type", + "application_id", + "tenant_id", + "secret_ref" + ] + } + ] + }, + "AzureClientCertificateConnectorSpec": { + "title": "AzureClientCertificate", + "x-discriminator-value": "AzureClientCertificate", + "description": "This contains details of the Azure connector and uses Azure client certificate details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AzureClientCertificate" + ], + "description": "This specifies the type of connector" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1 + }, + "azure_environment_type": { + "type": "string", + "default": "AZURE", + "enum": [ + "AZURE", + "AZURE_US_GOVERNMENT" + ], + "description": "This specifies the Azure Environment type, which is AZURE by default." + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + }, + "application_id": { + "type": "string", + "description": "Application ID of the Azure App" + }, + "tenant_id": { + "type": "string", + "description": "The Azure Active Directory (AAD) directory ID where you created your application" + }, + "certificate_ref": { + "type": "string", + "description": "Reference to encrypted Harness secret for Azure client secret" + } + }, + "required": [ + "type", + "azure_environment_type", + "application_id", + "tenant_id", + "certificate_ref" + ] + } + ] + }, + "AzureInheritFromDelegateUserAssignedManagedIdentityConnectorSpec": { + "title": "AzureInheritFromDelegateUserAssignedManagedIdentity", + "x-discriminator-value": "AzureInheritFromDelegateUserAssignedManagedIdentity", + "description": "This contains details of the Azure connector and for azure UserAssigned MSI auth details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AzureInheritFromDelegateUserAssignedManagedIdentity" + ], + "description": "This specifies the type of connector" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1 + }, + "azure_environment_type": { + "type": "string", + "default": "AZURE", + "enum": [ + "AZURE", + "AZURE_US_GOVERNMENT" + ], + "description": "This specifies the Azure Environment type, which is AZURE by default." + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + }, + "client_id": { + "type": "string", + "description": "Client Id of the ManagedIdentity resource" + } + }, + "required": [ + "type", + "azure_environment_type", + "client_id" + ] + } + ] + }, + "AzureInheritFromDelegateSystemAssignedManagedIdentityConnectorSpec": { + "title": "AzureInheritFromDelegateSystemAssignedManagedIdentity", + "x-discriminator-value": "AzureInheritFromDelegateSystemAssignedManagedIdentity", + "description": "This contains details of the Azure connector for contains azure MSI auth details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorSpec" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AzureInheritFromDelegateSystemAssignedManagedIdentity" + ], + "description": "This specifies the type of connector" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager", + "minItems": 1 + }, + "azure_environment_type": { + "type": "string", + "default": "AZURE", + "enum": [ + "AZURE", + "AZURE_US_GOVERNMENT" + ], + "description": "This specifies the Azure Environment type, which is AZURE by default." + }, + "execute_on_delegate": { + "type": "boolean", + "default": true, + "description": "execute on delegate" + } + }, + "required": [ + "type", + "azure_environment_type" + ] + } + ] + }, + "ResourceGroupsResponse": { + "title": "Resource Groups Response", + "x-stoplight": { + "id": "q6oq3jxkd2who" + }, + "type": "object", + "description": "Resource Group response body", + "x-examples": { + "example-resource-group": { + "identifier": "example_resource_group", + "name": "Example_Resource Group", + "color": "#0063F7", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "description": "This is an Example Resource Group", + "allowed_scope_levels": [ + "account" + ], + "included_scope": [ + { + "filter": "EXCLUDING_CHILD_SCOPES", + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + } + ], + "resource_filter": [ + { + "resource_type": "resource", + "identifiers": [ + "example_resource" + ], + "attribute_name": "resource_attribute", + "attribute_values": [ + "example_resource_attribute" + ] + } + ], + "include_all_resources": false, + "harness_managed": true, + "created": 1234567890, + "updated": 1234567890 + } + }, + "properties": { + "identifier": { + "type": "string", + "description": "Resource Group Identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Resource Group Name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "color": { + "type": "string", + "description": "Color associated with the Resource Group." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource Group tags", + "maxProperties": 128 + }, + "description": { + "type": "string", + "description": "Resource Group description", + "maxLength": 1024 + }, + "allowed_scope_levels": { + "type": "array", + "description": "Allowed scope levels for this Resource Group.", + "uniqueItems": true, + "items": { + "type": "string", + "enum": [ + "account", + "organization", + "project" + ] + } + }, + "included_scope": { + "type": "array", + "description": "Included scopes for the resources belonging to the Resource Group.", + "items": { + "$ref": "#/components/schemas/ResourceGroupScope" + } + }, + "resource_filter": { + "type": "array", + "description": "Specifies the actual resources present in the Resource Group.", + "items": { + "$ref": "#/components/schemas/ResourceFilter" + } + }, + "include_all_resources": { + "type": "boolean", + "description": "Boolean value for including all resources in Resource Group." + }, + "harness_managed": { + "type": "boolean", + "description": "This indicates if this Resource Group is managed by Harness or not. If true, Harness can manage and modify this Resource Group." + }, + "created": { + "type": "integer", + "description": "Creation timestamp for Resource Group.", + "format": "int64" + }, + "updated": { + "type": "integer", + "description": "Last modification timestamp for Resource Group.", + "format": "int64" + } + }, + "required": [ + "identifier", + "name" + ] + }, + "CreateResourceGroupRequest": { + "title": "Create Resource Group Request", + "x-stoplight": { + "id": "z8g6ol73nsqjs" + }, + "type": "object", + "description": "Resource Group request body", + "x-examples": { + "resource-group-request": { + "identifier": "example_resource_group", + "name": "Example_Resource Group", + "color": "#0063F7", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "description": "This is an Example Resource Group", + "included_scope": [ + { + "filter": "EXCLUDING_CHILD_SCOPES", + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + } + ], + "resource_filter": [ + { + "resource_type": "resource", + "identifiers": [ + "example_resource" + ], + "attribute_name": "resource_attribute", + "attribute_values": [ + "example_resource_attribute" + ] + } + ], + "include_all_resources": false + } + }, + "properties": { + "identifier": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "description": "Resource Group identifier" + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "description": "Resource Group name" + }, + "color": { + "type": "string", + "description": "Color associated with the Resource Group." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Resource Group tags" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Resource Group description" + }, + "included_scope": { + "type": "array", + "description": "Included scopes for the resources belonging to the Resource Group.", + "items": { + "$ref": "#/components/schemas/ResourceGroupScope" + } + }, + "resource_filter": { + "type": "array", + "description": "Specifies the actual resources present in the Resource Group.", + "items": { + "$ref": "#/components/schemas/ResourceFilter" + } + }, + "include_all_resources": { + "type": "boolean", + "description": "Boolean value for including all resources in Resource Group." + } + }, + "required": [ + "identifier", + "name" + ] + }, + "ResourceGroupScope": { + "title": "Resource Group Scope", + "x-stoplight": { + "id": "w8j3bc9323bxb" + }, + "type": "object", + "description": "Included scopes for the Resources belonging to the Resource Group", + "x-examples": { + "example-1": { + "filter": "EXCLUDING_CHILD_SCOPES", + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + } + }, + "properties": { + "filter": { + "type": "string", + "enum": [ + "EXCLUDING_CHILD_SCOPES", + "INCLUDING_CHILD_SCOPES" + ], + "description": "Including or Excluding Child scopes." + }, + "account": { + "type": "string", + "description": "Account identifier", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Organization identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + } + }, + "required": [ + "filter" + ] + }, + "ResourceFilter": { + "title": "Resource Filter", + "x-stoplight": { + "id": "m5qhp13hm6o1z" + }, + "type": "object", + "description": "Specifies resources in Resource Group.", + "x-examples": { + "example-resource-filter": { + "resource_type": "resource", + "identifiers": [ + "example_resource" + ], + "attribute_name": "resource_attribute", + "attribute_values": [ + "example_resource_attribute" + ] + } + }, + "properties": { + "resource_type": { + "type": "string", + "description": "Specifies the type of Resource." + }, + "identifiers": { + "type": "array", + "description": "Identifiers for the Resource Type.", + "items": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + } + }, + "attribute_name": { + "type": "string", + "description": "Attribute name on the basis of which filtering will be done." + }, + "attribute_values": { + "type": "array", + "description": "Attribute values selected.", + "items": { + "type": "string" + } + } + }, + "required": [ + "resource_type" + ] + }, + "ResourceSelectorFilter": { + "title": "Resource Selector Filter", + "x-stoplight": { + "id": "0eh9msctzz3fy" + }, + "type": "object", + "description": "Filter by whether the Resource Group has a particular Resource.", + "x-examples": { + "example-resource-selector-filter": { + "resource_type": "resource", + "resource_identifier": "example_resource" + } + }, + "properties": { + "resource_type": { + "type": "string", + "description": "Filter by Resource type" + }, + "resource_identifier": { + "type": "string", + "description": "Filter by Resource identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + } + }, + "required": [ + "resource_type" + ] + }, + "ResourceGroupFilterRequestBody": { + "title": "Resource Group Filter Request Body", + "x-stoplight": { + "id": "bzgvkhevpa4rq" + }, + "type": "object", + "description": "Filter request body for Resource Groups.", + "x-examples": { + "example-filter": { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "search_term": "search", + "identifier_filter": [ + "example_resource_group" + ], + "resource_selector_filter": [ + { + "resource_type": "RESOURCE", + "resource_identifier": "example_resource" + } + ], + "managed_filter": "NO_FILTER" + } + }, + "properties": { + "account": { + "type": "string", + "description": "Filter by Account identifier.", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Filter by Organization identifier.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Filter by Project identifier.", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "search_term": { + "type": "string", + "description": "Filter Resource Group matching by identifier/name." + }, + "identifier_filter": { + "type": "array", + "description": "Filter by Resource Group identifiers", + "uniqueItems": true, + "items": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + } + }, + "resource_selector_filter": { + "type": "array", + "description": "Filter based on whether it has a particular Resource.", + "uniqueItems": true, + "items": { + "$ref": "#/components/schemas/ResourceSelectorFilter" + } + }, + "managed_filter": { + "type": "string", + "description": "Filter based on whether the Resource Group is Harness Managed.", + "enum": [ + "NO_FILTER", + "ONLY_MANAGED", + "ONLY_CUSTOM" + ] + } + } + }, + "StreamingDestinationStatus": { + "title": "StreamingDestinationStatus", + "x-stoplight": { + "id": "6k8zse7tcg5y0" + }, + "type": "string", + "x-extension-1": null, + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "description": "Streaming Destination Status enum", + "x-internal": false + }, + "StreamingDestinationDTO": { + "title": "StreamingDestinationDTO", + "x-stoplight": { + "id": "ooye81jxpefty" + }, + "type": "object", + "description": "Streaming Destination model", + "properties": { + "identifier": { + "type": "string", + "description": "Streaming Destination identifier" + }, + "name": { + "type": "string", + "description": "Streaming Destination name" + }, + "status": { + "$ref": "#/components/schemas/StreamingDestinationStatus" + }, + "connector_ref": { + "type": "string", + "description": "Streaming Destination scoped connector reference identifier" + }, + "spec": { + "$ref": "#/components/schemas/StreamingDestinationSpecDTO" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Description for Streaming Destination" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Tags for Streaming Destination" + } + }, + "required": [ + "identifier", + "name", + "status", + "connector_ref", + "spec" + ] + }, + "StreamingDestinationSpecDTO": { + "title": "StreamingDestinationSpecDTO", + "x-stoplight": { + "id": "s4mguy0st7rtt" + }, + "type": "object", + "discriminator": { + "propertyName": "type", + "mapping": { + "AWS_S3": "#/components/schemas/AwsS3StreamingDestinationSpecDTO" + } + }, + "properties": { + "type": { + "type": "string", + "enum": [ + "AWS_S3" + ], + "description": "This specifies the type of Streaming Destination" + } + }, + "required": [ + "type" + ], + "description": "" + }, + "AwsS3StreamingDestinationSpecDTO": { + "allOf": [ + { + "$ref": "#/components/schemas/StreamingDestinationSpecDTO" + }, + { + "type": "object", + "properties": { + "bucket": { + "type": "string", + "description": "The bucket in AWS S3 where audit records are to be written" + } + }, + "required": [ + "bucket" + ] + } + ], + "title": "AwsS3StreamingDestinationSpecDTO", + "description": "AwsS3 Streaming Destination model", + "x-discriminator-value": "AWS_S3" + }, + "StreamingDestinationResponse": { + "title": "StreamingDestinationResponse", + "x-stoplight": { + "id": "rulrehs9nk5a3" + }, + "type": "object", + "description": "Streaming Destination response model", + "properties": { + "streaming_destination": { + "$ref": "#/components/schemas/StreamingDestinationDTO" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Created time of the Streaming Destination" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last updated time of the Streaming Destination" + }, + "status_updated": { + "type": "integer", + "format": "int64", + "description": "Last updated time of the Streaming Destination status" + } + }, + "required": [ + "streaming_destination" + ] + }, + "StreamingDestinationCards": { + "title": "StreamingDestinationCards", + "x-stoplight": { + "id": "1dw4ls5voxwl2" + }, + "type": "object", + "description": "Streaming Destination Cards model", + "properties": { + "countByStatusCard": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StatusWiseCount" + } + }, + "lastStreamedCard": { + "$ref": "#/components/schemas/LastStreamedCard" + }, + "failureInfoCard": { + "$ref": "#/components/schemas/FailureInfoCard" + } + } + }, + "StatusWiseCount": { + "title": "StatusWiseCount", + "x-stoplight": { + "id": "2ad155c277a03" + }, + "type": "object", + "description": "Streaming Destination count by status card", + "properties": { + "status": { + "$ref": "#/components/schemas/StreamingDestinationStatus" + }, + "count": { + "type": "integer", + "description": "Number of streaming destinations at the status" + } + } + }, + "LastStreamedCard": { + "title": "LastStreamedInfo", + "x-stoplight": { + "id": "a35601e416967" + }, + "type": "object", + "description": "Info about last successfull streaming attempt", + "properties": { + "lastStreamedAt": { + "type": "integer", + "format": "int64", + "description": "Timestamp of last successfull streaming attempt" + } + } + }, + "FailureInfoCard": { + "title": "FailureCard", + "x-stoplight": { + "id": "a2d05f2010784" + }, + "type": "object", + "description": "Info about failure in streaming attempt", + "properties": { + "count": { + "type": "integer", + "description": "Number of streaming destinations that have failure", + "format": "int64" + } + } + }, + "StreamingDestinationAggregateDTO": { + "title": "StreamingDestinationAggregateDTO", + "x-stoplight": { + "id": "chl0l737sfwea" + }, + "type": "object", + "description": "Streaming Destination Aggregate DTO", + "properties": { + "streaming_destination": { + "$ref": "#/components/schemas/StreamingDestinationDTO" + } + }, + "required": [ + "streaming_destination", + "connector_info" + ] + }, + "ResourceScopeDTO": { + "title": "ResourceScopeDTO", + "x-stoplight": { + "id": "4pz290lmuwtl3" + }, + "type": "object", + "description": "This has scope details for the resource defined in Harness.", + "properties": { + "account_identifier": { + "type": "string", + "description": "Identifier of Account" + }, + "org_identifier": { + "type": "string", + "description": "Identifier of Organization" + }, + "project_identifier": { + "type": "string", + "description": "Identifier of Project" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ResourceDTO": { + "title": "ResourceDTO", + "x-stoplight": { + "id": "2r7wy11v8scql" + }, + "type": "object", + "description": "This contains info about Resource saved as a part of Audit Event", + "properties": { + "type": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AuditFilterPropertiesV1DTO": { + "title": "AuditFilterPropertiesV1DTO", + "x-stoplight": { + "id": "hrclq6ndh1ymg" + }, + "type": "object", + "description": "Properties of the Filter entity defined in Harness.", + "properties": { + "filter_type": { + "$ref": "#/components/schemas/FilterType" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "tags" + }, + "start_time": { + "type": "integer", + "format": "int64", + "description": "Used to specify a start time for retrieving Audit events that occurred at or after the time indicated." + }, + "end_time": { + "type": "integer", + "format": "int64", + "description": "Used to specify the end time for retrieving Audit events that occurred at or before the time indicated." + }, + "modules": { + "type": "array", + "description": "List of Module Types", + "items": { + "$ref": "#/components/schemas/ModuleType1" + } + }, + "actions": { + "type": "array", + "description": "List of Actions", + "items": { + "$ref": "#/components/schemas/Action" + } + }, + "resources": { + "type": "array", + "description": "List of Resources", + "items": { + "$ref": "#/components/schemas/ResourceDTO" + } + }, + "scopes": { + "type": "array", + "description": "List of Resource Scopes", + "items": { + "$ref": "#/components/schemas/ResourceScopeDTO" + } + }, + "principals": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Principal1" + } + }, + "static_filter": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StaticAuditFilter" + } + }, + "environments": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Environment1" + } + } + } + }, + "StaticAuditFilter": { + "title": "StaticAuditFilter", + "x-stoplight": { + "id": "mdul5d1wgfhez" + }, + "type": "string", + "enum": [ + "SYSTEM_EVENTS", + "LOGIN_EVENTS", + "ENTITY_CHANGE_EVENTS", + "RUNTIME_EVENTS" + ] + }, + "ModuleType1": { + "title": "ModuleType", + "x-stoplight": { + "id": "xjqf65bl7w788" + }, + "type": "string", + "description": "Type of Modules", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "CHAOS", + "CET", + "IDP" + ] + }, + "Action": { + "title": "Action", + "x-stoplight": { + "id": "bzquds8sspg1q" + }, + "type": "string", + "enum": [ + "CREATE", + "UPDATE", + "RESTORE", + "DELETE", + "FORCE_DELETE", + "UPSERT", + "INVITE", + "RESEND_INVITE", + "REVOKE_INVITE", + "ADD_COLLABORATOR", + "REMOVE_COLLABORATOR", + "CREATE_TOKEN", + "REVOKE_TOKEN", + "LOGIN", + "LOGIN2FA", + "UNSUCCESSFUL_LOGIN", + "ERROR_BUDGET_RESET" + ] + }, + "Principal1": { + "title": "Principal", + "x-stoplight": { + "id": "tj7q0qb2zdnyw" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/PrincipalType" + } + } + }, + "PrincipalType": { + "title": "PrincipalType", + "x-stoplight": { + "id": "fxz45g9sxt8f2" + }, + "type": "string", + "enum": [ + "USER", + "SYSTEM", + "API_KEY", + "SERVICE_ACCOUNT" + ] + }, + "Environment1": { + "title": "Environment", + "x-stoplight": { + "id": "jmpmivgkftb1v" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType1" + } + } + }, + "EnvironmentType1": { + "title": "EnvironmentType", + "x-stoplight": { + "id": "ihuiok9k1qcmz" + }, + "type": "string", + "enum": [ + "PreProduction", + "Production" + ] + }, + "FilterType": { + "title": "FilterType", + "x-stoplight": { + "id": "nvm8xs2of7vf8" + }, + "type": "string", + "enum": [ + "CONNECTOR", + "DELEGATEPROFILE", + "DELEGATE", + "PIPELINESETUP", + "PIPELINEEXECUTION", + "DEPLOYMENT", + "AUDIT", + "TEMPLATE", + "ENVIRONMENTGROUP", + "FILESTORE", + "CCMRECOMMENDATION", + "ANOMALY", + "ENVIRONMENT", + "RULEEXECUTION" + ] + }, + "AuditEventDTO": { + "title": "AuditEventDTO", + "x-stoplight": { + "id": "mxditpr8jr7lh" + }, + "type": "object", + "properties": { + "audit_id": { + "type": "string" + }, + "insert_id": { + "type": "string" + }, + "resource_scope": { + "$ref": "#/components/schemas/ResourceScopeDTO" + }, + "timestamp": { + "type": "integer" + }, + "module": { + "$ref": "#/components/schemas/ModuleType1" + }, + "http_request_info": { + "$ref": "#/components/schemas/HttpRequestInfo" + }, + "request_metadata": { + "$ref": "#/components/schemas/RequestMetadata" + }, + "authentication_info": { + "$ref": "#/components/schemas/AuthenticationInfoDTO" + }, + "environment": { + "$ref": "#/components/schemas/Environment1" + }, + "resource": { + "$ref": "#/components/schemas/ResourceDTO" + }, + "yaml_diff_record": { + "$ref": "#/components/schemas/YamlDiffRecordDTO" + }, + "action": { + "$ref": "#/components/schemas/Action" + }, + "internal_info": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "HttpRequestInfo": { + "title": "HttpRequestInfo", + "x-stoplight": { + "id": "xv4gl47om7rva" + }, + "type": "object", + "properties": { + "request_method": { + "type": "string" + } + } + }, + "RequestMetadata": { + "title": "RequestMetadata", + "x-stoplight": { + "id": "ga39sbthmsnqw" + }, + "type": "object", + "properties": { + "client_ip": { + "type": "string" + } + } + }, + "AuthenticationInfoDTO": { + "title": "AuthenticationInfoDTO", + "x-stoplight": { + "id": "vbhi03cpej4ej" + }, + "type": "object", + "properties": { + "principal": { + "$ref": "#/components/schemas/Principal1" + }, + "labels": { + "type": "string" + } + } + }, + "YamlDiffRecordDTO": { + "title": "YamlDiffRecordDTO", + "x-stoplight": { + "id": "9t10m54ew32zz" + }, + "type": "object", + "description": "This has the YAML Difference of the record.", + "properties": { + "old_yaml": { + "type": "string", + "description": "Previous YAML version" + }, + "new_yaml": { + "type": "string", + "description": "Current YAML version" + } + } + }, + "NotificationChannelDTO": { + "type": "object", + "x-examples": { + "Example 1": { + "name": "nc1", + "org": "org1", + "project": "proj1", + "notification_channel_type": "EMAIL", + "status": "DISABLED", + "channel": { + "email_ids": [], + "user_groups": [ + {} + ] + }, + "created_by": {}, + "created": 0 + }, + "Example 2": { + "name": "string", + "org": "string", + "project": "string", + "notification_channel_type": "string", + "status": "string", + "channel": { + "slack_web_hook_urls": [], + "user_groups": [ + {} + ] + }, + "created_by": {}, + "created": 0 + }, + "Example 3": { + "name": "string", + "org": "string", + "project": "string", + "notification_channel_type": "string", + "status": "string", + "channel": { + "pager_duty_integration_keys": [], + "user_groups": [ + {} + ] + }, + "created_by": {}, + "created": 0 + }, + "Example 4": { + "name": "string", + "org": "string", + "project": "string", + "notification_channel_type": "string", + "status": "string", + "channel": { + "userGroups": [ + {} + ], + "headers": {} + }, + "created_by": {}, + "created": 0 + } + }, + "description": "Notification Channel DTO", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "gjyp93g6bbac6" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "1z2ggn67web3c" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "83uq77a6a6sas" + } + }, + "notification_channel_type": { + "$ref": "#/components/schemas/ChannelType" + }, + "status": { + "$ref": "#/components/schemas/Status" + }, + "channel": { + "$ref": "#/components/schemas/ChannelDTO" + }, + "last_modified": { + "type": "integer", + "x-stoplight": { + "id": "11ay58xlnd6fw" + }, + "format": "int64" + }, + "created": { + "type": "integer", + "x-stoplight": { + "id": "gptqmzli7lqvo" + }, + "format": "int64" + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "9ba97bypq7u8d" + } + }, + "account": { + "type": "string", + "x-stoplight": { + "id": "cxf3l813219n4" + } + } + }, + "required": [ + "channel", + "notification_channel_type" + ] + }, + "NotificationRuleDTO": { + "type": "object", + "x-examples": { + "Example 1": { + "identifier": "NR1", + "account": "accountid", + "org": "org1", + "project": "myproj", + "notification_entity": "DELEGATE", + "notification_conditions": [ + { + "name": "del-condition", + "notification_event_configs": [ + { + "notification_event": "DELEGATE_DOWN", + "notification_channels": [ + { + "name": "nc1", + "org": "org1", + "project": "proj1", + "notification_channel_type": "PAGERDUTY", + "status": "DISABLED", + "channel": { + "pager_duty_integration_keys": [], + "user_groups": [ + {} + ] + }, + "created_by": {}, + "created": 0, + "nextIteration": 0 + } + ] + }, + { + "notificationEvent": "DELEGATE_EXPIRED", + "notificationChannels": [ + { + "name": "nc1", + "org": "org1", + "project": "proj1", + "notificationChannelType": "PAGERDUTY", + "status": "DISABLED", + "channel": { + "pagerDutyIntegrationKeys": [], + "userGroups": [ + {} + ] + }, + "created_by": {}, + "created": 0, + "nextIteration": 0 + } + ] + } + ] + } + ], + "status": "ENABLED", + "created_by": {}, + "created": 0 + } + }, + "description": "Notification Rule DTO", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "3xy0lrmqbzujp" + } + }, + "account": { + "type": "string", + "x-stoplight": { + "id": "0knfytbeagygi" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "plxjwxq3kbtmf" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "kip45dsvd6vya" + } + }, + "status": { + "$ref": "#/components/schemas/Status" + }, + "last_modified": { + "type": "integer", + "x-stoplight": { + "id": "g71dkqd7f8w9l" + }, + "format": "int64" + }, + "created": { + "type": "integer", + "x-stoplight": { + "id": "uflyip2weeewr" + }, + "format": "int64" + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "fxelaoeenutjb" + } + }, + "notification_conditions": { + "x-stoplight": { + "id": "17841zlwcujh4" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationConditionDTO" + } + }, + "notification_channel_refs": { + "type": "array", + "x-stoplight": { + "id": "7rem3rrfdyxfk" + }, + "items": { + "type": "string" + } + }, + "custom_notification_template_ref": { + "$ref": "#/components/schemas/CustomNotificationTemplateDTO" + } + } + }, + "ChannelType": { + "title": "ChannelType", + "type": "string", + "x-stoplight": { + "id": "oi0x0mhbugr20" + }, + "enum": [ + "EMAIL", + "SLACK", + "PAGERDUTY", + "MSTEAMS", + "WEBHOOK", + "DATADOG" + ], + "description": "Notification Channel Type" + }, + "Status": { + "title": "Status", + "type": "string", + "x-stoplight": { + "id": "57964lq16jzs3" + }, + "enum": [ + "ENABLED", + "DISABLED" + ], + "description": "Notification Rule Status" + }, + "UserGroupDTO1": { + "title": "UserGroupDTO", + "x-stoplight": { + "id": "oz9bkecz1esfm" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "u815tqcfbr57h" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "ssoyhq1s352ih" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "advelmh410p94" + } + } + } + }, + "ChannelDTO": { + "title": "ChannelDTO", + "x-stoplight": { + "id": "63jic64es47uu" + }, + "type": "object", + "properties": { + "email_ids": { + "type": "array", + "x-stoplight": { + "id": "nvmrl0803hf3n" + }, + "items": { + "x-stoplight": { + "id": "gvouq5lrvd0jo" + }, + "type": "string" + } + }, + "slack_webhook_urls": { + "type": "array", + "x-stoplight": { + "id": "f7t1sclpjrnc3" + }, + "items": { + "x-stoplight": { + "id": "sr0wdj5c651h4" + }, + "type": "string" + } + }, + "webhook_urls": { + "type": "array", + "x-stoplight": { + "id": "hj9dvblmeot1c" + }, + "items": { + "x-stoplight": { + "id": "c6qx5d4zp4hy5" + }, + "type": "string" + } + }, + "pager_duty_integration_keys": { + "type": "array", + "x-stoplight": { + "id": "gvpc9mkv7rv41" + }, + "items": { + "x-stoplight": { + "id": "4bvfcay6ejjtr" + }, + "type": "string" + } + }, + "ms_team_keys": { + "type": "array", + "x-stoplight": { + "id": "f5emuderczyd0" + }, + "items": { + "x-stoplight": { + "id": "11cgn8om91cgr" + }, + "type": "string" + } + }, + "user_groups": { + "type": "array", + "x-stoplight": { + "id": "qoe3qfimgqqbt" + }, + "items": { + "$ref": "#/components/schemas/UserGroupDTO1" + } + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WebHookHeaders" + } + }, + "datadog_urls": { + "type": "array", + "x-stoplight": { + "id": "hj9dvblmeot1d" + }, + "items": { + "x-stoplight": { + "id": "c6qx5d4zp4hy5" + }, + "type": "string" + } + }, + "api_key": { + "type": "string", + "x-stoplight": { + "id": "hj9dvblmeot1e" + } + }, + "delegate_selectors": { + "type": "array", + "x-stoplight": { + "id": "ij8dvblmeot1d" + }, + "items": { + "x-stoplight": { + "id": "y6qx5d8zp4hy5" + }, + "type": "string" + } + }, + "execute_on_delegate": { + "type": "boolean", + "x-stoplight": { + "id": "ij8dvblmeyt1d" + } + } + } + }, + "NotificationConditionDTO": { + "title": "NotificationConditionDTO", + "x-stoplight": { + "id": "x6qlppxurh1mc" + }, + "type": "object", + "properties": { + "condition_name": { + "type": "string", + "x-stoplight": { + "id": "697xioj0wwra7" + } + }, + "notification_event_configs": { + "type": "array", + "x-stoplight": { + "id": "o2pktaqro6dtv" + }, + "items": { + "$ref": "#/components/schemas/NotificationEventConfigDTO" + } + } + } + }, + "NotificationEventConfigDTO": { + "title": "NotificationEventConfigDTO", + "x-stoplight": { + "id": "vvdqrc1istt8n" + }, + "type": "object", + "properties": { + "notification_entity": { + "type": "string" + }, + "notification_event_data": { + "$ref": "#/components/schemas/NotificationEventParamsDTO", + "x-stoplight": { + "id": "7kv2sz6c1vthx" + } + }, + "notification_event": { + "type": "string" + }, + "entity_identifiers": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "WebHookHeaders": { + "title": "WebHookHeaders", + "x-stoplight": { + "id": "8w8k6zkcbesay" + }, + "type": "object", + "properties": { + "key": { + "type": "string", + "x-stoplight": { + "id": "glshqjklea20e" + } + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "5etjhnv4quj97" + } + } + } + }, + "NotificationResourceDTO": { + "title": "NotificationResourceDTO", + "x-stoplight": { + "id": "008920f2zzf1d" + }, + "type": "object", + "properties": { + "resource_name": { + "type": "string", + "x-stoplight": { + "id": "sk4desmgfuy93" + } + }, + "events": { + "type": "array", + "x-stoplight": { + "id": "ul4nznur4bfd9" + }, + "items": { + "x-stoplight": { + "id": "bdi2x87lzw3eo" + }, + "type": "string" + } + }, + "enabled": { + "type": "boolean", + "x-stoplight": { + "id": "ythx08f560f7i" + } + } + }, + "description": "Notification resource and list of events" + }, + "NotificationEventParamsDTO": { + "title": "NotificationEventParamsDTO", + "x-stoplight": { + "id": "esscocuf2l83m" + }, + "type": "object", + "discriminator": { + "propertyName": "type", + "mapping": { + "DELEGATE": "#/components/schemas/DelegateEventNotificationParamsDTO", + "PIPELINE": "#/components/schemas/PipelineEventNotificationParamsDTO", + "CHAOS_EXPERIMENT": "#/components/schemas/ChaosExperimentEventNotificationParamsDTO", + "SERVICE_LEVEL_OBJECTIVE": "#/components/schemas/SLOEventNotificationParamsDTO" + } + }, + "properties": { + "type": { + "$ref": "#/components/schemas/ResourceTypeEnum" + } + }, + "description": "Notification Event Params" + }, + "DelegateEventNotificationParamsDTO": { + "title": "DelegateEventNotificationParamsDTO", + "x-stoplight": { + "id": "j02ar2adwh9pv" + }, + "allOf": [ + { + "$ref": "#/components/schemas/NotificationEventParamsDTO" + }, + { + "type": "object", + "x-stoplight": { + "id": "7i0op7u06osi7" + }, + "properties": { + "delegate_group_ids": { + "deprecated": true, + "description": "Deprecated, Use notificationEventConfig.entity_identifiers instead", + "type": "array", + "x-stoplight": { + "id": "t1bf8hmd3q1qv" + }, + "items": { + "x-stoplight": { + "id": "qvusu8xw7w7nl" + }, + "type": "string" + } + } + } + }, + { + "type": "object", + "x-stoplight": { + "id": "y5mbg4yqcz34s" + }, + "properties": { + "frequency": { + "$ref": "#/components/schemas/FrequencyDTO" + } + } + } + ], + "x-discriminator-value": "DELEGATE" + }, + "ChaosExperimentEventNotificationParamsDTO": { + "title": "ChaosExperimentEventNotificationParamsDTO", + "x-stoplight": { + "id": "j02ar2adwh9pk" + }, + "allOf": [ + { + "$ref": "#/components/schemas/NotificationEventParamsDTO" + }, + { + "type": "object", + "x-stoplight": { + "id": "7i0op7u06osi9" + }, + "properties": { + "chaos_experiment_ids": { + "deprecated": true, + "description": "Deprecated, Use notificationEventConfig.entity_identifiers instead", + "type": "array", + "x-stoplight": { + "id": "t1bf8hmd3q1qg" + }, + "items": { + "x-stoplight": { + "id": "qvusu8xw7w7nd" + }, + "type": "string" + } + } + } + } + ], + "x-discriminator-value": "CHAOS_EXPERIMENT" + }, + "SLOEventNotificationParamsDTO": { + "title": "SLOEventNotificationParamsDTO", + "x-stoplight": { + "id": "j02ar2adwh9pk11" + }, + "allOf": [ + { + "$ref": "#/components/schemas/NotificationEventParamsDTO" + }, + { + "type": "object", + "x-stoplight": { + "id": "7i0op7u06osi911" + }, + "properties": { + "error_budget_remaining_percentage": { + "description": "The percentage of error budget remaining for the SLO.", + "type": "number", + "format": "float", + "x-stoplight": { + "id": "qvusu8xw7w7nff" + } + }, + "error_budget_remaining_minutes": { + "description": "The remaining error budget in minutes for the SLO.", + "type": "integer", + "x-stoplight": { + "id": "qvusu8xw7w7gg" + } + }, + "error_budget_burn_rate_percentage": { + "type": "number", + "format": "float", + "x-stoplight": { + "id": "qvusu8xw7w7kk" + } + }, + "error_budget_burn_rate_lookback_duration": { + "type": "integer", + "x-stoplight": { + "id": "qvusu8xw7w7gg" + } + } + } + } + ], + "x-discriminator-value": "SERVICE_LEVEL_OBJECTIVE" + }, + "PipelineEventNotificationParamsDTO": { + "title": "PipelineEventNotificationParamsDTO", + "x-stoplight": { + "id": "eyy1wyt46d2ha" + }, + "allOf": [ + { + "$ref": "#/components/schemas/NotificationEventParamsDTO" + }, + { + "type": "object", + "x-stoplight": { + "id": "j5xmrs2ayjg6i" + }, + "properties": { + "scope_identifiers": { + "type": "array", + "x-stoplight": { + "id": "0kx13oklf2jgn" + }, + "items": { + "x-stoplight": { + "id": "i8y9pkjraatbe" + }, + "type": "string" + } + } + } + } + ], + "x-discriminator-value": "PIPELINE" + }, + "ResourceTypeEnum": { + "title": "ResourceTypeEnum", + "type": "string", + "x-stoplight": { + "id": "ad4v5eitxzg50" + }, + "enum": [ + "DELEGATE", + "CHAOS_EXPERIMENT", + "PIPELINE", + "SERVICE_LEVEL_OBJECTIVE" + ] + }, + "FrequencyDTO": { + "title": "FrequencyDTO", + "x-stoplight": { + "id": "wo0h6g8kfjsyn" + }, + "type": "object", + "properties": { + "key": { + "type": "string", + "x-stoplight": { + "id": "hu2ibnm22hylk" + } + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "22asincaf677k" + } + } + } + }, + "ValidateIdentifierDTO": { + "title": "ValidateIdentifierDTO", + "x-stoplight": { + "id": "rfcu5cr80bs8g" + }, + "type": "object", + "properties": { + "exists": { + "type": "boolean", + "x-stoplight": { + "id": "i73hymdxgepoo" + } + } + } + }, + "AttachmentDTO": { + "title": "AttachmentDTO", + "x-stoplight": { + "id": "ifhhgycz8eck6" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "ev6z6tsf924jn" + }, + "description": "Name of the file with proper extention" + }, + "mimeType": { + "type": "string", + "x-stoplight": { + "id": "43xecvjff9l9m" + }, + "description": "mime type of the file" + } + }, + "required": [ + "name", + "mimeType" + ] + }, + "CustomNotificationTemplateDTO": { + "title": "CustomNotificationTemplateDTO", + "x-stoplight": { + "id": "7i0op7u06osi8" + }, + "type": "object", + "x-examples": { + "Example 1": { + "template": { + "templateRef": "org.nginx", + "versionLabel": "v1", + "variables": [ + { + "name": "variable1", + "value": "value1", + "type": "string" + }, + { + "name": "variable2", + "value": "value2", + "type": "string" + } + ] + } + } + }, + "properties": { + "template_ref": { + "type": "string" + }, + "version_label": { + "type": "string" + }, + "variables": { + "type": "array", + "x-stoplight": { + "id": "0r23u2qzuxaz6" + }, + "items": { + "$ref": "#/components/schemas/NotificationTemplateInputsDTO" + } + } + } + }, + "NotificationTemplateInputsDTO": { + "title": "NotificationTemplateInputsDTO", + "x-stoplight": { + "id": "hrzvz8ee0gojd" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "sqj7hpyogmoun" + } + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "3sf823v22jfdd" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "slnpq1uq97zre" + } + } + }, + "required": [ + "name", + "value" + ] + }, + "NotificationsSimulateDTO": { + "title": "NotificationsSimulateDTO", + "x-stoplight": { + "id": "f4grtn2ious85" + }, + "type": "object", + "properties": { + "count": { + "type": "integer", + "x-stoplight": { + "id": "cxmbsyd6epvyd" + } + }, + "accountId": { + "type": "string", + "x-stoplight": { + "id": "ix6homw8h8fqw" + } + }, + "orgId": { + "type": "string", + "x-stoplight": { + "id": "4eaqra5csvfrx" + } + }, + "projectId": { + "type": "string", + "x-stoplight": { + "id": "jewn9zw65yrsp" + } + }, + "pipelineId": { + "type": "string", + "x-stoplight": { + "id": "3ojsa04e2j6zm" + } + }, + "event": { + "type": "string", + "x-stoplight": { + "id": "w4f6cmjjatsln" + } + } + } + }, + "GitDetails": { + "title": "Git Response Details", + "x-stoplight": { + "id": "f37z1efdf6zuu" + }, + "type": "object", + "description": "Git Experience related details of the Entity.", + "x-examples": { + "example-git": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + } + }, + "properties": { + "object_id": { + "type": "string", + "description": "Object identifier / blob id", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "file_path": { + "type": "string", + "description": "File path of the Entity in the repository." + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + }, + "commit_id": { + "type": "string", + "description": "Latest commit identifier." + }, + "file_url": { + "type": "string", + "description": "File URL of the Entity." + }, + "repo_url": { + "type": "string", + "description": "Repository URL of the Entity." + } + } + }, + "PipelineGetResponseBody": { + "title": "Pipeline Get Response Body", + "x-stoplight": { + "id": "4h678yi7heynq" + }, + "description": "Pipeline response body.", + "x-examples": { + "example-get": { + "pipeline_yaml": "example_yaml_text", + "template_applied_pipeline_yaml": "example_yaml_text_with_template", + "identifier": "example_pipeline", + "name": "ExamplePipeline", + "org": "example_org", + "project": "example_project", + "description": "Pipeline Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "modules": [ + "cd" + ], + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "valid": true, + "yaml_error_wrapper": { + "message": "something is incorrect", + "message_fqn": "something is incorrect at pipeline.name", + "stage_info": { + "identifier": "example_stage", + "type": "stage", + "name": "Example Stage", + "fqn": "pipeline.stages.stage" + }, + "step_info": { + "identifier": "example_step", + "type": "string", + "name": "string", + "fqn": "pipeline.steps.step" + }, + "fqn": "pipeline.name", + "hint_message": "try changing something" + }, + "cache_response_metadata": { + "cache_state": "VALID_CACHE", + "ttl_left": 9223372036854776000, + "last_updated_at": 9223372036854776000 + }, + "created": 1234567890, + "updated": 1234567890 + } + }, + "type": "object", + "properties": { + "pipeline_yaml": { + "type": "string", + "description": "Pipeline YAML (returned as a String)." + }, + "template_applied_pipeline_yaml": { + "type": "string", + "description": "Pipeline YAML after resolving Templates (returned as a String)." + }, + "identifier": { + "type": "string", + "description": "Pipeline identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Pipeline name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Organization identifier" + }, + "project": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Project identifier" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Pipeline description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Pipeline tags" + }, + "modules": { + "type": "array", + "description": "Modules utilised in the Pipeline.", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "git_details": { + "$ref": "#/components/schemas/GitDetails" + }, + "valid": { + "type": "boolean", + "description": "Specifies whether Pipeline is a valid or not." + }, + "yaml_error_wrapper": { + "type": "array", + "description": "YAML schema errors.", + "items": { + "$ref": "#/components/schemas/YAMLSchemaErrorWrapper" + } + }, + "cache_response_metadata": { + "$ref": "#/components/schemas/CacheResponseMetadataDTO" + }, + "created": { + "type": "integer", + "description": "Creation timestamp for Pipeline.", + "format": "int64" + }, + "updated": { + "type": "integer", + "description": "Last modification timestamp for Pipeline.", + "format": "int64" + }, + "validation_uuid": { + "type": "string", + "description": "UUID of the asynchronous validation event started, if any" + } + } + }, + "PipelineListResponseBody": { + "title": "Pipeline List Response Body", + "x-stoplight": { + "id": "qpvdgdpl74rue" + }, + "description": "Pipeline List response body", + "x-examples": { + "example-summary": { + "identifier": "example_pipeline", + "name": "Example Pipeline", + "description": "This is an Example Pipeline", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "created": 1234567890, + "updated": 1234567890, + "modules": "CD", + "recent_execution_info": [ + { + "executor_info": { + "trigger_type": "NOOP", + "username": "harness_user", + "email": "noreply@harness.io" + }, + "execution_id": "example_execution_identifier", + "execution_status": "Running", + "started": 1234567890, + "ended": 1234567890, + "run_number": 5 + } + ], + "store_type": "REMOTE", + "connector_ref": "example_connector", + "valid": true, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + } + } + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Pipeline identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Pipeline name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Pipeline description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Pipeline tags" + }, + "created": { + "type": "integer", + "description": "Creation timestamp for Pipeline.", + "format": "int64" + }, + "updated": { + "type": "integer", + "description": "Last modification timestamp for Pipeline.", + "format": "int64" + }, + "modules": { + "type": "array", + "description": "Modules utilised in the Pipeline.", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "recent_execution_info": { + "type": "array", + "description": "Array of recent Execution information", + "items": { + "$ref": "#/components/schemas/RecentExecutionInfo" + } + }, + "store_type": { + "type": "string", + "description": "Specifies whether the Entity is to be stored in Git or not (for Git Experience).", + "enum": [ + "INLINE", + "REMOTE" + ] + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + "valid": { + "type": "boolean", + "description": "Specifies whether Pipeline is a valid or not." + }, + "git_details": { + "$ref": "#/components/schemas/GitDetails" + }, + "yaml_version": { + "type": "string", + "x-stoplight": { + "id": "61n7epvs4bu1u" + } + } + } + }, + "TriggerRequestBody": { + "title": "Trigger Request Body", + "type": "object", + "description": "Trigger request body object ", + "properties": { + "description": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "encrypted_webhook_secret_identifier": { + "type": "string" + }, + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_]{0,127}$" + }, + "input_set_refs": { + "type": "array", + "items": { + "type": "string" + } + }, + "inputs": { + "type": "string", + "description": "input yaml to be used in the pipeline" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_0-9-.][-0-9a-zA-Z_\\s.]{0,127}$" + }, + "pipeline_branch_name": { + "type": "string" + }, + "source": { + "$ref": "#/components/schemas/TriggerSource" + }, + "stages_to_execute": { + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "type", + "identifier", + "name", + "source" + ] + }, + "TriggerSource": { + "title": "Trigger Source", + "type": "object", + "properties": { + "poll_interval": { + "type": "string", + "pattern": "(((([1-9])+\\d*[mh])+(\\s/?\\d+[mh])*)|(^$)|(0))$" + }, + "type": { + "type": "string", + "description": "This specifies the type of the trigger", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + }, + "webhook_id": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "Scheduled": "#/components/schemas/ScheduledTriggerSource", + "Webhook": "#/components/schemas/WebhookTriggerSource", + "Manifest": "#/components/schemas/ManifestTriggerSource", + "Artifact": "#/components/schemas/ArtifactTriggerSource", + "MultiRegionArtifact": "#/components/schemas/MultiRegionArtifactTriggerSource" + } + }, + "required": [ + "type", + "spec" + ] + }, + "ScheduledTriggerSource": { + "title": "Scheduled Trigger Source", + "x-discriminator-value": "Scheduled", + "allOf": [ + { + "$ref": "#/components/schemas/TriggerSource" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/ScheduledTriggerSpec" + } + } + } + ] + }, + "WebhookTriggerSource": { + "title": "Webhook Trigger Source", + "x-discriminator-value": "Webhook", + "allOf": [ + { + "$ref": "#/components/schemas/TriggerSource" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/WebhookTriggerSpec" + } + } + } + ] + }, + "ManifestTriggerSource": { + "title": "Manifest Trigger Source", + "x-discriminator-value": "Manifest", + "allOf": [ + { + "$ref": "#/components/schemas/TriggerSource" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/ManifestTriggerSpec" + } + } + } + ] + }, + "ArtifactType": { + "title": "ArtifactType", + "enum": [ + "Gcr", + "Ecr", + "Acr", + "DockerRegistry", + "Nexus3Registry", + "Nexus2Registry", + "ArtifactoryRegistry", + "AmazonS3", + "Jenkins", + "CustomArtifact", + "GoogleArtifactRegistry", + "GithubPackageRegistry", + "AzureArtifacts", + "AmazonMachineImage", + "GoogleCloudStorage", + "Bamboo" + ] + }, + "ArtifactTriggerSource": { + "title": "Artifact Trigger Source", + "x-discriminator-value": "Artifact", + "allOf": [ + { + "$ref": "#/components/schemas/TriggerSource" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + } + } + } + ] + }, + "MultiRegionArtifactTriggerSource": { + "title": "Multi Region Artifact Trigger Source", + "x-discriminator-value": "MultiRegionArtifact", + "allOf": [ + { + "$ref": "#/components/schemas/TriggerSource" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/MultiRegionArtifactTriggerSpec" + } + } + } + ] + }, + "AMIFilter": { + "title": "AMI Artifact Registry filter", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "TriggerConditions": { + "title": "Trigger Conditions", + "type": "object", + "description": "Conditions for the Trigger", + "properties": { + "key": { + "type": "string" + }, + "operator": { + "type": "string", + "enum": [ + "In", + "Equals", + "NotEquals", + "StartsWith", + "EndsWith", + "Contains", + "DoesNotContain", + "Regex", + "NotIn" + ] + }, + "value": { + "type": "string" + } + } + }, + "ScheduledTriggerSpec": { + "title": "Scheduled Trigger Spec", + "type": "object", + "description": "Spec for Scheduled Triggers", + "properties": { + "type": { + "type": "string", + "enum": [ + "Cron" + ] + }, + "spec": { + "$ref": "#/components/schemas/CronScheduledTriggerSpec" + } + } + }, + "WebhookTriggerSpec": { + "title": "Webhook Trigger Spec", + "type": "object", + "description": "Spec for Webhook Triggers", + "properties": { + "type": { + "type": "string", + "description": "This specifies the type of webhook trigger", + "enum": [ + "Github", + "Gitlab", + "Bitbucket", + "AwsCodeCommit", + "AzureRepo", + "Harness", + "Custom" + ] + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "Github": "#/components/schemas/GithubWebhookSpec", + "Gitlab": "#/components/schemas/GitlabWebhookSpec", + "Bitbucket": "#/components/schemas/BitbucketWebhookSpec", + "AwsCodeCommit": "#/components/schemas/AwsCodeCommitWebhookSpec", + "AzureRepo": "#/components/schemas/AzureRepoWebhookSpec", + "Harness": "#/components/schemas/HarnessWebhookSpec", + "Custom": "#/components/schemas/CustomWebhookSpec" + } + }, + "required": [ + "type", + "spec" + ] + }, + "ManifestTriggerSpec": { + "title": "Manifest Trigger Spec", + "type": "object", + "description": "Spec for Manifest Triggers", + "properties": { + "type": { + "type": "string", + "description": "This specifies the type of Manifest trigger", + "enum": [ + "HelmChart" + ] + }, + "spec": { + "$ref": "#/components/schemas/HelmChartManifestTriggerSpec" + } + } + }, + "MultiRegionArtifactTriggerSpec": { + "title": "Multi Region Artifact Trigger Spec", + "type": "object", + "description": "Spec for Multi Region Artifact Triggers", + "properties": { + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/ArtifactType" + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactTypeSpecWrapper" + } + } + } + }, + "ArtifactTypeSpecWrapper": { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + } + } + }, + "ArtifactTriggerSpec": { + "title": "Artifact Trigger Spec", + "type": "object", + "description": "Spec for Artifact Triggers", + "properties": { + "type": { + "$ref": "#/components/schemas/ArtifactType" + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "Gcr": "#/components/schemas/GcrArtifactSpec", + "Ecr": "#/components/schemas/EcrArtifactSpec", + "Acr": "#/components/schemas/AcrArtifactSpec", + "DockerRegistry": "#/components/schemas/DockerRegistryArtifactSpec", + "Nexus3Registry": "#/components/schemas/Nexus3RegistryArtifactSpec", + "Nexus2Registry": "#/components/schemas/Nexus2RegistryArtifactSpec", + "ArtifactoryRegistry": "#/components/schemas/ArtifactoryRegistryArtifactSpec", + "AmazonS3": "#/components/schemas/AmazonS3ArtifactSpec", + "Jenkins": "#/components/schemas/JenkinsArtifactSpec", + "CustomArtifact": "#/components/schemas/CustomArtifactSpec", + "GoogleArtifactRegistry": "#/components/schemas/GoogleArtifactRegistryArtifactSpec", + "GithubPackageRegistry": "#/components/schemas/GithubPackageRegistryArtifactSpec", + "AzureArtifacts": "#/components/schemas/AzureArtifactsArtifactSpec", + "AmazonMachineImage": "#/components/schemas/AmazonMachineImageArtifactSpec", + "GoogleCloudStorage": "#/components/schemas/GoogleCloudStorageArtifactSpec", + "Bamboo": "#/components/schemas/BambooArtifactSpec" + } + } + }, + "GcrArtifactSpec": { + "title": "Gcr Artifact Spec", + "x-discriminator-value": "Gcr", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/GcrArtifactTriggerSpec" + } + } + } + ] + }, + "GcrArtifactTriggerSpec": { + "title": "Gcr Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "registry_hostname": { + "type": "string" + }, + "image_path": { + "type": "string" + }, + "tag": { + "type": "string" + } + } + }, + "EcrArtifactSpec": { + "title": "Ecr Artifact Spec", + "x-discriminator-value": "Ecr", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/EcrArtifactTriggerSpec" + } + } + } + ] + }, + "EcrArtifactTriggerSpec": { + "title": "Ecr Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "region": { + "type": "string" + }, + "image_path": { + "type": "string" + }, + "tag": { + "type": "string" + }, + "registry_id": { + "type": "string" + } + } + }, + "AcrArtifactSpec": { + "title": "Acr Artifact Spec", + "x-discriminator-value": "Acr", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/AcrArtifactTriggerSpec" + } + } + } + ] + }, + "AcrArtifactTriggerSpec": { + "title": "Acr Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "subscription_id": { + "type": "string" + }, + "repository": { + "type": "string" + }, + "tag": { + "type": "string" + }, + "registry": { + "type": "string" + } + } + }, + "DockerRegistryArtifactSpec": { + "title": "Docker Registry Artifact Spec", + "x-discriminator-value": "DockerRegistry", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/DockerRegistryArtifactTriggerSpec" + } + } + } + ] + }, + "DockerRegistryArtifactTriggerSpec": { + "title": "Docker Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "tag": { + "type": "string" + }, + "image_path": { + "type": "string" + } + } + }, + "Nexus3RegistryArtifactSpec": { + "title": "Nexus3 Registry Artifact Spec", + "x-discriminator-value": "Nexus3Registry", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/Nexus3RegistryArtifactTriggerSpec" + } + } + } + ] + }, + "Nexus3RegistryArtifactTriggerSpec": { + "title": "Nexus3 Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "repository": { + "type": "string" + }, + "image_path": { + "type": "string" + }, + "repository_format": { + "type": "string" + }, + "artifact_id": { + "type": "string" + }, + "package_name": { + "type": "string" + }, + "group_id": { + "type": "string" + }, + "repository_url": { + "type": "string" + }, + "classifier": { + "type": "string" + }, + "extension": { + "type": "string" + }, + "group": { + "type": "string" + }, + "tag": { + "type": "string" + } + } + }, + "Nexus2RegistryArtifactSpec": { + "title": "Nexus2Registry Artifact Spec", + "x-discriminator-value": "Nexus2Registry", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/Nexus2RegistryArtifactTriggerSpec" + } + } + } + ] + }, + "Nexus2RegistryArtifactTriggerSpec": { + "title": "Nexus2 Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "repository_name": { + "type": "string" + }, + "repository_format": { + "type": "string" + }, + "artifact_id": { + "type": "string" + }, + "package_name": { + "type": "string" + }, + "group_id": { + "type": "string" + }, + "repository_url": { + "type": "string" + }, + "classifier": { + "type": "string" + }, + "extension": { + "type": "string" + }, + "tag": { + "type": "string" + } + } + }, + "ArtifactoryRegistryArtifactSpec": { + "title": "ArtifactoryRegistry Artifact Spec", + "x-discriminator-value": "ArtifactoryRegistry", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/ArtifactoryRegistryArtifactTriggerSpec" + } + } + } + ] + }, + "ArtifactoryRegistryArtifactTriggerSpec": { + "title": "Artifactory Registry Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "artifact_directory": { + "type": "string" + }, + "artifact_path": { + "type": "string" + }, + "repository": { + "type": "string" + }, + "repository_format": { + "type": "string" + }, + "repository_url": { + "type": "string" + }, + "artifact_filter": { + "type": "string" + } + } + }, + "AmazonS3ArtifactSpec": { + "title": "AmazonS3 Artifact Spec", + "x-discriminator-value": "AmazonS3", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/AmazonS3ArtifactTriggerSpec" + } + } + } + ] + }, + "AmazonS3ArtifactTriggerSpec": { + "title": "AmazonS3 Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "region": { + "type": "string" + }, + "bucket_name": { + "type": "string" + }, + "file_path_regex": { + "type": "string" + } + } + }, + "JenkinsArtifactSpec": { + "title": "Jenkins Artifact Spec", + "x-discriminator-value": "Jenkins", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/JenkinsArtifactTriggerSpec" + } + } + } + ] + }, + "JenkinsArtifactTriggerSpec": { + "title": "Jenkins Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "job_name": { + "type": "string" + }, + "artifact_path": { + "type": "string" + }, + "build": { + "type": "string" + } + } + }, + "CustomArtifactSpec": { + "title": "Custom Artifact Spec", + "x-discriminator-value": "CustomArtifact", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/CustomArtifactTriggerSpec" + } + } + } + ] + }, + "CustomArtifactTriggerSpec": { + "title": "Custom Artifact Trigger Spec", + "type": "object", + "properties": { + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "version": { + "type": "string" + }, + "script": { + "type": "string" + }, + "artifacts_array_path": { + "type": "string" + }, + "version_path": { + "type": "string" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGVariable" + } + } + } + }, + "GoogleArtifactRegistryArtifactSpec": { + "title": "GoogleArtifactRegistry Artifact Spec", + "x-discriminator-value": "GoogleArtifactRegistry", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/GoogleArtifactRegistryArtifactTriggerSpec" + } + } + } + ] + }, + "GoogleArtifactRegistryArtifactTriggerSpec": { + "title": "Google Artifact Registry Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "version": { + "type": "string" + }, + "region": { + "type": "string" + }, + "project": { + "type": "string" + }, + "repository_name": { + "type": "string" + }, + "pkg": { + "type": "string" + } + } + }, + "GithubPackageRegistryArtifactSpec": { + "title": "GithubPackageRegistry Artifact Spec", + "x-discriminator-value": "GithubPackageRegistry", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/GithubPackageRegistryArtifactTriggerSpec" + } + } + } + ] + }, + "GithubPackageRegistryArtifactTriggerSpec": { + "title": "Github Package Registry Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "org": { + "type": "string" + }, + "package_name": { + "type": "string" + }, + "package_type": { + "type": "string" + } + } + }, + "AzureArtifactsArtifactSpec": { + "title": "AzureArtifacts Artifact Spec", + "x-discriminator-value": "AzureArtifacts", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/AzureArtifactsArtifactTriggerSpec" + } + } + } + ] + }, + "AzureArtifactsArtifactTriggerSpec": { + "title": "Azure Artifacts Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "project": { + "type": "string" + }, + "package_name": { + "type": "string" + }, + "package_type": { + "type": "string" + }, + "feed": { + "type": "string" + }, + "version": { + "type": "string" + }, + "version_regex": { + "type": "string" + } + } + }, + "AmazonMachineImageArtifactSpec": { + "title": "AmazonMachineImage Artifact Spec", + "x-discriminator-value": "AmazonMachineImage", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/AmazonMachineImageArtifactTriggerSpec" + } + } + } + ] + }, + "AmazonMachineImageArtifactTriggerSpec": { + "title": "Amazon Machine Image Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "region": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AMIFilter" + } + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AMIFilter" + } + }, + "version": { + "type": "string" + }, + "version_regex": { + "type": "string" + } + } + }, + "GoogleCloudStorageArtifactSpec": { + "title": "GoogleCloudStorage Artifact Spec", + "x-discriminator-value": "GoogleCloudStorage", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/GoogleCloudStorageArtifactTriggerSpec" + } + } + } + ] + }, + "GoogleCloudStorageArtifactTriggerSpec": { + "title": "Google Cloud Storage Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "project": { + "type": "string" + }, + "bucket": { + "type": "string" + }, + "artifact_path": { + "type": "string" + } + } + }, + "BambooArtifactSpec": { + "title": "Bamboo Artifact Spec", + "x-discriminator-value": "Bamboo", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/BambooArtifactTriggerSpec" + } + } + } + ] + }, + "BambooArtifactTriggerSpec": { + "title": "Bamboo Artifact Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "meta_data_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "plan_key": { + "type": "string" + }, + "build": { + "type": "string" + }, + "artifact_paths": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "HelmChartManifestTriggerSpec": { + "type": "object", + "title": "Helm Chart Manifest Trigger Spec", + "properties": { + "event_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "chart_name": { + "type": "string" + }, + "chart_version": { + "type": "string" + }, + "helm_version": { + "type": "string", + "enum": [ + "V2", + "V3", + "V380" + ] + }, + "store": { + "$ref": "#/components/schemas/BuildStore" + } + } + }, + "BuildStore": { + "title": "Build Store", + "description": "Helm Chart Manifest Build store", + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Http", + "S3", + "Gcs" + ] + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "Http": "#/components/schemas/HttpBuildStore", + "S3": "#/components/schemas/S3BuildStore", + "Gcs": "#/components/schemas/GcsBuildStore" + } + } + }, + "HttpBuildStore": { + "title": "Http Build Store", + "x-discriminator-value": "Http", + "allOf": [ + { + "$ref": "#/components/schemas/BuildStore" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/HttpBuildStoreSpec" + } + } + } + ] + }, + "HttpBuildStoreSpec": { + "type": "object", + "title": "Http Build Store Spec", + "properties": { + "connector_ref": { + "type": "string" + } + } + }, + "S3BuildStore": { + "title": "S3 Build Store", + "x-discriminator-value": "S3", + "allOf": [ + { + "$ref": "#/components/schemas/BuildStore" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/S3BuildStoreSpec" + } + } + } + ] + }, + "S3BuildStoreSpec": { + "title": "S3 Build Store Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "bucketName": { + "type": "string" + }, + "folder_path": { + "type": "string" + }, + "region": { + "type": "string" + } + } + }, + "GcsBuildStore": { + "title": "Gcs Build Store", + "x-discriminator-value": "Gcs", + "allOf": [ + { + "$ref": "#/components/schemas/BuildStore" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/GcsBuildStoreSpec" + } + } + } + ] + }, + "GcsBuildStoreSpec": { + "title": "Gcs Build Store Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "bucketName": { + "type": "string" + }, + "folder_path": { + "type": "string" + } + } + }, + "GithubWebhookSpec": { + "title": "Github Webhook Trigger Spec", + "x-discriminator-value": "Github", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/GithubWebhookTriggerSpec" + } + } + } + ] + }, + "GithubWebhookTriggerSpec": { + "title": "Github Webhook Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Reference of Github connector" + }, + "repo_name": { + "type": "string", + "description": "name of the repository" + }, + "header_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "payload_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "auto_abort_previous_executions": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "PullRequest", + "Push", + "IssueComment", + "Release" + ] + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "PullRequest": "#/components/schemas/PullRequestGithubWebhookSpec", + "Push": "#/components/schemas/PushGithubWebhookSpec", + "IssueComment": "#/components/schemas/IssueCommentGithubWebhookSpec", + "Release": "#/components/schemas/ReleaseGithubWebhookSpec" + } + } + }, + "PullRequestGithubWebhookSpec": { + "title": "Pull Request Github Webhook Trigger Spec", + "x-discriminator-value": "PullRequest", + "allOf": [ + { + "$ref": "#/components/schemas/GithubWebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Close", + "Edit", + "Open", + "Reopen", + "Label", + "Unlabel", + "Synchronize", + "ReadyForReview" + ] + } + } + } + } + ] + }, + "PushGithubWebhookSpec": { + "title": "Push Github Webhook Trigger Spec", + "x-discriminator-value": "Push", + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/GithubWebhookTriggerSpec" + } + ] + }, + "IssueCommentGithubWebhookSpec": { + "title": "Issue Comment Github Webhook Trigger Spec", + "x-discriminator-value": "IssueComment", + "allOf": [ + { + "$ref": "#/components/schemas/GithubWebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create", + "Edit", + "Delete" + ] + } + } + } + } + ] + }, + "ReleaseGithubWebhookSpec": { + "title": "Release Github Webhook Trigger Spec", + "x-discriminator-value": "Release", + "allOf": [ + { + "$ref": "#/components/schemas/GithubWebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create", + "Edit", + "Delete", + "Prerelease", + "Publish", + "Release", + "Unpublish" + ] + } + } + } + } + ] + }, + "GitlabWebhookSpec": { + "title": "Gitlab Webhook Trigger Spec", + "x-discriminator-value": "Gitlab", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/GitlabWebhookTriggerSpec" + } + } + } + ] + }, + "GitlabWebhookTriggerSpec": { + "title": "Gitlab Webhook Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Reference of Gitlab connector" + }, + "repo_name": { + "type": "string", + "description": "name of the repository" + }, + "header_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "payload_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "auto_abort_previous_executions": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "MergeRequest", + "Push", + "MRComment" + ] + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "MergeRequest": "#/components/schemas/MergeRequestGitlabWebhookSpec", + "Push": "#/components/schemas/PushGitlabWebhookSpec", + "MRComment": "#/components/schemas/MRCommentGitlabWebhookSpec" + } + } + }, + "MergeRequestGitlabWebhookSpec": { + "title": "Merge Request Gitlab Webhook Trigger Spec", + "x-discriminator-value": "MergeRequest", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabWebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Close", + "Merge", + "Open", + "Reopen", + "Update", + "Sync" + ] + } + } + } + } + ] + }, + "PushGitlabWebhookSpec": { + "title": "Push Gitlab Webhook Trigger Spec", + "x-discriminator-value": "Push", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabWebhookTriggerSpec" + } + ] + }, + "MRCommentGitlabWebhookSpec": { + "title": "MR Comment Gitlab Webhook Trigger Spec", + "x-discriminator-value": "MRComment", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabWebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create" + ] + } + } + } + } + ] + }, + "BitbucketWebhookSpec": { + "title": "Bitbucket Webhook Trigger Spec", + "x-discriminator-value": "Bitbucket", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/BitbucketWebhookTriggerSpec" + } + } + } + ] + }, + "BitbucketWebhookTriggerSpec": { + "title": "Bitbucket Webhook Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Reference of Bitbucket connector" + }, + "repo_name": { + "type": "string", + "description": "name of the repository" + }, + "header_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "payload_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "auto_abort_previous_executions": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "PullRequest", + "Push", + "PRComment" + ] + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "PullRequest": "#/components/schemas/PullRequestBitbucketWebhookSpec", + "Push": "#/components/schemas/PushBitbucketWebhookSpec", + "PRComment": "#/components/schemas/PRCommentBitbucketWebhookSpec" + } + } + }, + "PullRequestBitbucketWebhookSpec": { + "title": "Pull Request Bitbucket Webhook Trigger Spec", + "x-discriminator-value": "PullRequest", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketWebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create", + "Merge", + "Update", + "Decline" + ] + } + } + } + } + ] + }, + "PushBitbucketWebhookSpec": { + "title": "Push Bitbucket Webhook Trigger Spec", + "x-discriminator-value": "Push", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketWebhookTriggerSpec" + } + ] + }, + "PRCommentBitbucketWebhookSpec": { + "title": "PR Comment Bitbucket Webhook Trigger Spec", + "x-discriminator-value": "PRComment", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketWebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create", + "Edit", + "Delete" + ] + } + } + } + } + ] + }, + "AwsCodeCommitWebhookSpec": { + "title": "AwsCodeCommit Webhook Trigger Spec", + "x-discriminator-value": "AwsCodeCommit", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/AwsCodeCommitWebhookTriggerSpec" + } + } + } + ] + }, + "AwsCodeCommitWebhookTriggerSpec": { + "title": "AwsCodeCommit Webhook Trigger Spec", + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Push" + ] + }, + "spec": { + "$ref": "#/components/schemas/PushAwsCodeCommitWebhookTriggerSpec" + } + } + }, + "PushAwsCodeCommitWebhookTriggerSpec": { + "title": "Push Aws Code Commit Webhook Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Reference of AwsCodeCommit connector" + }, + "repo_name": { + "type": "string", + "description": "name of the repository" + }, + "payload_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + } + } + }, + "AzureRepoWebhookSpec": { + "title": "AzureRepo Webhook Trigger Spec", + "x-discriminator-value": "AzureRepo", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/AzureRepoWebhookTriggerSpec" + } + } + } + ] + }, + "AzureRepoWebhookTriggerSpec": { + "title": "AzureRepo Webhook Trigger Spec", + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Reference of AzureRepo connector" + }, + "repo_name": { + "type": "string", + "description": "name of the repository" + }, + "header_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "payload_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "auto_abort_previous_executions": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "PullRequest", + "Push", + "IssueComment" + ] + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "PullRequest": "#/components/schemas/PullRequestAzureRepoWebhookSpec", + "Push": "#/components/schemas/PushAzureRepoWebhookSpec", + "PRComment": "#/components/schemas/IssueCommentAzureRepoWebhookSpec" + } + } + }, + "PushAzureRepoWebhookSpec": { + "title": "Push AzureRepo Webhook Trigger Spec", + "x-discriminator-value": "Push", + "allOf": [ + { + "$ref": "#/components/schemas/AzureRepoWebhookTriggerSpec" + } + ] + }, + "PullRequestAzureRepoWebhookSpec": { + "title": "Pull Request AzureRepo Webhook Trigger Spec", + "x-discriminator-value": "PullRequest", + "allOf": [ + { + "$ref": "#/components/schemas/AzureRepoWebhookTriggerSpec" + }, + { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create", + "Update", + "Merge" + ] + } + } + } + } + ] + }, + "IssueCommentAzureRepoWebhookSpec": { + "title": "Issue Comment AzureRepo Webhook Trigger Spec", + "x-discriminator-value": "IssueComment", + "allOf": [ + { + "$ref": "#/components/schemas/AzureRepoWebhookTriggerSpec" + }, + { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create", + "Edit", + "Delete" + ] + } + } + } + } + ] + }, + "HarnessWebhookSpec": { + "title": "Harness Webhook Trigger Spec", + "x-discriminator-value": "Harness", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/HarnessWebhookTriggerSpec" + } + } + } + ] + }, + "HarnessWebhookTriggerSpec": { + "title": "Harness Webhook Trigger Spec", + "type": "object", + "properties": { + "repo_name": { + "type": "string", + "description": "name of the repository" + }, + "header_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "payload_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + }, + "auto_abort_previous_executions": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "PullRequest", + "Push", + "IssueComment" + ] + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "PullRequest": "#/components/schemas/PullRequestHarnessWebhookSpec", + "Push": "#/components/schemas/PushHarnessWebhookSpec", + "PRComment": "#/components/schemas/IssueCommentHarnessWebhookSpec" + } + } + }, + "PullRequestHarnessWebhookSpec": { + "title": "Pull Request Harness Webhook Trigger Spec", + "x-discriminator-value": "PullRequest", + "allOf": [ + { + "$ref": "#/components/schemas/HarnessWebhookTriggerSpec" + }, + { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Close", + "Edit", + "Open", + "Reopen", + "Label", + "Unlabel", + "Synchronize" + ] + } + } + } + } + ] + }, + "PushHarnessWebhookSpec": { + "title": "Push Harness Webhook Trigger Spec", + "x-discriminator-value": "Push", + "allOf": [ + { + "$ref": "#/components/schemas/HarnessWebhookTriggerSpec" + } + ] + }, + "IssueCommentHarnessWebhookSpec": { + "title": "Issue Comment Harness Webhook Trigger Spec", + "x-discriminator-value": "IssueComment", + "allOf": [ + { + "$ref": "#/components/schemas/HarnessWebhookTriggerSpec" + }, + { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Create", + "Edit", + "Delete" + ] + } + } + } + } + ] + }, + "CustomWebhookSpec": { + "title": "Custom Webhook Trigger Spec", + "x-discriminator-value": "Custom", + "allOf": [ + { + "$ref": "#/components/schemas/WebhookTriggerSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/CustomWebhookTriggerSpec" + } + } + } + ] + }, + "CustomWebhookTriggerSpec": { + "title": "Custom Webhook Trigger Spec", + "type": "object", + "properties": { + "header_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "payload_conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TriggerConditions" + } + }, + "jexl_condition": { + "type": "string" + } + } + }, + "CronScheduledTriggerSpec": { + "title": "Cron Scheduled Trigger Spec", + "type": "object", + "description": "Spec for Cron Scheduled Triggers", + "properties": { + "type": { + "type": "string" + }, + "expression": { + "type": "string" + } + } + }, + "NGVariable": { + "title": "NG Variable", + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "String", + "Number" + ] + }, + "description": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "metadata": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type", + "mapping": { + "String": "#/components/schemas/StringNGVariable", + "Number": "#/components/schemas/NumberNGVariable" + } + } + }, + "StringNGVariable": { + "title": "String NG Variable", + "x-discriminator-value": "String", + "allOf": [ + { + "$ref": "#/components/schemas/NGVariable" + }, + { + "type": "object", + "properties": { + "value": { + "type": "string" + }, + "default_value": { + "type": "string" + } + } + } + ] + }, + "NumberNGVariable": { + "title": "Number NG Variable", + "x-discriminator-value": "String", + "allOf": [ + { + "$ref": "#/components/schemas/NGVariable" + }, + { + "type": "object", + "properties": { + "value": { + "type": "double" + }, + "default_value": { + "type": "double" + } + } + } + ] + }, + "TriggerResponseBody": { + "title": "Trigger Response Body", + "type": "object", + "description": "Pipeline response body", + "properties": { + "identifier": { + "type": "string", + "description": "Trigger identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + } + } + }, + "TriggerGetResponseBody": { + "title": "Trigger Get Response Body", + "description": "Trigger response body.", + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Trigger identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Trigger name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Organization identifier" + }, + "project": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Project identifier" + }, + "pipeline": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Pipeline identifier" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Trigger description" + }, + "trigger": { + "$ref": "#/components/schemas/TriggerBody" + } + } + }, + "TriggerBody": { + "title": "Trigger Body", + "type": "object", + "description": "Trigger object ", + "properties": { + "enabled": { + "type": "boolean" + }, + "encrypted_webhook_secret_identifier": { + "type": "string" + }, + "input_set_refs": { + "type": "array", + "items": { + "type": "string" + } + }, + "inputs": { + "type": "string", + "description": "input yaml to be used in the pipeline" + }, + "pipeline_branch_name": { + "type": "string" + }, + "source": { + "$ref": "#/components/schemas/TriggerSource" + }, + "stages_to_execute": { + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "identifier", + "name", + "source" + ] + }, + "PipelineCreateRequestBody": { + "title": "Pipeline Create Request Body", + "x-stoplight": { + "id": "jx4tb85rac1m5" + }, + "type": "object", + "description": "Pipeline request body object ", + "x-examples": { + "example-pipeline": { + "pipeline_yaml": "pipeline:\n identifier: example_pipeline\n name: ExamplePipeline\n allowStageExecutions: false\n stages:\n - stage:\n name: Example Build Stage\n identifier: example_build_stage\n description: ''\n type: Approval\n spec:\n execution:\n steps:\n - step:\n name: Approval Step\n identifier: Approval_Step\n type: HarnessApproval\n timeout: 1d\n spec:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n minimumCount: 1\n disallowPipelineExecutor: false\n userGroups: <+input>\n approverInputs: []\n - step:\n type: ShellScript\n name: ShellScript Step\n identifier: ShellScript_Step\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n executionTarget: {}\n timeout: 10m\n tags: {}\n - stage:\n name: Example Deploy Stage\n identifier: example_deploy_stage\n description: ''\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: <+input>\n serviceDefinition:\n spec:\n variables: []\n type: Kubernetes\n infrastructure:\n environmentRef: <+input>\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: <+input>\n namespace: <+input>\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n execution:\n steps:\n - step:\n name: Rollout Deployment\n identifier: rolloutDeployment\n type: K8sRollingDeploy\n timeout: 10m\n spec:\n skipDryRun: false\n rollbackSteps:\n - step:\n name: Rollback Rollout Deployment\n identifier: rollbackRolloutDeployment\n type: K8sRollingRollback\n timeout: 10m\n spec: {}\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n", + "identifier": "example_pipeline", + "name": "ExamplePipeline", + "description": "Pipeline Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository" + } + } + }, + "properties": { + "pipeline_yaml": { + "type": "string", + "description": "Pipeline YAML (to be passed as a String)." + }, + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Pipeline identifier" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Pipeline name" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Pipeline description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Pipeline tags" + }, + "git_details": { + "$ref": "#/components/schemas/GitCreateDetails" + } + }, + "required": [ + "pipeline_yaml", + "identifier", + "name" + ] + }, + "PipelineCreateResponseBody": { + "title": "Pipeline Create Response Body", + "x-stoplight": { + "id": "6k4p5yturlcz5" + }, + "type": "object", + "description": "Pipeline response body", + "x-examples": { + "example-pipeline": { + "identifier": "example_pipeline" + } + }, + "properties": { + "identifier": { + "type": "string", + "description": "Pipeline identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + } + } + }, + "YAMLSchemaErrorWrapper": { + "title": "YAML Schema Error Wrapper", + "x-stoplight": { + "id": "6ricwo5b26l1o" + }, + "type": "object", + "description": "YAML schema error.", + "properties": { + "message": { + "type": "string", + "description": "Error message" + }, + "message_fqn": { + "type": "string", + "description": "Error message with FQN" + }, + "stage_info": { + "$ref": "#/components/schemas/NodeInfo", + "description": "Stage where the error occcurred." + }, + "step_info": { + "$ref": "#/components/schemas/NodeInfo", + "description": "Step where the error occcurred." + }, + "fqn": { + "type": "string", + "description": "Fully Qualified Name as per YAML" + }, + "hint_message": { + "type": "string", + "description": "Hint message" + } + }, + "x-examples": { + "example-schema-error": { + "message": "something is incorrect", + "message_fqn": "something is incorrect at pipeline.name", + "stage_info": { + "identifier": "example_stage", + "type": "stage", + "name": "Example Stage", + "fqn": "pipeline.stages.stage" + }, + "step_info": { + "identifier": "example_step", + "type": "string", + "name": "string", + "fqn": "pipeline.steps.step" + }, + "fqn": "pipeline.name", + "hint_message": "try changing something" + } + } + }, + "NodeInfo": { + "title": "Entity Details", + "x-stoplight": { + "id": "ep3p8793dh95u" + }, + "type": "object", + "description": "Entity details", + "x-examples": { + "example-node-info": { + "identifier": "example_stage", + "type": "stage", + "name": "name", + "fqn": "pipeline.stages.stage1.name" + } + }, + "properties": { + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Entity identifier" + }, + "type": { + "type": "string", + "description": "Type of Entity" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Name of Entity" + }, + "fqn": { + "type": "string", + "description": "Fully Qualified Name" + } + } + }, + "RecentExecutionInfo": { + "title": "Recent Execution Information", + "x-stoplight": { + "id": "da5de92572lcb" + }, + "type": "object", + "description": "Recent Execution information of the Pipeline.", + "properties": { + "executor_info": { + "$ref": "#/components/schemas/ExecutorInfo" + }, + "execution_id": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Execution identifier" + }, + "execution_status": { + "type": "string", + "description": "Last Execution status of the Pipeline.", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting" + ] + }, + "started": { + "type": "integer", + "format": "int64", + "description": "Start timestamp of Execution" + }, + "ended": { + "type": "integer", + "format": "int64", + "description": "End timestamp of Execution" + }, + "run_number": { + "type": "integer", + "format": "int32", + "description": "The Execution number of this Pipeline.", + "example": 0 + }, + "parent_stage_info": { + "$ref": "#/components/schemas/ParentStageInfo" + } + }, + "x-examples": { + "example-recent": { + "executor_info": { + "trigger_type": "NOOP", + "username": "harness_user", + "email": "noreply@harness.io" + }, + "execution_id": "example_execution_identifier", + "execution_status": "Running", + "started": 1234567890, + "ended": 1234567890, + "run_number": 5 + } + } + }, + "ExecutorInfo": { + "title": "Executor Information", + "x-stoplight": { + "id": "8osotc9o43pkq" + }, + "type": "object", + "description": "Information regarding Executor of Pipeline.", + "properties": { + "trigger_type": { + "type": "string", + "description": "Trigger type", + "enum": [ + "NOOP", + "MANUAL", + "WEBHOOK", + "WEBHOOK_CUSTOM", + "SCHEDULER_CRON" + ] + }, + "username": { + "type": "string", + "description": "Username of the Executor." + }, + "email": { + "type": "string", + "description": "Email address of the Executor." + } + }, + "x-examples": { + "example-executor": { + "trigger_type": "NOOP", + "username": "harness_user", + "email": "noreply@harness.io" + } + } + }, + "GitCreateDetails": { + "title": "Create Git Details", + "x-stoplight": { + "id": "ksk60vtpcl9b2" + }, + "type": "object", + "description": "Contains parameters related to creating an Entity for Git Experience.", + "x-examples": { + "example-create-git": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository" + } + }, + "properties": { + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "file_path": { + "type": "string", + "description": "File path of the Entity in the repository." + }, + "commit_message": { + "type": "string", + "description": "Commit message used for the merge commit." + }, + "base_branch": { + "type": "string", + "description": "Name of the default branch (this checks out a new branch titled by branch_name)." + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity." + }, + "store_type": { + "type": "string", + "description": "Specifies whether the Entity is to be stored in Git or not.", + "enum": [ + "INLINE", + "REMOTE" + ] + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + } + } + }, + "GitUpdateDetails": { + "title": "Update Git Details", + "x-stoplight": { + "id": "rhs8tu7186l69" + }, + "type": "object", + "description": "Contains parameters related to updating an Entity for Git Experience.", + "x-examples": { + "example-update-git": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "abcdXYZ", + "base_branch": "old_branch", + "last_commit_id": "abcdXYZ", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository", + "file_path": "/folder/file.json" + } + }, + "properties": { + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "commit_message": { + "type": "string", + "description": "Commit message used for the merge commit." + }, + "last_object_id": { + "type": "string", + "description": "Last object identifier (for Github only)." + }, + "base_branch": { + "type": "string", + "description": "Name of the default branch (this checks out a new branch titled by branch_name)." + }, + "last_commit_id": { + "type": "string", + "description": "Last commit identifier." + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity." + }, + "store_type": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE" + ], + "description": "Specifies whether the Entity is to be stored in Git or not." + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + }, + "file_path": { + "type": "string" + } + } + }, + "PipelineUpdateRequestBody": { + "title": "Pipeline Update Request Body", + "x-stoplight": { + "id": "lrglwjl8trc3q" + }, + "type": "object", + "description": "Pipeline request body object ", + "x-examples": { + "example-pipeline": { + "pipeline_yaml": "pipeline:\n identifier: example_pipeline\n name: ExamplePipeline\n allowStageExecutions: false\n stages:\n - stage:\n name: Example Build Stage\n identifier: example_build_stage\n description: ''\n type: Approval\n spec:\n execution:\n steps:\n - step:\n name: Approval Step\n identifier: Approval_Step\n type: HarnessApproval\n timeout: 1d\n spec:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n minimumCount: 1\n disallowPipelineExecutor: false\n userGroups: <+input>\n approverInputs: []\n - step:\n type: ShellScript\n name: ShellScript Step\n identifier: ShellScript_Step\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n executionTarget: {}\n timeout: 10m\n tags: {}\n - stage:\n name: Example Deploy Stage\n identifier: example_deploy_stage\n description: ''\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: <+input>\n serviceDefinition:\n spec:\n variables: []\n type: Kubernetes\n infrastructure:\n environmentRef: <+input>\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: <+input>\n namespace: <+input>\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n execution:\n steps:\n - step:\n name: Rollout Deployment\n identifier: rolloutDeployment\n type: K8sRollingDeploy\n timeout: 10m\n spec:\n skipDryRun: false\n rollbackSteps:\n - step:\n name: Rollback Rollout Deployment\n identifier: rollbackRolloutDeployment\n type: K8sRollingRollback\n timeout: 10m\n spec: {}\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n", + "identifier": "example_pipeline", + "name": "ExamplePipeline", + "description": "Pipeline Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "abcdXYZ", + "base_branch": "old_branch", + "last_commit_id": "abcdXYZ", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository" + } + } + }, + "properties": { + "pipeline_yaml": { + "type": "string", + "description": "Pipeline YAML (to be passed as a String)." + }, + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Pipeline identifier" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Pipeline name" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Pipeline description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Pipeline tags" + }, + "git_details": { + "$ref": "#/components/schemas/GitUpdateDetails" + } + }, + "required": [ + "pipeline_yaml", + "identifier", + "name" + ] + }, + "CacheResponseMetadataDTO": { + "title": "CacheResponseMetadataDTO", + "x-stoplight": { + "id": "wh7v324i3oqd7" + }, + "type": "object", + "x-examples": { + "example-1": { + "cache_state": "VALID_CACHE", + "ttl_left": 9223372036854776000, + "last_updated_at": 9223372036854776000 + } + }, + "properties": { + "cache_state": { + "type": "string", + "enum": [ + "VALID_CACHE", + "STALE_CACHE", + "UNKNOWN" + ], + "description": "Tells the state of cache." + }, + "ttl_left": { + "type": "integer", + "format": "int64", + "description": "Time left till cache expriry." + }, + "last_updated_at": { + "type": "integer", + "format": "int64", + "description": "Time when the cache was last updated at." + }, + "is_sync_enabled": { + "type": "boolean" + } + } + }, + "InputSetCreateRequestBody": { + "title": "Input Set Create Request Body", + "x-stoplight": { + "id": "8edts07y7e861" + }, + "type": "object", + "description": "Input Set create request body", + "x-examples": { + "example-input-set": { + "input_set_yaml": "inputSet:\n pipeline:\n identifier: Example_Pipeline\n stages:\n - stage:\n identifier: Example_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\\n type: Inline\n spec:\\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample", + "identifier": "example_input_set", + "name": "ExampleInputSet", + "description": "Input Set Description", + "tags": { + "property1": "example-tag-1-value", + "property2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "INLINE", + "repo_name": "example_repository" + } + } + }, + "properties": { + "input_set_yaml": { + "type": "string", + "description": "Input Set YAML (to be passed as a String)." + }, + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Input Set identifier" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Input Set name" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Input Set description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Input Set tags" + }, + "git_details": { + "$ref": "#/components/schemas/GitCreateDetails" + } + }, + "required": [ + "input_set_yaml", + "identifier", + "name" + ] + }, + "InputSetResponseBody": { + "title": "Input Set Response Body", + "x-stoplight": { + "id": "qv6jrxhxt9r93" + }, + "type": "object", + "description": "Response body for Input Set", + "properties": { + "input_set_yaml": { + "type": "string", + "description": "Input Set YAML (returned as a String)." + }, + "identifier": { + "type": "string", + "description": "Input Set identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Input Set name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Organization identifier" + }, + "project": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Project identifier" + }, + "pipeline": { + "type": "string", + "description": "Pipeline identifier" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Input Set description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Input Set tags" + }, + "store_type": { + "type": "string", + "description": "Specifies whether the Entity is to be stored in Git or not (for Git Experience).", + "enum": [ + "INLINE", + "REMOTE" + ] + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + "git_details": { + "$ref": "#/components/schemas/GitDetails" + }, + "created": { + "type": "integer", + "description": "Creation timestamp for Input Set.", + "format": "int64" + }, + "updated": { + "type": "integer", + "description": "Last modification timestamp for Input Set.", + "format": "int64" + }, + "error_details": { + "$ref": "#/components/schemas/InputSetErrorDetails" + } + }, + "x-examples": { + "example-input-set": { + "input_set_yaml": "example_input_set_yaml", + "identifier": "example_input_set", + "name": "Example Input Set", + "org": "example_org", + "project": "example_project", + "description": "InputSet Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "created": 1234567890, + "updated": 9876543210, + "error_details": { + "valid": false, + "message": "Some fields in the Input Set are invalid.", + "outdated": true, + "error_pipeline_yaml": "serviceConfig: \"pipeline.stages.example_deploy_stage.spec.serviceConfig\"\n", + "fqn_errors": [ + { + "fqn": "pipeline.stages.example_deploy_stage.spec.serviceConfig", + "errors": [ + { + "field_name": "serviceConfig", + "message": "Field not a runtime input", + "identifier_of_error_source": "example_input_set" + } + ] + } + ], + "invalid_refs": [ + "example_invalid_input_set" + ] + } + } + } + }, + "InputSetErrorDetails": { + "title": "Input Set Error Details", + "x-stoplight": { + "id": "9c1uhrh6csyh5" + }, + "type": "object", + "description": "Error details regarding Input Sets.", + "properties": { + "valid": { + "type": "boolean", + "description": "Specifies whether Input Set is a valid or not." + }, + "message": { + "type": "string", + "description": "Failure message for Input Set." + }, + "outdated": { + "type": "boolean", + "description": "Input Set is outdated with respect to the Pipeline or not." + }, + "error_pipeline_yaml": { + "type": "string", + "description": "If an Input Set save fails, this field contains the Pipeline YAML as a String, with the field values replaced by a UUID." + }, + "fqn_errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FQNtoError" + } + }, + "invalid_refs": { + "type": "array", + "description": "List of Input Set References that are invalid.", + "items": { + "type": "string" + } + } + }, + "x-examples": { + "example-input-set-err": { + "valid": false, + "message": "Some fields in the Input Set are invalid.", + "outdated": true, + "error_pipeline_yaml": "serviceConfig: \"pipeline.stages.example_deploy_stage.spec.serviceConfig\"\n", + "fqn_errors": [ + { + "fqn": "pipeline.stages.example_deploy_stage.spec.serviceConfig", + "errors": [ + { + "field_name": "serviceConfig", + "message": "Field not a runtime input", + "identifier_of_error_source": "example_input_set" + } + ] + } + ], + "invalid_refs": [ + "example_invalid_input_set" + ] + } + } + }, + "FQNtoError": { + "title": "FQN to Error", + "x-stoplight": { + "id": "hu06g9aq5bo5e" + }, + "type": "object", + "description": "FQN to error response mapper.", + "x-examples": { + "example-fqn-map": { + "fqn": "pipeline.stages.example_deploy_stage.spec.serviceConfig", + "errors": [ + { + "field_name": "serviceConfig", + "message": "Field not a runtime input", + "identifier_of_error_source": "example_input_set" + } + ] + } + }, + "properties": { + "fqn": { + "type": "string", + "description": "Fully Qualified Name" + }, + "errors": { + "type": "array", + "description": "Errors in FQN", + "items": { + "$ref": "#/components/schemas/InputSetError" + } + } + } + }, + "InputSetError": { + "title": "Input Set Error", + "x-stoplight": { + "id": "49aa5ekivpuej" + }, + "type": "object", + "description": "Input Set error", + "properties": { + "field_name": { + "type": "string", + "description": "Field name that has an error." + }, + "message": { + "type": "string", + "description": "Error description" + }, + "identifier_of_error_source": { + "type": "string", + "description": "Identifier of Input Set" + } + }, + "x-examples": { + "example-error": { + "field_name": "serviceConfig", + "message": "Field not a runtime input", + "identifier_of_error_source": "example_input_set" + } + } + }, + "InputSetUpdateRequestBody": { + "title": "Input Set Update Request Body", + "x-stoplight": { + "id": "9nrhngh6a2y0i" + }, + "type": "object", + "description": "Input Set update request body", + "x-examples": { + "example-input-set": { + "input_set_yaml": "inputSet:\n pipeline:\n identifier: Example_Pipeline\n stages:\n - stage:\n identifier: Example_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\\n type: Inline\n spec:\\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample", + "identifier": "example_input_set", + "name": "ExampleInputSet", + "description": "Input Set Description", + "tags": { + "property1": "example-tag-1-value", + "property2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "abcdXYZ", + "base_branch": "old_branch", + "last_commit_id": "abcdXYZ", + "parent_entity_connector_ref": "git_connector", + "parent_entity_repo_name": "example_repository" + } + } + }, + "properties": { + "input_set_yaml": { + "type": "string", + "description": "Input Set YAML (to be passed as a String)." + }, + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Input Set identifier" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128, + "description": "Input Set name" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Input Set description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Input Set tags" + }, + "git_details": { + "$ref": "#/components/schemas/InputSetGitUpdateDetails" + } + }, + "required": [ + "input_set_yaml", + "identifier", + "name" + ] + }, + "InputSetGitUpdateDetails": { + "title": "InputSetGitUpdateDetails", + "x-stoplight": { + "id": "2re2q4nrc5uhn" + }, + "type": "object", + "description": "Contains parameters related to updating an Input Set for Git Experience.", + "x-examples": { + "example-update-git": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "abcdXYZ", + "base_branch": "old_branch", + "last_commit_id": "abcdXYZ", + "parent_entity_connector_ref": "git_connector", + "parent_entity_repo_name": "example_repository" + } + }, + "properties": { + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "commit_message": { + "type": "string", + "description": "Commit message used for the merge commit." + }, + "last_object_id": { + "type": "string", + "description": "Last object identifier (for Github only)." + }, + "base_branch": { + "type": "string", + "description": "Name of the default branch (this checks out a new branch titled by branch_name)." + }, + "last_commit_id": { + "type": "string", + "description": "Last commit identifier." + }, + "parent_entity_connector_ref": { + "type": "string", + "description": "Connector reference for Parent Entity (Pipeline)." + }, + "parent_entity_repo_name": { + "type": "string", + "description": "Repository name for Parent Entity (Pipeline)." + } + } + }, + "InputsResponseBody": { + "title": "Inputs Response Body", + "x-stoplight": { + "id": "p68s65g8wdmfz" + }, + "type": "object", + "properties": { + "inputs": { + "type": "object" + }, + "options": { + "type": "object", + "properties": { + "clone": { + "type": "object", + "properties": { + "ref": { + "type": "object", + "properties": { + "type": { + "type": "object" + }, + "name": { + "type": "object" + } + } + } + } + } + } + } + }, + "x-examples": { + "example-inputs-response": { + "inputs": { + "key1": { + "prompt": false, + "required": false, + "default": "golang", + "type": "string", + "desc": "sample desc" + }, + "key2": { + "prompt": true, + "required": true, + "type": "string", + "desc": "sample desc" + }, + "key3": { + "prompt": false, + "required": false, + "type": "number" + }, + "key4": { + "prompt": false, + "required": true, + "type": "secret", + "desc": "sample desc", + "enums": [ + "enum1", + "enum2" + ] + } + }, + "options": { + "clone": { + "ref": { + "type": { + "prompt": false, + "required": true, + "type": "string", + "enums": [ + "enum1", + "enum2", + "enum3" + ] + }, + "name": { + "prompt": false, + "required": true, + "type": "string" + } + } + } + } + } + }, + "description": "Response Body for Pipeline Inputs" + }, + "ParentStageInfo": { + "title": "ParentStageInfo", + "x-stoplight": { + "id": "tp7dtd5ejnalr" + }, + "type": "object", + "description": "Information about parent pipeline ", + "properties": { + "has_parent_pipeline": { + "type": "boolean", + "description": "boolean to describe whether or not this was executed through pipeline chaining" + }, + "execution_id": { + "type": "string", + "description": "planExecutionId of parent pipeline execution" + }, + "identifier": { + "type": "string", + "description": "pipeline identifier of parent pipeline" + }, + "project_id": { + "type": "string", + "description": "project identifier" + }, + "org_id": { + "type": "string", + "description": "org identifier" + }, + "run_sequence": { + "type": "integer", + "description": "run sequence of parent pipeline execution", + "format": "int32" + }, + "stage_node_id": { + "type": "string", + "description": "node id of parent pipeline stage" + } + } + }, + "PipelineMoveConfigRequestBody": { + "title": "PipelineMoveConfigRequestBody", + "x-stoplight": { + "id": "e2bs9nw5hspxz" + }, + "type": "object", + "description": "Request body for moving a pipeline configuration", + "properties": { + "git_details": { + "$ref": "#/components/schemas/GitMoveDetails" + }, + "pipeline_identifier": { + "type": "string" + }, + "move_config_operation_type": { + "$ref": "#/components/schemas/MoveConfigOperationType" + } + } + }, + "PipelineMoveConfigResponseBody": { + "title": "PipelineMoveConfigResponseBody", + "x-stoplight": { + "id": "c6sgrvhrg1e8c" + }, + "type": "object", + "description": "Response body for configuration to move a pipeline", + "properties": { + "pipeline_identifier": { + "type": "string" + } + } + }, + "MoveConfigOperationType": { + "type": "string", + "enum": [ + "INLINE_TO_REMOTE" + ], + "description": "Operation type to move the configuration", + "x-stoplight": { + "id": "4g4asyvl1x30z" + } + }, + "GitMoveDetails": { + "title": "Move Git Details", + "x-stoplight": { + "id": "h9mvvh1pdo378" + }, + "type": "object", + "description": "Parameters related to moving an entity for Git Experience.", + "x-examples": { + "example-create-git": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "repo_name": "example_repository" + } + }, + "properties": { + "branch_name": { + "type": "string", + "description": "Name of the branch. When moving an inline pipeline or a remote pipeline, this branch is where the remote entity is created or fetched." + }, + "file_path": { + "type": "string", + "description": "File path of the entity in the repository." + }, + "commit_message": { + "type": "string", + "description": "Merge commit message." + }, + "base_branch": { + "type": "string", + "description": "Default branch name. This checks out the branch titled branch_name" + }, + "connector_ref": { + "type": "string", + "description": "Harness connector id used for entity CRUD operations" + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + } + } + }, + "InputSetMoveConfigRequestBody": { + "title": "InputSetMoveConfigRequestBody", + "x-stoplight": { + "id": "n08yyys6gjbuy" + }, + "type": "object", + "description": "Request body for moving an input set configuration.", + "properties": { + "git_details": { + "$ref": "#/components/schemas/GitMoveDetails" + }, + "pipeline_identifier": { + "type": "string" + }, + "input_set_identifier": { + "type": "string" + }, + "move_config_operation_type": { + "$ref": "#/components/schemas/MoveConfigOperationType" + } + } + }, + "InputSetMoveConfigResponseBody": { + "title": "InputSetMoveConfigResponseBody", + "x-stoplight": { + "id": "uelqspa0eldno" + }, + "type": "object", + "properties": { + "input_set_identifier": { + "type": "string" + } + }, + "description": "Response body for moving an input set configuration." + }, + "TemplateValidationResponseBody": { + "title": "TemplateValidationResponseBody", + "x-stoplight": { + "id": "8pk30x8n20zyg" + }, + "type": "object", + "description": "Has Template Resolution Response.", + "properties": { + "valid_yaml": { + "type": "boolean" + }, + "exception_message": { + "type": "string" + } + } + }, + "GitImportInfo": { + "title": "Import Git Information", + "x-stoplight": { + "id": "4r6psagtvh768" + }, + "type": "object", + "properties": { + "connector_ref": { + "type": "string" + }, + "repo_name": { + "type": "string" + }, + "branch_name": { + "type": "string" + }, + "file_path": { + "type": "string" + }, + "is_force_import": { + "type": "boolean" + } + }, + "description": "Parameters related to importing an entity for Git." + }, + "PipelineImportRequestDTO": { + "title": "Pipeline Import Request DTO", + "x-stoplight": { + "id": "aadgrtv4u40df" + }, + "type": "object", + "description": "Information of Pipeline import request DTO", + "properties": { + "pipeline_name": { + "type": "string" + }, + "pipeline_description": { + "type": "string" + } + } + }, + "PolicyMetadata": { + "title": "Policy Metadata", + "x-stoplight": { + "id": "p2269wuyf1jf0" + }, + "type": "object", + "description": "Information about the policy metadata", + "properties": { + "policy_identifier": { + "type": "string" + }, + "policy_name": { + "type": "string" + }, + "severity": { + "type": "string" + }, + "deny_messages": { + "type": "array", + "items": { + "type": "string" + } + }, + "status": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "account_identifier": { + "type": "string" + }, + "org_identifier": { + "type": "string" + }, + "project_identifier": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "updated": { + "type": "integer", + "format": "int64" + }, + "error": { + "type": "string" + } + } + }, + "PolicySetMetadata": { + "title": "Policy Set Metadata", + "x-stoplight": { + "id": "6rt2j8zojvs75" + }, + "type": "object", + "properties": { + "policy_set_identifier": { + "type": "string" + }, + "deny": { + "type": "boolean" + }, + "policy_metadata": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadata" + } + }, + "policy_set": { + "type": "string" + }, + "status": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "account_identifier": { + "type": "string" + }, + "org_identifier": { + "type": "string" + }, + "project_identifier": { + "type": "string" + } + }, + "description": "Information about the policy set metadata" + }, + "GovernanceMetadata1": { + "title": "Governance Metadata", + "x-stoplight": { + "id": "nivk63hm54yt5" + }, + "type": "object", + "description": "Information about the governance metadata", + "properties": { + "identifier": { + "type": "string" + }, + "deny": { + "type": "boolean" + }, + "policy_set_metadata": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicySetMetadata" + } + }, + "message": { + "type": "string" + }, + "time_stamp": { + "type": "integer" + }, + "status": { + "type": "string" + }, + "account_identifier": { + "type": "string" + }, + "org_identifier": { + "type": "string" + }, + "project_identifier": { + "type": "string" + }, + "entity": { + "type": "string" + }, + "type": { + "type": "string" + }, + "action": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + } + } + }, + "PipelineSaveResponseBody": { + "title": "Pipeline Save Response Body", + "x-stoplight": { + "id": "v68h3jaccx83a" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "governance_metadata": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GovernanceMetadata1" + } + } + }, + "description": "Response body for pipeline save." + }, + "PipelineImportRequestBody": { + "title": "PipelineImportRequestBody", + "x-stoplight": { + "id": "foro6hf58ib55" + }, + "type": "object", + "description": "Pipeline import request body", + "properties": { + "git_import_info": { + "$ref": "#/components/schemas/GitImportInfo" + }, + "pipeline_import_request": { + "$ref": "#/components/schemas/PipelineImportRequestDTO" + } + } + }, + "InputSetImportRequestDTO": { + "title": "InputSet Import Request DTO", + "x-stoplight": { + "id": "1cwihgz3ewpmc" + }, + "type": "object", + "description": "Information of InputSet import request DTO", + "properties": { + "input_set_name": { + "type": "string" + }, + "input_set_description": { + "type": "string" + } + } + }, + "InputSetImportRequestBody": { + "title": "InputSet Import Request Body", + "x-stoplight": { + "id": "g9uxpfdotak6l" + }, + "type": "object", + "description": "InputSet import request body", + "properties": { + "git_import_info": { + "$ref": "#/components/schemas/GitImportInfo" + }, + "input_set_import_request": { + "$ref": "#/components/schemas/InputSetImportRequestDTO" + } + } + }, + "InputSetImportResponseBody": { + "title": "InputSet Import Response Body", + "x-stoplight": { + "id": "i10mr579d4243" + }, + "type": "object", + "properties": { + "input_set_identifier": { + "type": "string" + } + }, + "description": "Response body for Input Set import." + }, + "ApprovalInstanceResponseBody": { + "title": "Approval Instance Response Body", + "x-stoplight": { + "id": "hv15s7g83yh9i" + }, + "type": "object", + "description": "Response body for Approval Instance", + "properties": { + "id": { + "type": "string", + "description": "Approval Instance identifier" + }, + "type": { + "type": "string", + "enum": [ + "HarnessApproval", + "JiraApproval", + "CustomApproval", + "ServiceNowApproval" + ], + "description": "Tells the type of Approval" + }, + "status": { + "type": "string", + "enum": [ + "WAITING", + "APPROVED", + "REJECTED", + "FAILED", + "ABORTED", + "EXPIRED" + ], + "description": "Tells the status of Approval" + }, + "deadline": { + "type": "integer", + "format": "int64", + "description": "Deadline timestamp for Approval Instance" + }, + "created": { + "type": "integer", + "format": "int64", + "description": "Creation timestamp for Approval Instance" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last modification timestamp for Approval Instance" + }, + "error_message": { + "type": "string", + "description": "Error message for the Approval Instance" + }, + "details": { + "type": "object", + "description": "Approval Instance response details" + } + }, + "x-examples": { + "example-approval-instance": { + "id": "example_approval_instance", + "type": "HarnessApproval", + "status": "WAITING", + "deadline": 1683953545329, + "details": { + "approvalMessage": "Please review the following information\nand approve the pipeline progression", + "includePipelineExecutionHistory": true, + "approvers": { + "userGroups": [ + "example_usergroup_1", + "example_usergroup_2" + ], + "minimumCount": 3, + "disallowPipelineExecutor": false + }, + "approvalActivities": [], + "approverInputs": [ + { + "name": "example_input_1", + "defaultValue": "example_value_1" + }, + { + "name": "example_input_2", + "defaultValue": "example_value_2" + } + ], + "validatedApprovalUserGroups": [ + { + "accountIdentifier": "example_account_identifier", + "orgIdentifier": "example_org_identifier", + "projectIdentifier": "example_project_identifier", + "identifier": "example_usergroup_1", + "name": "Example Usergroup 1" + }, + { + "accountIdentifier": "example_account_identifier", + "orgIdentifier": "example_org_identifier", + "projectIdentifier": "example_project_identifier", + "identifier": "example_usergroup_2", + "name": "Example Usergroup 2" + } + ], + "autoRejectEnabled": false + }, + "created": 1683867145351, + "updated": 1683867145351, + "error_message": "example error message" + } + } + }, + "GitMetadataUpdateRequestBody": { + "title": "GitMetadataUpdateRequestBody", + "x-stoplight": { + "id": "5dgkx1gdp5ht4" + }, + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Harness connector id used for entity CRUD operations" + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + }, + "file_path": { + "type": "string", + "description": "File path of the entity in the repository." + } + } + }, + "GitMetadataUpdateResponseBody": { + "title": "GitMetadataUpdateResponseBody", + "x-stoplight": { + "id": "cnycqmk3by4zk" + }, + "type": "object", + "properties": { + "entity_identifier": { + "type": "string", + "description": "identifier of updated entity" + } + } + }, + "PipelineExecuteResponseBody": { + "title": "PipelineExecuteResponseBody", + "x-stoplight": { + "id": "zxuefpr014jtf" + }, + "type": "object", + "properties": { + "execution_details": { + "$ref": "#/components/schemas/ExecutionDetails" + } + } + }, + "ExecutionDetails": { + "title": "ExecutionDetails", + "x-stoplight": { + "id": "n5bobdu3qlotg" + }, + "type": "object", + "properties": { + "execution_id": { + "type": "string", + "x-stoplight": { + "id": "z4u8i0ndngb1l" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "jqvvn4fj1nrdd" + } + } + } + }, + "StepsDataResponseBody": { + "title": "StepCategory", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "steps_data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StepData" + } + }, + "step_categories": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StepsDataResponseBody" + } + } + } + }, + "StepData": { + "title": "StepData", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "type": { + "type": "string" + }, + "disabled": { + "type": "boolean" + }, + "feature_restriction_name": { + "type": "string" + } + } + }, + "StepPalleteFilterRequestBody": { + "title": "StepPalleteFilterWrapper", + "type": "object", + "properties": { + "step_pallete_module_infos": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StepPalleteModuleInfo" + } + }, + "version": { + "type": "string" + } + } + }, + "StepPalleteModuleInfo": { + "title": "StepPalleteModuleInfo", + "type": "object", + "properties": { + "module": { + "type": "string" + }, + "category": { + "type": "string" + }, + "should_show_common_steps": { + "type": "boolean" + }, + "common_step_category": { + "type": "string" + } + } + }, + "PipelineInputsSchemaRequestBody": { + "title": "PipelineInputsSchemaRequestBody", + "x-stoplight": { + "id": "lqov4pteet3mu" + }, + "type": "object", + "properties": { + "pipeline_yaml": { + "type": "string", + "x-stoplight": { + "id": "xdltgg8ykrc2t" + } + } + } + }, + "PipelinePatchRequestBody": { + "title": "PipelinePatchRequestBody", + "x-stoplight": { + "id": "3utb53wrarno2" + }, + "type": "object", + "x-examples": { + "Example 1": { + "pipeline_yaml": "pipeline:\n identifier: example_pipeline\n name: ExamplePipeline\n allowStageExecutions: false\n stages:\n - stage:\n name: Example Build Stage\n identifier: example_build_stage\n description: ''\n type: Approval\n spec:\n execution:\n steps:\n - step:\n name: Approval Step\n identifier: Approval_Step\n type: HarnessApproval\n timeout: 1d\n spec:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n minimumCount: 1\n disallowPipelineExecutor: false\n userGroups: <+input>\n approverInputs: []\n - step:\n type: ShellScript\n name: ShellScript Step\n identifier: ShellScript_Step\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n executionTarget: {}\n timeout: 10m\n tags: {}\n - stage:\n name: Example Deploy Stage\n identifier: example_deploy_stage\n description: ''\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: <+input>\n serviceDefinition:\n spec:\n variables: []\n type: Kubernetes\n infrastructure:\n environmentRef: <+input>\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: <+input>\n namespace: <+input>\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n execution:\n steps:\n - step:\n name: Rollout Deployment\n identifier: rolloutDeployment\n type: K8sRollingDeploy\n timeout: 10m\n spec:\n skipDryRun: false\n rollbackSteps:\n - step:\n name: Rollback Rollout Deployment\n identifier: rollbackRolloutDeployment\n type: K8sRollingRollback\n timeout: 10m\n spec: {}\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n", + "name": "ExamplePipeline", + "desc": "Pipeline Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "abcdXYZ", + "base_branch": "old_branch", + "last_commit_id": "abcdXYZ", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository" + } + } + }, + "description": "Pipeline Patch Request body (All the non empty values in this request body will be updated).", + "properties": { + "pipeline_yaml": { + "type": "string", + "description": "Pipeline YAML (to be passed as a String)." + }, + "name": { + "type": "string", + "description": "Pipeline Name." + }, + "desc": { + "type": "string", + "description": "Pipeline Description." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Pipeline Tags." + }, + "git_details": { + "$ref": "#/components/schemas/GitUpdateDetails" + }, + "version": { + "type": "string", + "description": "Version of pipeline yaml, should be one of \"0\" or \"1\"" + } + } + }, + "MergeInputSetRequestBody": { + "title": "MergeInputSetRequestBody", + "x-stoplight": { + "id": "k5st1k03q3tdm" + }, + "type": "object", + "properties": { + "input_set_references": { + "type": "array", + "x-stoplight": { + "id": "wcpksws2ddm8o" + }, + "description": "List of Input Set References to be merged", + "items": { + "x-stoplight": { + "id": "iqji388ebim3m" + }, + "type": "string" + } + }, + "with_merged_pipeline_yaml": { + "type": "boolean", + "x-stoplight": { + "id": "59mojf9htbss4" + }, + "description": "This is a boolean value that indicates if the response must contain the YAML for the merged Pipeline. The default value is False.", + "default": false + }, + "stage_identifiers": { + "type": "array", + "x-stoplight": { + "id": "1p0gidwvhedap" + }, + "description": "List of Stage Ids. Input Sets corresponding to these Ids will be merged.", + "items": { + "x-stoplight": { + "id": "h7h4eg79nt7mm" + }, + "type": "string" + } + }, + "last_yaml_to_merge": { + "type": "string", + "x-stoplight": { + "id": "1ml6olvzhv44g" + }, + "description": "Runtime Input Yaml needed to be merged into the result of the merged Yaml of the inputSetReferences" + }, + "get_only_file_content": { + "type": "boolean", + "x-stoplight": { + "id": "wa02yytjz3utc" + }, + "description": "To be set true if we want to set user flow in thread context", + "default": false + } + } + }, + "MergeInputSetResponseBody": { + "title": "MergeInputSetResponseBody", + "x-stoplight": { + "id": "nyl6mxy742g0r" + }, + "type": "object", + "properties": { + "inputs_yaml_merged": { + "type": "string", + "x-stoplight": { + "id": "zema5grm0k2ay" + }, + "description": "Merged YAML of all the Input Sets" + }, + "merged_pipeline_yaml": { + "type": "string", + "x-stoplight": { + "id": "mhqdz2vtie51i" + }, + "description": "Pipeline YAML after merging with the Input Sets" + }, + "is_error_response": { + "type": "boolean", + "x-stoplight": { + "id": "gl7jmu6lfdr97" + }, + "description": "This field is true if the merging is not possible" + }, + "inputset_error_wrapper": { + "$ref": "#/components/schemas/InputSetErrorWrapperDTO" + } + } + }, + "InputSetErrorWrapperDTO": { + "title": "InputSetErrorWrapperDTO", + "x-stoplight": { + "id": "myvczjgywe83u" + }, + "type": "object", + "properties": { + "error_pipeline_yaml": { + "type": "string", + "x-stoplight": { + "id": "zlmqxv0u9x8st" + }, + "description": "If an Input Set save fails, this field contains the error fields, with the field values replaced with a UUID" + }, + "uuid_to_error_response_map": { + "type": "object", + "x-stoplight": { + "id": "er8nwjuhq2tsr" + }, + "description": "If an Input Set save fails, this field contains the map from FQN to why that FQN threw an error" + }, + "invalid_inputset_references": { + "type": "array", + "x-stoplight": { + "id": "l73msd4aptj36" + }, + "description": "List of Input Sets that are invalid", + "items": { + "x-stoplight": { + "id": "1ci5txn9wsel4" + }, + "type": "string" + } + } + } + }, + "RerunPipelineRequest": { + "title": "RerunPipelineRequest", + "x-stoplight": { + "id": "sybat01ihsx1t" + }, + "type": "object", + "properties": { + "inputs_yaml": { + "type": "string", + "x-stoplight": { + "id": "bt7mcmrltbaed" + }, + "description": "Inputs YAML if the pipeline contains runtime inputs. This will be empty by default if pipeline does not contains runtime inputs" + } + } + }, + "HarnessApprovalActivityRequestBody": { + "title": "HarnessApprovalActivityRequestBody", + "x-stoplight": { + "id": "6275zymqpajs4" + }, + "type": "object", + "description": "Request Body for Harness Approval Activity", + "x-examples": { + "Example 1": { + "comments": "string", + "action": "APPROVE", + "approver_inputs": [ + { + "name": "example_input_1", + "value": "example_value_1" + }, + { + "name": "example_input_2", + "value": "example_value_2" + } + ] + } + }, + "properties": { + "comments": { + "type": "string", + "x-stoplight": { + "id": "t5byrddc8d24t" + } + }, + "action": { + "type": "string", + "x-stoplight": { + "id": "nlvwxygogm3s2" + }, + "enum": [ + "APPROVE", + "REJECT" + ], + "minLength": 0 + }, + "approver_inputs": { + "type": "array", + "x-stoplight": { + "id": "18sx7nj8ihxym" + }, + "items": { + "$ref": "#/components/schemas/ApproverInputDTO" + } + } + } + }, + "ApproverInputDTO": { + "title": "ApproverInputDTO", + "x-stoplight": { + "id": "mc7808h6bnsue" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "k8yfcg1h5zlnn" + }, + "minLength": 1 + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "spxgshivv83fx" + }, + "minLength": 0 + } + }, + "description": "Approver Input DTO" + }, + "StageExecutionResponseBody": { + "title": "StageExecutionResponseBody", + "x-stoplight": { + "id": "iyueximu9l079" + }, + "type": "object", + "description": "This contains info about a Pipeline Stage needed for stage execution.", + "properties": { + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "7egt86y9e44ys" + }, + "description": "Stage Identifier" + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "f6w9hmz8gjl4c" + }, + "description": "Stage Name" + }, + "message": { + "type": "string", + "x-stoplight": { + "id": "5d49qpxupxqwj" + }, + "description": "Warning message for Selective stage execution." + }, + "is_to_be_blocked": { + "type": "boolean", + "x-stoplight": { + "id": "pr0l1xidr6g09" + }, + "description": "Checks if there is a dependency and stage cannot be run individually." + }, + "stages_required": { + "type": "array", + "x-stoplight": { + "id": "u3z0ui7bo3kly" + }, + "description": "Stages that needs to be ran along with this stage as there is a dependency.", + "items": { + "x-stoplight": { + "id": "11db0z1kb8mef" + }, + "type": "string" + } + } + } + }, + "RunStageRequestBody": { + "title": "RunStageRequestBody", + "x-stoplight": { + "id": "h8mxoegrz962h" + }, + "type": "object", + "description": "Request Parameters needed to run specific Stages of a Pipeline.", + "properties": { + "inputs_yaml": { + "type": "string", + "x-stoplight": { + "id": "x5gp39vwvsfqa" + }, + "description": "Inputs yaml of the Pipeline." + }, + "stage_identifiers": { + "type": "array", + "x-stoplight": { + "id": "k07ndws6g4c06" + }, + "description": "List of stages to run.", + "items": { + "x-stoplight": { + "id": "15rh571azguqa" + }, + "type": "string" + } + }, + "expression_values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-stoplight": { + "id": "nu0wje2ij62n4" + }, + "description": "If any selected stage to execute has expressions, then this map contains expressions with its corresponding values." + } + } + }, + "PipelineExecuteRequestBody": { + "title": "PipelineExecuteRequestBody", + "x-stoplight": { + "id": "ewyvhqpxsefmi" + }, + "type": "object", + "properties": { + "inputs_yaml": { + "type": "string", + "x-stoplight": { + "id": "nuc124clughh4" + }, + "description": "Inputs YAML if the Pipeline contains Runtime Inputs" + } + }, + "x-examples": { + "Example 1": { + "inputs_yaml": "pipeline:\n identifier: pipelineIdentifier\n stages:\n - stage:\n identifier: stage1\n type: Custom\n spec:\n execution:\n steps:\n - step:\n identifier: ShellScript_1\n type: ShellScript\n spec:\n source:\n type: Inline\n spec:\n script: echo hello\n timeout: 10s" + } + } + }, + "TemplateResponse": { + "title": "templateResponse", + "x-stoplight": { + "id": "f4ndtnn4ympdy" + }, + "type": "object", + "description": "Default response when a template is returned", + "x-examples": { + "example-1": { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "identifier": "example_template", + "name": "Example_template", + "description": "string", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "version_label": "example_version", + "entity_type": "Stage", + "child_type": "example_child_type", + "scope": "org", + "version": 1234567890, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "updated": 1234567890, + "store_type": "INLINE", + "connector_ref": "example_connector_ref", + "stable_template": true + } + }, + "properties": { + "account": { + "type": "string", + "description": "Account identifier" + }, + "org": { + "type": "string", + "description": "Organization identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Template identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Template Name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Template description", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Template tags", + "maxProperties": 128 + }, + "yaml": { + "type": "string", + "description": "Yaml related to template" + }, + "version_label": { + "type": "string", + "description": "Version label of template" + }, + "entity_type": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager" + ], + "description": "Type of Template\n" + }, + "child_type": { + "type": "string", + "description": "Defines child template type" + }, + "scope": { + "type": "string", + "enum": [ + "org", + "project", + "account", + "unknown" + ], + "description": "Scope of template" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last modification timestamp for Service.\n" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "Version of template" + }, + "git_details": { + "$ref": "#/components/schemas/EntityGitDetails" + }, + "store_type": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE" + ], + "description": "Specifies whether the Entity is to be stored in Git or not (for Git Experience)." + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + "yaml_version": { + "type": "string", + "description": "Specifies the yaml version of the template" + }, + "stable_template": { + "type": "boolean", + "description": "True if this version is stable version of Template" + } + }, + "required": [ + "account", + "identifier", + "name", + "yaml" + ] + }, + "TemplateMetadataSummaryResponse": { + "title": "TemplateMetadataSummaryResponse", + "x-stoplight": { + "id": "nscqj4urwiqnf" + }, + "type": "object", + "x-examples": { + "example-1": { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "identifier": "example_template", + "name": "Example_template", + "description": "string", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "version_label": "example_version", + "entity_type": "Step", + "child_type": "example_child_type", + "scope": "org", + "version": 1234567890, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "updated": 1234567890, + "store_type": "INLINE", + "connector_ref": "example_connector_ref", + "stable_template": true + } + }, + "description": "Single Template Metadata Model", + "properties": { + "account": { + "type": "string", + "description": "Account identifier" + }, + "org": { + "type": "string", + "description": "Organization identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Template identifier", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Template Name", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "Template description", + "maxLength": 1024 + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Template tags", + "maxProperties": 128 + }, + "version_label": { + "type": "string", + "description": "Version label of template" + }, + "entity_type": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager" + ], + "description": "Type of Template\n" + }, + "child_type": { + "type": "string", + "description": "Defines child template type" + }, + "scope": { + "type": "string", + "enum": [ + "org", + "project", + "account", + "unknown" + ], + "description": "Scope of template" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "Version of template" + }, + "git_details": { + "$ref": "#/components/schemas/EntityGitDetails" + }, + "updated": { + "type": "integer", + "format": "int64", + "description": "Last modification timestamp for Service.\n" + }, + "store_type": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE" + ], + "description": "Specifies whether the Entity is to be stored in Git or not (for Git Experience)." + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity (for Git Experience)." + }, + "yaml_version": { + "type": "string", + "description": "Specifies the yaml version of the template" + }, + "stable_template": { + "type": "boolean", + "description": "True if this version is stable version of Template" + } + } + }, + "TemplateWithInputsResponse": { + "title": "templateWithInputsResponse", + "x-stoplight": { + "id": "6fzq3le3gyie2" + }, + "type": "object", + "x-examples": { + "example-1": { + "template": { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "identifier": "example_template", + "name": "Example_template", + "description": "string", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "version_label": "example_version", + "entity_type": "Stage", + "child_type": "example_child_type", + "scope": "org", + "version": 1234567890, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "updated": 1234567890, + "store_type": "INLINE", + "connector_ref": "example_connector_ref", + "stable_template": true + }, + "inputs": "example" + } + }, + "description": "Returns Template input YAML with template response", + "properties": { + "template": { + "$ref": "#/components/schemas/TemplateResponse" + }, + "inputs": { + "type": "string", + "description": "Input Yaml for the Template" + } + } + }, + "TemplateMetaDataList": { + "title": "TemplateMetaDataList", + "x-stoplight": { + "id": "k684ta51ybafb" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplateMetadataSummaryResponse" + }, + "x-examples": { + "example-1": [ + { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "identifier": "example_template", + "name": "Example_template", + "description": "string", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "version_label": "example_version", + "entity_type": "Step", + "child_type": "example_child_type", + "scope": "org", + "version": 1234567890, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "updated": 1234567890, + "store_type": "INLINE", + "connector_ref": "example_connector_ref", + "stable_template": true + } + ] + }, + "description": "Template Meta Data List Model" + }, + "EntityGitDetails": { + "title": "entityGitDetails", + "x-stoplight": { + "id": "tswyoxlluku7h" + }, + "type": "object", + "description": "Git Experience related details of the Entity.", + "x-examples": { + "example-git": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + } + }, + "properties": { + "object_id": { + "type": "string", + "description": "Entity identifier" + }, + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "file_path": { + "type": "string", + "description": "File path of the Entity in the repository." + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + }, + "commit_id": { + "type": "string", + "description": "Latest commit identifier." + }, + "file_url": { + "type": "string", + "description": "File URL of the Entity." + }, + "repo_url": { + "type": "string", + "description": "Repository URL of the Entity." + } + } + }, + "GitFindDetails": { + "title": "GitFindDetails", + "x-stoplight": { + "id": "gqzd5g4smch1i" + }, + "type": "object", + "x-examples": { + "example-1": { + "branch_name": "branch", + "parent_entity_connector_ref": "example_connector_ref", + "parent_entity_repo_name": "example_repo_name", + "parent_entity_account_id": "example_account_id", + "parent_entity_org_id": "example_org_id", + "parent_entity_project_id": "example_project_id", + "comments": "sample_comments" + } + }, + "description": "Contains parameters related to Fetching an Entity for Git Experience.", + "properties": { + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "parent_entity_connector_ref": { + "type": "string", + "description": "Connector ref of parent template if its remote" + }, + "parent_entity_repo_name": { + "type": "string", + "description": "Repo name of parent template if its remote" + }, + "parent_entity_account_id": { + "type": "string", + "description": "Account name of parent template if its remote" + }, + "parent_entity_org_id": { + "type": "string", + "description": "Organization name of parent template if its remote" + }, + "parent_entity_project_id": { + "type": "string", + "description": "Project name of parent entity if its remote" + }, + "comments": { + "type": "string", + "description": "Specify comment with respect to changes " + } + } + }, + "GitCreateDetails1": { + "title": "Create Git Details", + "x-stoplight": { + "id": "m4q2n9rjsrqre" + }, + "type": "object", + "description": "Contains parameters related to creating an Entity for Git Experience.", + "properties": { + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "file_path": { + "type": "string", + "description": "File path of the Entity in the repository." + }, + "commit_message": { + "type": "string", + "description": "Commit message used for the merge commit." + }, + "base_branch": { + "type": "string", + "description": "Name of the default branch (this checks out a new branch titled by branch_name)." + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity." + }, + "store_type": { + "type": "string", + "description": "Specifies whether the Entity is to be stored in Git or not.", + "enum": [ + "INLINE", + "REMOTE" + ] + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + } + }, + "x-examples": { + "example-create-git": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "INLINE", + "repo_name": "example_repository" + } + } + }, + "GitUpdateDetails1": { + "title": "GitUpdateDetails", + "x-stoplight": { + "id": "7k1zp5afx03m5" + }, + "type": "object", + "description": "Contains parameters related to Updating an Entity for Git Experience.", + "x-examples": { + "example-1": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "example_object_id", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "last_commit_id": "example_commit_id", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "store_type": "INLINE" + } + }, + "properties": { + "branch_name": { + "type": "string", + "description": "Name of the branch." + }, + "commit_message": { + "type": "string", + "description": "Commit message used for the merge commit." + }, + "last_object_id": { + "type": "string", + "description": "Last object identifier (for Github)." + }, + "base_branch": { + "type": "string", + "description": "Name of the default branch (this checks out a new branch titled by branch_name)." + }, + "connector_ref": { + "type": "string", + "description": "Identifier of the Harness Connector used for CRUD operations on the Entity." + }, + "last_commit_id": { + "type": "string", + "description": "Last commit identifier (for Git Repositories other than Github)." + }, + "file_path": { + "type": "string", + "description": "File path of the Entity in the repository." + }, + "repo_name": { + "type": "string", + "description": "Name of the repository." + }, + "store_type": { + "type": "string", + "description": "Specifies whether the Entity is to be stored in Git or not.", + "enum": [ + "INLINE", + "REMOTE" + ] + } + } + }, + "TemplateUpdateRequestBody": { + "title": "TemplateUpdateRequestBody", + "x-stoplight": { + "id": "l48rfx4q8xoez" + }, + "type": "object", + "x-examples": { + "example-2": { + "template_yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "git_details": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "example_object_id", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "last_commit_id": "example_commit_id", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "store_type": "INLINE" + }, + "comments": "sample_comment" + } + }, + "description": "Templates Update Request Body", + "properties": { + "template_yaml": { + "type": "string", + "description": "Yaml for updating existing Template" + }, + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "maxLength": 128, + "description": "Template identifier" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "maxLength": 128, + "description": "Template name" + }, + "label": { + "type": "string", + "maxLength": 128, + "description": "Template version label" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Pipeline description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Template tags" + }, + "git_details": { + "$ref": "#/components/schemas/GitUpdateDetails1" + }, + "comments": { + "type": "string", + "description": "Specify comment with respect to changes " + } + } + }, + "TemplateCreateRequestBody": { + "title": "TemplateCreateRequestBody", + "x-stoplight": { + "id": "c0h9d4wu3gp1t" + }, + "type": "object", + "x-examples": { + "example-2": { + "template_yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "git_details": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "INLINE", + "repo_name": "example_repository" + }, + "is_stable": true, + "comments": "sample_comment" + } + }, + "description": "Templates Create Request Body", + "properties": { + "template_yaml": { + "type": "string", + "description": "Yaml for creating new Template" + }, + "identifier": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "maxLength": 128, + "description": "Template identifier" + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$", + "maxLength": 128, + "description": "Template name" + }, + "label": { + "type": "string", + "maxLength": 128, + "description": "Template version label" + }, + "description": { + "type": "string", + "maxLength": 1024, + "description": "Pipeline description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "maxProperties": 128, + "description": "Template tags" + }, + "git_details": { + "$ref": "#/components/schemas/GitCreateDetails1" + }, + "is_stable": { + "type": "boolean", + "description": "True if given version for template to be set as stable" + }, + "comments": { + "type": "string", + "description": "Specify comment with respect to changes " + } + } + }, + "TemplateUpdateStableResponse": { + "title": "TemplateUpdateStableResponse", + "x-stoplight": { + "id": "u5l3jvjb83olc" + }, + "type": "object", + "properties": { + "stable_version": { + "type": "string", + "description": "Version which is set as stable for the given Template\n" + } + }, + "description": "Template stable version update Response" + }, + "GitImportDetails": { + "title": "Git Import Details", + "x-stoplight": { + "id": "sehprm5mfy45y" + }, + "type": "object", + "description": "Contains parameters related to importing an Entity for Git Experience.", + "properties": { + "connector_ref": { + "type": "string" + }, + "repo_name": { + "type": "string" + }, + "branch_name": { + "type": "string" + }, + "file_path": { + "type": "string" + }, + "is_force_import": { + "type": "boolean" + } + } + }, + "TemplateImportRequestDTO": { + "title": "Template Import Request DTO", + "x-stoplight": { + "id": "63n2xm1nikjdq" + }, + "type": "object", + "description": "Information of Tempalte import request DTO", + "properties": { + "template_name": { + "type": "string" + }, + "template_version": { + "type": "string" + }, + "template_description": { + "type": "string" + } + } + }, + "TemplateImportRequestBody": { + "title": "TemplateImportRequestBody", + "x-stoplight": { + "id": "lix6vu1rny248" + }, + "type": "object", + "description": "Template Import Request Body", + "properties": { + "git_import_details": { + "$ref": "#/components/schemas/GitImportDetails" + }, + "template_import_request": { + "$ref": "#/components/schemas/TemplateImportRequestDTO" + } + } + }, + "TemplateImportResponseBody": { + "title": "TemplateImportResponseBody", + "x-stoplight": { + "id": "xw3yrxry48fu7" + }, + "type": "object", + "description": "Contains the Template details for the given Template ID and version", + "properties": { + "template_identifier": { + "type": "string" + }, + "template_version": { + "type": "string" + } + } + }, + "TemplateSchemaResponse": { + "title": "TemplateSchemaResponse", + "x-stoplight": { + "id": "n1td5vx0eu2vk" + }, + "type": "object", + "properties": { + "data": { + "type": "object", + "x-stoplight": { + "id": "99sossqbii1t8" + } + } + } + }, + "TemplateUpdateGitMetadataRequest": { + "title": "TemplateUpdateGitMetadataRequest", + "x-stoplight": { + "id": "wdpzwf5cvc42j" + }, + "type": "object", + "description": "Lists down request params for template update git details request", + "properties": { + "version": { + "type": "string", + "x-stoplight": { + "id": "79rrzmtkuum7w" + } + }, + "git_details": { + "$ref": "#/components/schemas/GitDetailsMetadata" + } + } + }, + "GitDetailsMetadata": { + "title": "GitDetailsMetadata", + "x-stoplight": { + "id": "xmwhsx3n9xspz" + }, + "type": "object", + "properties": { + "file_path": { + "type": "string", + "x-stoplight": { + "id": "uuwrwacmycuiq" + } + }, + "repo_name": { + "type": "string", + "x-stoplight": { + "id": "y8zpewva1udkw" + } + }, + "connector_ref": { + "type": "string", + "x-stoplight": { + "id": "8bcrgefkubqwn" + } + } + }, + "description": "Git Details" + }, + "BackstageEnvVariable": { + "title": "BackstageEnvVariable", + "x-stoplight": { + "id": "nxqrkraenk753" + }, + "type": "object", + "description": "Backstage Env Variable", + "discriminator": { + "propertyName": "type", + "mapping": { + "Config": "#/components/schemas/BackstageEnvConfigVariable", + "Secret": "#/components/schemas/BackstageEnvSecretVariable" + } + }, + "x-examples": {}, + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "qcqog9dhfhhtn" + } + }, + "env_name": { + "type": "string", + "x-stoplight": { + "id": "0br1k8e9y4vds" + } + }, + "created": { + "type": "integer", + "x-stoplight": { + "id": "jnkz49ajqu2ep" + }, + "format": "int64" + }, + "updated": { + "type": "integer", + "x-stoplight": { + "id": "f7vn66lecbehz" + }, + "format": "int64" + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "bkpapdothjik6" + }, + "description": "This specifies the type of backstage env variable", + "enum": [ + "Config", + "Secret" + ] + } + }, + "required": [ + "env_name", + "type" + ] + }, + "BackstageEnvSecretVariable": { + "title": "BackstageEnvSecretVariable", + "x-stoplight": { + "id": "3h8ht8pko3bgz" + }, + "x-discriminator-value": "Secret", + "allOf": [ + { + "$ref": "#/components/schemas/BackstageEnvVariable", + "x-stoplight": { + "id": "qv79339cmwg5d" + } + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Secret" + ] + }, + "harness_secret_identifier": { + "type": "string", + "x-stoplight": { + "id": "ah15yig0jo9yb" + } + }, + "is_deleted": { + "type": "boolean", + "x-stoplight": { + "id": "uvmj7ylwufxzc" + }, + "default": false + } + }, + "required": [ + "type", + "harness_secret_identifier" + ] + } + ], + "x-examples": {} + }, + "BackstageEnvConfigVariable": { + "title": "BackstageEnvConfigVariable", + "x-stoplight": { + "id": "cfxzxi44zeq3o" + }, + "x-discriminator-value": "Config", + "allOf": [ + { + "$ref": "#/components/schemas/BackstageEnvVariable", + "x-stoplight": { + "id": "x9612fuvup1yq" + } + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Config" + ] + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "ae2vnipczbvso" + } + } + }, + "required": [ + "type", + "value" + ] + } + ], + "x-examples": {} + }, + "BackstageEnvVariableRequest": { + "x-stoplight": { + "id": "e7t9o0ci4dra4" + }, + "type": "object", + "properties": { + "env_variable": { + "$ref": "#/components/schemas/BackstageEnvVariable", + "x-stoplight": { + "id": "t8p54gz9pdy56" + } + } + } + }, + "BackstageEnvVariableBatchRequest": { + "type": "object", + "x-stoplight": { + "id": "psykwh06yxbkz" + }, + "properties": { + "env_variables": { + "x-stoplight": { + "id": "mw78dt912nzqn" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/BackstageEnvVariable", + "x-stoplight": { + "id": "i0vefhckdjymq" + } + } + } + }, + "required": [ + "env_variables" + ] + }, + "BackstageEnvVariableResponse": { + "x-stoplight": { + "id": "np7bj0rjx6gb4" + }, + "type": "object", + "properties": { + "env_variable": { + "$ref": "#/components/schemas/BackstageEnvVariable", + "x-stoplight": { + "id": "ru3parenuqcu1" + } + } + }, + "required": [ + "env_variable" + ] + }, + "BackstagePermissions": { + "title": "BackstagePermissions", + "x-stoplight": { + "id": "72bfwtpdjs4gp" + }, + "type": "object", + "properties": { + "identifer": { + "type": "string" + }, + "permissions": { + "type": "array", + "items": { + "type": "string" + } + }, + "user_group": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "updated": { + "type": "integer", + "format": "int64" + } + } + }, + "BackstagePermissionsRequest": { + "title": "BackstagePermissionsRequest", + "x-stoplight": { + "id": "bz71o9x8asb9x" + }, + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/BackstagePermissions" + } + } + }, + "BackstagePermissionsResponse": { + "title": "BackstagePermissionsResponse", + "x-stoplight": { + "id": "9jbg25376fnzb" + }, + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/BackstagePermissions" + } + } + }, + "StatusInfo": { + "title": "StatusInfo", + "x-stoplight": { + "id": "ruez3ex7rum35" + }, + "type": "object", + "properties": { + "current_status": { + "type": "string", + "enum": [ + "COMPLETED", + "RUNNING", + "PENDING", + "FAILED", + "NOT_FOUND" + ], + "x-stoplight": { + "id": "8knrzjhaghevh" + } + }, + "reason": { + "type": "string" + }, + "updated_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "0pmjyab6nkwlz" + } + } + } + }, + "StatusInfoResponse": { + "title": "StatusInfoResponse", + "x-stoplight": { + "id": "ve56lidgcjifs" + }, + "type": "object", + "properties": { + "status": { + "$ref": "#/components/schemas/StatusInfo" + } + } + }, + "StatusInfoRequest": { + "title": "StatusInfoRequest", + "x-stoplight": { + "id": "f45q501vlt9iy" + }, + "type": "object", + "properties": { + "status": { + "$ref": "#/components/schemas/StatusInfo" + } + } + }, + "StatusInfoV2": { + "title": "StatusInfoV2", + "x-stoplight": { + "id": "ygx956s72iibx" + }, + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/StatusInfo" + } + }, + "NamespaceInfo": { + "title": "NamespaceInfo", + "x-stoplight": { + "id": "sxxrqv7oorngr" + }, + "type": "object", + "description": "Namespace response body content", + "properties": { + "account_identifier": { + "type": "string", + "x-stoplight": { + "id": "hg3qtosqgdfhd" + } + }, + "namespace": { + "type": "string" + } + } + }, + "NamespaceResponse": { + "$ref": "#/components/schemas/NamespaceInfo", + "x-stoplight": { + "id": "4qd30h9fn9u7r" + }, + "description": "Namespace response body" + }, + "CatalogConnectorInfo": { + "title": "CatalogConnectorInfo", + "x-stoplight": { + "id": "wpk4fmntpbtlj" + }, + "type": "object", + "description": "Details of IDP catalog connector", + "properties": { + "connector": { + "$ref": "#/components/schemas/ConnectorDetails", + "x-stoplight": { + "id": "gep9rdz9yhwyy" + } + }, + "repo": { + "type": "string" + }, + "branch": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "required": [ + "connector", + "repo", + "branch", + "path" + ] + }, + "HarnessEntitiesCountResponse": { + "title": "HarnessEntitiesCountResponse", + "x-stoplight": { + "id": "2wzkhrjbcg4d5" + }, + "type": "object", + "x-examples": {}, + "description": "Response for harness entities count that can be imported to IDP", + "properties": { + "org_count": { + "type": "integer", + "x-stoplight": { + "id": "gbvcwogico9cd" + } + }, + "project_count": { + "type": "integer", + "x-stoplight": { + "id": "h7se69ebe6tn5" + } + }, + "service_count": { + "type": "integer" + } + }, + "required": [ + "org_count", + "project_count", + "service_count" + ] + }, + "HarnessEntitiesResponse": { + "title": "HarnessEntitiesResponse", + "x-stoplight": { + "id": "fz2subwqrbh5p" + }, + "type": "object", + "x-examples": {}, + "description": "Response for harness entities mapping with backstage entities", + "properties": { + "harness_backstage_entities": { + "x-stoplight": { + "id": "29gtwmx9rtbtj" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessBackstageEntities", + "x-stoplight": { + "id": "xljavofzn2x2t" + } + } + } + }, + "required": [ + "harness_backstage_entities" + ] + }, + "ImportEntitiesResponse": { + "title": "ImportEntitiesResponse", + "x-stoplight": { + "id": "kvv6lxzsebamz" + }, + "type": "object", + "description": "Response for import / save harness entities to IDP", + "properties": { + "status": { + "type": "string" + } + }, + "required": [ + "status" + ] + }, + "EntitiesForImport": { + "title": "EntitiesForImport", + "x-stoplight": { + "id": "ruicl5da2sloc" + }, + "type": "object", + "description": "Details of Harness Entities to import", + "x-examples": {}, + "properties": { + "identifier": { + "type": "string", + "minLength": 1 + }, + "entity_type": { + "type": "string" + } + }, + "required": [ + "identifier", + "entity_type" + ] + }, + "HarnessBackstageEntities": { + "title": "HarnessBackstageEntities", + "x-stoplight": { + "id": "x43sybn2ad4n7" + }, + "type": "object", + "description": "Harness entities mapping with backstage entities", + "properties": { + "name": { + "type": "string" + }, + "system": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "type": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "entity_type": { + "type": "string" + } + }, + "required": [ + "name", + "system", + "owner", + "type", + "identifier", + "entity_type" + ] + }, + "ConnectorDetails": { + "title": "ConnectorDetails", + "x-stoplight": { + "id": "ydmrv3krwpyvr" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Github", + "Gitlab", + "Bitbucket", + "AzureRepo" + ] + } + }, + "required": [ + "identifier", + "type" + ], + "description": "Connector details containing identifier and type" + }, + "LayoutResponse": { + "title": "LayoutResponse", + "x-stoplight": { + "id": "2oxnq9iinuf3b" + }, + "type": "object" + }, + "PluginInfo": { + "title": "PluginInfo", + "x-stoplight": { + "id": "rjdikftbwq4ku" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "08dcllgfdjnnf" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "cs8sf1p0u0h6m" + } + }, + "created_by": { + "type": "string", + "x-stoplight": { + "id": "muu0fnhfcfnq0" + } + }, + "icon_url": { + "type": "string", + "x-stoplight": { + "id": "qi63qdmfx4ozx" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "f3f9a3v15p8qx" + } + }, + "category": { + "type": "string", + "x-stoplight": { + "id": "2hcvvko282w2b" + } + }, + "source": { + "type": "string", + "x-stoplight": { + "id": "86jybcrx3x9hy" + } + }, + "image_url": { + "type": "string" + }, + "images": { + "type": "array", + "x-stoplight": { + "id": "tn689mqkfth94" + }, + "items": { + "x-stoplight": { + "id": "ybfwwjy9ere6h" + }, + "type": "string" + } + }, + "documentation": { + "type": "string", + "x-stoplight": { + "id": "g8pxx4u72mjyo" + } + }, + "core": { + "type": "boolean", + "x-stoplight": { + "id": "h6xd4qngysrvl" + } + }, + "enabled": { + "type": "boolean", + "x-stoplight": { + "id": "dye1mgrxvvkhj" + } + }, + "plugin_type": { + "type": "string", + "x-stoplight": { + "id": "3afv43ng1qibj" + }, + "enum": [ + "DEFAULT", + "CUSTOM" + ] + } + }, + "required": [ + "id" + ] + }, + "PluginInfoResponse": { + "title": "PluginInfoResponse", + "x-stoplight": { + "id": "bzim96q2jdydq" + }, + "type": "object", + "properties": { + "plugin": { + "$ref": "#/components/schemas/PluginInfo", + "x-stoplight": { + "id": "b8e9wv7c3q2hb" + } + } + }, + "required": [ + "plugin" + ] + }, + "PluginDetailedInfoResponse": { + "title": "PluginDetailedInfoResponse", + "x-stoplight": { + "id": "yga377lrqvzo3" + }, + "type": "object", + "properties": { + "plugin": { + "$ref": "#/components/schemas/PluginDetailedInfo", + "x-stoplight": { + "id": "bge1kvlvygjky" + } + } + }, + "required": [ + "plugin" + ] + }, + "PluginDetailedInfo": { + "title": "PluginDetailedInfo", + "x-stoplight": { + "id": "4mgb2xlg0qmuz" + }, + "allOf": [ + { + "$ref": "#/components/schemas/PluginDetails" + }, + { + "type": "object", + "properties": { + "env_variables": { + "x-stoplight": { + "id": "dbvndzvgirvhx" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/BackstageEnvSecretVariable" + } + }, + "saved": { + "type": "boolean", + "x-stoplight": { + "id": "zc7gzaskute7h" + } + }, + "proxy": { + "x-stoplight": { + "id": "iihf5kiywsyft" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProxyHostDetail" + } + } + }, + "required": [ + "env_variables", + "saved" + ] + } + ] + }, + "LayoutRequest": { + "title": "LayoutRequest", + "x-stoplight": { + "id": "n3rez2nr7kmq8" + }, + "type": "object", + "description": "LayoutRequest", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "62gmaga7buqi8" + } + }, + "id": { + "type": "string", + "x-stoplight": { + "id": "z450ysix2zvwr" + } + }, + "yaml": { + "type": "string", + "x-stoplight": { + "id": "ukdiglik4ggu9" + } + }, + "display_name": { + "type": "string", + "x-stoplight": { + "id": "s2pk8alyj2gu9" + } + }, + "default_yaml": { + "type": "string", + "x-stoplight": { + "id": "phhefjzpsdh1n" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "i20q57lnsmop8" + } + } + } + }, + "AppConfig": { + "title": "AppConfig", + "x-stoplight": { + "id": "ts8hhn08e9vs2" + }, + "type": "object", + "x-examples": {}, + "properties": { + "config_id": { + "type": "string", + "x-stoplight": { + "id": "kba02ulkoob1v" + } + }, + "configs": { + "type": "string", + "x-stoplight": { + "id": "xu807wjtsvqdt" + } + }, + "enabled": { + "type": "boolean", + "x-stoplight": { + "id": "ogzhdfovajswl" + } + }, + "enabled_disabled_at": { + "type": "integer", + "x-stoplight": { + "id": "8j2nftcvualpg" + }, + "format": "int64" + }, + "created": { + "type": "integer", + "x-stoplight": { + "id": "i50aktg8l2epd" + }, + "format": "int64" + }, + "updated": { + "type": "integer", + "x-stoplight": { + "id": "gal7ubavtkx3x" + }, + "format": "int64" + }, + "env_variables": { + "type": "array", + "x-stoplight": { + "id": "mc8b52k1x79v6" + }, + "items": { + "$ref": "#/components/schemas/BackstageEnvSecretVariable" + } + }, + "config_name": { + "type": "string", + "x-stoplight": { + "id": "78nnii26gge61" + } + }, + "proxy": { + "type": "array", + "x-stoplight": { + "id": "1lk21ekhaopkw" + }, + "items": { + "$ref": "#/components/schemas/ProxyHostDetail" + } + } + }, + "required": [ + "config_id", + "configs", + "env_variables", + "config_name" + ] + }, + "AppConfigRequest": { + "title": "AppConfigRequest", + "x-stoplight": { + "id": "8u5xpqsuu97n7" + }, + "type": "object", + "properties": { + "app_config": { + "$ref": "#/components/schemas/AppConfig", + "x-stoplight": { + "id": "qrcvsst79yc3s" + } + } + }, + "required": [ + "app_config" + ] + }, + "AppConfigResponse": { + "title": "AppConfigResponse", + "x-stoplight": { + "id": "mc5yfk7d3r4ba" + }, + "type": "object", + "properties": { + "app_config": { + "$ref": "#/components/schemas/AppConfig", + "x-stoplight": { + "id": "puouuvu1gjvy9" + } + } + }, + "required": [ + "app_config" + ] + }, + "ConnectorInfoRequest": { + "title": "ConnectorInfoRequest", + "x-stoplight": { + "id": "5y4kxxar10u79" + }, + "type": "object", + "properties": { + "connector_details": { + "$ref": "#/components/schemas/ConnectorDetails", + "x-stoplight": { + "id": "cwhdaxsijquis" + } + } + } + }, + "ConnectorInfoResponse": { + "title": "ConnectorInfoResponse", + "x-stoplight": { + "id": "crky8aoeysb9z" + }, + "type": "object", + "properties": { + "connector_details": { + "$ref": "#/components/schemas/ConnectorDetails", + "x-stoplight": { + "id": "j9y6qs9p3gym7" + } + } + }, + "required": [ + "connector_details" + ] + }, + "Exports": { + "title": "Exports", + "x-stoplight": { + "id": "krtrvpv2bw4rh" + }, + "type": "object", + "properties": { + "pages": { + "type": "integer", + "x-stoplight": { + "id": "z2sng2p0ckvs4" + }, + "default": 0 + }, + "tab_contents": { + "type": "integer", + "x-stoplight": { + "id": "tv8hce8pm873b" + }, + "default": 0 + }, + "cards": { + "type": "integer", + "x-stoplight": { + "id": "gvkk56i32twnh" + }, + "default": 0 + }, + "default_entity_types": { + "type": "array", + "x-stoplight": { + "id": "jfdg348v4fwk7" + }, + "items": { + "x-stoplight": { + "id": "zvqn4vs5z9xa8" + }, + "type": "string" + } + }, + "export_details": { + "x-stoplight": { + "id": "entxahp0fgx74" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/ExportDetails", + "x-stoplight": { + "id": "0sb28udqqiknj" + } + } + } + }, + "required": [ + "pages", + "tab_contents", + "cards", + "default_entity_types", + "export_details" + ] + }, + "MergedPluginConfigs": { + "title": "MergedPluginConfigs", + "x-stoplight": { + "id": "udd3rjj6vabp6" + }, + "type": "object", + "description": "Merged Config for all Enabled Plugins.", + "properties": { + "config": { + "type": "string", + "x-stoplight": { + "id": "1xlvst25jqan6" + } + }, + "env_variables": { + "type": "array", + "x-stoplight": { + "id": "626hhepixlmvj" + }, + "items": { + "$ref": "#/components/schemas/BackstageEnvSecretVariable" + } + }, + "proxy": { + "type": "array", + "x-stoplight": { + "id": "9nyhtn38boka8" + }, + "items": { + "$ref": "#/components/schemas/ProxyHostDetail" + } + } + }, + "required": [ + "config", + "env_variables", + "proxy" + ] + }, + "MergedPluginConfigResponse": { + "title": "MergedPluginConfigResponse", + "x-stoplight": { + "id": "ze6z3c1qi8cdy" + }, + "type": "object", + "description": "Merged Config for all Enabled Plugins Response.", + "properties": { + "merged_config": { + "$ref": "#/components/schemas/MergedPluginConfigs", + "x-stoplight": { + "id": "syzo1w7sp9ent" + } + } + }, + "required": [ + "merged_config" + ] + }, + "RequestPlugin": { + "x-stoplight": { + "id": "r5zm7ltki4p8f" + }, + "type": "object", + "title": "RequestPluginRequest", + "description": "Details of the plugin being requested", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "56azi08e1q53b" + } + }, + "creator": { + "type": "string", + "x-stoplight": { + "id": "595gabner523j" + } + }, + "package_link": { + "type": "string", + "x-stoplight": { + "id": "92ietipnvu0ta" + } + }, + "doc_link": { + "type": "string", + "x-stoplight": { + "id": "pgttm4b0sqx6l" + } + } + }, + "required": [ + "name", + "creator", + "package_link", + "doc_link" + ] + }, + "PluginRequestResponseList": { + "title": "PluginRequestResponseList", + "x-stoplight": { + "id": "5yzb7rxns0aw0" + }, + "type": "object", + "properties": { + "plugin_requests": { + "type": "array", + "x-stoplight": { + "id": "hi8z7q7omjfak" + }, + "items": { + "$ref": "#/components/schemas/RequestPlugin", + "x-stoplight": { + "id": "la7xiemqky7f9" + } + } + } + }, + "required": [ + "plugin_requests" + ], + "description": "Returns all plugin requests for an account" + }, + "ExportDetails": { + "title": "ExportDetails", + "x-stoplight": { + "id": "lh3kww6at9n87" + }, + "type": "object", + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "69io5n1al727m" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "rk3j3ohhxfadq" + } + }, + "add_by_default": { + "type": "boolean", + "x-stoplight": { + "id": "yv6e7c9c2eyv6" + } + }, + "default_route": { + "type": "string", + "x-stoplight": { + "id": "lg3iy2r2zvqhb" + } + }, + "layout_schema_specs": { + "type": "object", + "x-stoplight": { + "id": "kqd59lko12kls" + } + } + }, + "required": [ + "type", + "name" + ] + }, + "PluginDetails": { + "title": "PluginDetails", + "x-stoplight": { + "id": "560styu7fppwf" + }, + "type": "object", + "properties": { + "plugin_details": { + "$ref": "#/components/schemas/PluginInfo", + "x-stoplight": { + "id": "ar7hkpjerml0u" + } + }, + "config": { + "type": "string", + "x-stoplight": { + "id": "4yr6y6r9zxzdi" + } + }, + "exports": { + "$ref": "#/components/schemas/Exports", + "x-stoplight": { + "id": "43cv9jhplzytw" + } + } + }, + "required": [ + "plugin_details" + ] + }, + "LayoutIngestRequest": { + "title": "LayoutIngestRequest", + "x-stoplight": { + "id": "2251c3uansb5q" + }, + "type": "object", + "properties": { + "operation_type": { + "type": "string", + "x-stoplight": { + "id": "gcfmlu2g6tt5c" + } + }, + "exports": { + "$ref": "#/components/schemas/Exports" + } + }, + "required": [ + "operation_type", + "exports" + ] + }, + "GenerateYamlRequest": { + "title": "GenerateYamlRequest", + "x-stoplight": { + "id": "cn0x8iu87ivzy" + }, + "type": "object", + "properties": { + "entities": { + "type": "array", + "x-stoplight": { + "id": "8o9n97v686wpz" + }, + "items": { + "$ref": "#/components/schemas/EntitiesForImport", + "x-stoplight": { + "id": "rx3oubfzkg2hs" + } + } + } + }, + "required": [ + "entities" + ], + "description": "Request to generate yaml for any one entity if provided or generate sample entity yaml definition" + }, + "GenerateYamlResponse": { + "title": "GenerateYamlResponse", + "x-stoplight": { + "id": "fqxr0lo87mlj0" + }, + "type": "object", + "description": "Response contianing entity yaml definition and description about the entity", + "properties": { + "generated_yaml": { + "type": "object", + "x-stoplight": { + "id": "hjwmleg6046p3" + }, + "required": [ + "yaml_def", + "description" + ], + "properties": { + "yaml_def": { + "type": "string", + "x-stoplight": { + "id": "qotajwzqf534c" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "3p4vjjkwbtd5y" + } + } + } + } + }, + "required": [ + "generated_yaml" + ], + "x-examples": {} + }, + "AllEntitiesImport": { + "title": "AllEntitiesImport", + "x-stoplight": { + "id": "3r72pc3y3erap" + }, + "allOf": [ + { + "$ref": "#/components/schemas/ImportEntitiesBase" + }, + { + "type": "object", + "x-stoplight": { + "id": "0ianrzf5ba6oh" + } + } + ], + "x-discriminator-value": "All", + "description": "Import all harness entities" + }, + "SampleEntitiesImport": { + "title": "SampleEntitiesImport", + "x-stoplight": { + "id": "xt3i3mxzwvw72" + }, + "description": "Import sample entities", + "x-discriminator-value": "Sample", + "allOf": [ + { + "$ref": "#/components/schemas/ImportEntitiesBase", + "x-stoplight": { + "id": "o9o37jc32kwzg" + } + }, + { + "type": "object", + "x-stoplight": { + "id": "wcobxw9zw5zd7" + } + } + ] + }, + "IndividualEntitiesImport": { + "title": "IndividualEntitiesImport", + "x-stoplight": { + "id": "7xwaog4uuvc4o" + }, + "x-discriminator-value": "Individual", + "description": "Import selected harness entities", + "allOf": [ + { + "$ref": "#/components/schemas/ImportEntitiesBase" + }, + { + "type": "object", + "x-stoplight": { + "id": "v6vwz8qkzfhb0" + }, + "properties": { + "entities": { + "x-stoplight": { + "id": "5x3bh3crbn9pk" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitiesForImport", + "x-stoplight": { + "id": "86duhaoxpz5b8" + } + } + } + }, + "required": [ + "entities" + ] + } + ] + }, + "ImportEntitiesBase": { + "title": "ImportEntitiesBase", + "x-stoplight": { + "id": "3rlp8p98fnstv" + }, + "type": "object", + "description": "Abstract base for import entities", + "discriminator": { + "propertyName": "type", + "mapping": { + "All": "#/components/schemas/AllEntitiesImport", + "Individual": "#/components/schemas/IndividualEntitiesImport", + "Sample": "#/components/schemas/SampleEntitiesImport" + } + }, + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "z551lvgusdf0y" + }, + "enum": [ + "All", + "Individual", + "Sample" + ] + }, + "catalog_connector_info": { + "$ref": "#/components/schemas/CatalogConnectorInfo", + "x-stoplight": { + "id": "ir8u1tzc1jeti" + } + } + }, + "required": [ + "type", + "catalog_connector_info" + ] + }, + "AuthInfoResponse": { + "title": "AuthInfoResponse", + "x-stoplight": { + "id": "ctsz2r10gqssu" + }, + "type": "object", + "properties": { + "authInfo": { + "$ref": "#/components/schemas/AuthInfo" + } + }, + "required": [ + "authInfo" + ] + }, + "AuthInfo": { + "title": "AuthInfo", + "x-stoplight": { + "id": "4ei89ktvaipss" + }, + "type": "object", + "properties": { + "namespace": { + "x-stoplight": { + "id": "ewnnxtnilgp7l" + }, + "type": "string" + }, + "env_variables": { + "x-stoplight": { + "id": "l3t9hclkkyyra" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/BackstageEnvVariable" + } + } + }, + "required": [ + "namespace", + "env_variables" + ] + }, + "HostInfo": { + "title": "HostInfo", + "x-stoplight": { + "id": "4m8jc4pxxby9f" + }, + "type": "object", + "properties": { + "host": { + "type": "string", + "x-stoplight": { + "id": "ji4h19dfwg66n" + } + }, + "paths": { + "type": "array", + "x-stoplight": { + "id": "mjabx4tv4s831" + }, + "items": { + "x-stoplight": { + "id": "bq9qhlppl7zi8" + }, + "type": "string" + } + } + }, + "required": [ + "host" + ] + }, + "AllowListRequest": { + "title": "AllowListRequest", + "x-stoplight": { + "id": "5o03n024p61gx" + }, + "type": "object", + "properties": { + "allow": { + "type": "array", + "x-stoplight": { + "id": "jhtlvv958icdw" + }, + "items": { + "$ref": "#/components/schemas/HostInfo" + } + } + }, + "required": [ + "allow" + ] + }, + "AllowListResponse": { + "title": "AllowListResponse", + "x-stoplight": { + "id": "lp085fjchryu3" + }, + "type": "object", + "properties": { + "allow": { + "x-stoplight": { + "id": "g0yx33mk3sgcb" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/HostInfo" + } + } + }, + "required": [ + "allow" + ] + }, + "ProxyHostDetail": { + "title": "ProxyHostDetail", + "x-stoplight": { + "id": "agl6s9vai35qw" + }, + "type": "object", + "description": "Proxy Host Detail", + "properties": { + "host": { + "type": "string", + "x-stoplight": { + "id": "oudzqrxaqnkjy" + } + }, + "proxy": { + "type": "boolean", + "x-stoplight": { + "id": "3h03au3y87lyv" + } + }, + "selectors": { + "type": "array", + "x-stoplight": { + "id": "jdgn49nqlp49k" + }, + "items": { + "x-stoplight": { + "id": "zvnhr2daor8lr" + }, + "type": "string" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "soyi91ysmnt8u" + } + }, + "pluginId": { + "type": "string", + "x-stoplight": { + "id": "7we0dzf0ap7v7" + } + } + }, + "required": [ + "host", + "proxy" + ] + }, + "ConfigurationEntities": { + "title": "ConfigurationEntities", + "x-stoplight": { + "id": "irav1h1h46nfk" + }, + "type": "object", + "properties": { + "env_variables": { + "type": "array", + "x-stoplight": { + "id": "75xycs21qycvx" + }, + "items": { + "$ref": "#/components/schemas/BackstageEnvVariable" + } + }, + "proxy": { + "type": "array", + "x-stoplight": { + "id": "cxy39vfdsd9yb" + }, + "items": { + "$ref": "#/components/schemas/ProxyHostDetail" + } + } + }, + "required": [ + "env_variables", + "proxy" + ] + }, + "ResolvedEnvVariable": { + "title": "ResolvedEnvVariable", + "x-stoplight": { + "id": "76ik03lvpra6i" + }, + "type": "object", + "x-examples": { + "Example 1": { + "env_name": "GITHUB_TOKEN", + "decrypted_value": "abc" + } + }, + "properties": { + "env_name": { + "type": "string", + "x-stoplight": { + "id": "koje4ebc0ae9g" + } + }, + "decrypted_value": { + "type": "string", + "x-stoplight": { + "id": "zmpbpdmhxf3pk" + } + } + } + }, + "ResolvedEnvVariableResponse": { + "title": "ResolvedEnvVariableResponse", + "x-stoplight": { + "id": "2dlc8i0aobls7" + }, + "type": "object", + "x-examples": { + "Example 1": { + "resolved_env_variable": { + "env_name": "GITHUB_TOKEN", + "decrypted_value": "abc" + } + } + }, + "properties": { + "resolved_env_variables": { + "type": "string" + } + } + }, + "Check": { + "title": "Check", + "x-stoplight": { + "id": "d3s3zmsa21jqu" + }, + "type": "object", + "description": "Check", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "u2xn1u2797lk3" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "0livvjhoy8g3l" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "f7xb30y8u47he" + } + }, + "expression": { + "type": "string", + "x-stoplight": { + "id": "5g5fqsfh15x7r" + } + }, + "tags": { + "type": "array", + "x-stoplight": { + "id": "mnwbadmsdi09d" + }, + "items": { + "x-stoplight": { + "id": "fitl6f8ktom9c" + }, + "type": "string" + } + }, + "custom": { + "type": "boolean", + "x-stoplight": { + "id": "04nibhaa1qklq" + } + } + }, + "required": [ + "identifier", + "name", + "custom" + ], + "x-internal": false + }, + "CheckListItem": { + "title": "CheckListItem", + "x-stoplight": { + "id": "3t9wuamv3qncv" + }, + "description": "CheckListItem", + "allOf": [ + { + "$ref": "#/components/schemas/Check" + }, + { + "type": "object", + "x-stoplight": { + "id": "wfv08rzs6qabm" + }, + "properties": { + "data_source": { + "type": "array", + "x-stoplight": { + "id": "e6b90f62ht5fy" + }, + "items": { + "x-stoplight": { + "id": "nl4f2bigcjdmv" + }, + "type": "string" + } + }, + "percentage": { + "type": "number", + "x-stoplight": { + "id": "kj6pmchmlzqn6" + }, + "format": "double", + "minimum": 0, + "maximum": 100 + } + }, + "required": [ + "data_source" + ] + } + ], + "x-internal": false + }, + "CheckResponse": { + "title": "CheckResponse", + "x-stoplight": { + "id": "8mglhh62xeh5i" + }, + "type": "object", + "properties": { + "check": { + "$ref": "#/components/schemas/CheckListItem" + } + }, + "x-internal": false + }, + "CheckDetails": { + "title": "CheckDetails", + "x-stoplight": { + "id": "lv03ixht7mprr" + }, + "allOf": [ + { + "$ref": "#/components/schemas/Check" + }, + { + "type": "object", + "properties": { + "rule_strategy": { + "x-stoplight": { + "id": "vozvk20qb8f54" + }, + "type": "string", + "enum": [ + "ALL_OF", + "ANY_OF" + ] + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Rule" + } + }, + "harness_managed": { + "type": "boolean", + "x-stoplight": { + "id": "98xzkzfnubveg" + } + }, + "default_behaviour": { + "x-stoplight": { + "id": "cdrzuq88hk9lo" + }, + "type": "string", + "enum": [ + "PASS", + "FAIL" + ] + }, + "fail_message": { + "type": "string", + "x-stoplight": { + "id": "mqml3k84x10ot" + } + }, + "percentage": { + "type": "number", + "x-stoplight": { + "id": "kp6ptdhmpvqn7" + }, + "format": "double", + "minimum": 0, + "maximum": 100 + } + }, + "required": [ + "rule_strategy", + "rules", + "default_behaviour" + ] + } + ], + "x-internal": false + }, + "CheckDetailsRequest": { + "title": "CheckDetailsRequest", + "x-stoplight": { + "id": "386kfxi3e1k1m" + }, + "type": "object", + "properties": { + "check_details": { + "$ref": "#/components/schemas/CheckDetails" + } + }, + "x-internal": false + }, + "CheckDetailsResponse": { + "title": "CheckDetailsResponse", + "x-stoplight": { + "id": "1wcwdvydnld0x" + }, + "type": "object", + "properties": { + "check_details": { + "$ref": "#/components/schemas/CheckDetails" + } + }, + "required": [ + "check_details" + ], + "x-internal": false + }, + "Rule": { + "title": "Rule", + "x-stoplight": { + "id": "3heyk9rwc10qi" + }, + "type": "object", + "x-internal": false, + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "e3xw4o7mbekr2" + } + }, + "data_source_identifier": { + "type": "string", + "x-stoplight": { + "id": "1vt7g30hh6uh3" + } + }, + "data_point_identifier": { + "type": "string", + "x-stoplight": { + "id": "g7l2155ej66ti" + } + }, + "operator": { + "type": "string", + "x-stoplight": { + "id": "w06lgfpzf7czd" + } + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "ektxg0uwq30y7" + } + }, + "input_values": { + "type": "array", + "x-stoplight": { + "id": "cllifz4ua1knq" + }, + "items": { + "$ref": "#/components/schemas/InputValue" + } + } + }, + "required": [ + "data_source_identifier", + "data_point_identifier", + "operator", + "value" + ] + }, + "ScorecardChecks": { + "title": "ScorecardChecks", + "x-stoplight": { + "id": "cyvlqdjbff44c" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "je2zi36q1g4po" + } + }, + "weightage": { + "type": "number", + "x-stoplight": { + "id": "v58bql7f1tfs7" + }, + "format": "double" + }, + "custom": { + "type": "boolean", + "x-stoplight": { + "id": "bupb1l0ow77d1" + } + } + }, + "required": [ + "identifier", + "custom" + ] + }, + "ScorecardChecksDetails": { + "title": "ScorecardChecksDetails", + "x-stoplight": { + "id": "hynxqf3tp1ysq" + }, + "allOf": [ + { + "$ref": "#/components/schemas/ScorecardChecks" + }, + { + "type": "object", + "x-stoplight": { + "id": "12snka2hxk667" + }, + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "ntpqrqq3ymwb3" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "jlr6zyb75u9bt" + } + } + }, + "required": [ + "name" + ] + } + ] + }, + "Scorecard": { + "title": "Scorecard", + "x-stoplight": { + "id": "ck1klmib92a8q" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "0036s8sh4ovml" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "vy3cv7a0ja9km" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "9ec2odnrqvkcm" + } + }, + "checks": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Check" + } + }, + "published": { + "type": "boolean", + "x-stoplight": { + "id": "5z7snnygtkcme" + } + }, + "checks_missing": { + "type": "array", + "x-stoplight": { + "id": "69qa1yprs1y5z" + }, + "items": { + "x-stoplight": { + "id": "4mdevxdftzonf" + }, + "type": "string" + } + }, + "components": { + "type": "integer", + "x-stoplight": { + "id": "9ec2oenrqokcm" + } + }, + "percentage": { + "type": "number", + "x-stoplight": { + "id": "iyqzo3vjc6kto" + }, + "format": "double", + "minimum": 0, + "maximum": 100 + } + }, + "required": [ + "name", + "identifier", + "checks" + ] + }, + "ScorecardDetails": { + "title": "ScorecardDetails", + "x-stoplight": { + "id": "ifbfldq39cf27" + }, + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "filter": { + "$ref": "#/components/schemas/ScorecardFilter" + }, + "weightage_strategy": { + "type": "string", + "x-stoplight": { + "id": "qeeywjc4bkkda" + }, + "enum": [ + "EQUAL_WEIGHTS", + "CUSTOM" + ], + "default": "EQUAL_WEIGHTS" + }, + "published": { + "type": "boolean", + "x-stoplight": { + "id": "qlznynr2iay1n" + } + }, + "checks_missing": { + "type": "array", + "x-stoplight": { + "id": "gntwsigybxa08" + }, + "items": { + "x-stoplight": { + "id": "6xqs4rtf0fexq" + }, + "type": "string" + } + }, + "components": { + "type": "integer", + "x-stoplight": { + "id": "8rc2peneqokdm" + } + }, + "percentage": { + "type": "number", + "x-stoplight": { + "id": "lzqyp3vjd6kto" + }, + "format": "double", + "minimum": 0, + "maximum": 100 + } + }, + "required": [ + "name", + "identifier", + "filter", + "published" + ] + }, + "ScorecardFilter": { + "title": "ScorecardFilter", + "x-stoplight": { + "id": "xwnr2xalsb1fv" + }, + "type": "object", + "properties": { + "kind": { + "type": "string", + "x-stoplight": { + "id": "ni2n6gaelw2sh" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "pit0to8ng7rtl" + } + }, + "owners": { + "type": "array", + "x-stoplight": { + "id": "ibe4axxxrnwpl" + }, + "items": { + "x-stoplight": { + "id": "kde7prhuw2ww2" + }, + "type": "string" + } + }, + "tags": { + "type": "array", + "x-stoplight": { + "id": "9sqie0nb3f08d" + }, + "items": { + "x-stoplight": { + "id": "8sko0og6lpbyh" + }, + "type": "string" + } + }, + "lifecycle": { + "type": "array", + "x-stoplight": { + "id": "9rtf97h3uu9z3" + }, + "items": { + "x-stoplight": { + "id": "etzt6sp88w5iz" + }, + "type": "string" + } + } + }, + "required": [ + "kind" + ] + }, + "ScorecardResponse": { + "title": "ScorecardResponse", + "x-stoplight": { + "id": "c9gm3c9wg18qw" + }, + "type": "object", + "properties": { + "scorecard": { + "$ref": "#/components/schemas/Scorecard" + } + } + }, + "ScorecardDetailsResponse": { + "title": "ScorecardDetailsResponse", + "x-stoplight": { + "id": "7z732csnjjs8z" + }, + "type": "object", + "properties": { + "scorecard": { + "$ref": "#/components/schemas/ScorecardDetails" + }, + "checks": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScorecardChecksDetails" + } + } + }, + "required": [ + "scorecard", + "checks" + ] + }, + "ScorecardDetailsRequest": { + "title": "ScorecardDetailsRequest", + "x-stoplight": { + "id": "z2l4mp8px3bsf" + }, + "type": "object", + "properties": { + "scorecard": { + "$ref": "#/components/schemas/ScorecardDetails" + }, + "checks": { + "type": "array", + "x-stoplight": { + "id": "edrtpiucltli5" + }, + "items": { + "$ref": "#/components/schemas/ScorecardChecks" + } + } + }, + "required": [ + "scorecard", + "checks" + ] + }, + "Facets": { + "title": "Facets", + "x-stoplight": { + "id": "0yxeh06749fxw" + }, + "type": "object", + "properties": { + "type": { + "type": "array", + "x-stoplight": { + "id": "8zjtnynlcnjjn" + }, + "items": { + "x-stoplight": { + "id": "bi0jhb6t58jfk" + }, + "type": "string" + } + }, + "owners": { + "type": "array", + "x-stoplight": { + "id": "ttni8vwtfjy37" + }, + "items": { + "x-stoplight": { + "id": "nv9qgpkbxeyx6" + }, + "type": "string" + } + }, + "tags": { + "type": "array", + "x-stoplight": { + "id": "35250e4csgeng" + }, + "items": { + "x-stoplight": { + "id": "gaxccdx1p5nq5" + }, + "type": "string" + } + }, + "lifecycle": { + "type": "array", + "x-stoplight": { + "id": "pm47xtp6sjdm9" + }, + "items": { + "x-stoplight": { + "id": "r76ps8dcmup2d" + }, + "type": "string" + } + } + }, + "required": [ + "type", + "owners", + "tags", + "lifecycle" + ] + }, + "DataSource": { + "title": "DataSource", + "x-stoplight": { + "id": "rl36h4i72zwmn" + }, + "type": "object", + "description": "Contains Details for Single Data source", + "x-internal": false, + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "q7mj2gssw1bli" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "t4ls3eta9srzd" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "cbkq0sja3irvh" + } + } + }, + "required": [ + "identifier", + "name", + "description" + ] + }, + "DataSourcesResponse": { + "title": "DataSourcesResponse", + "x-stoplight": { + "id": "73ueb905qy1zb" + }, + "type": "object", + "description": "Response for list of data sources", + "properties": { + "data_sources": { + "type": "array", + "x-stoplight": { + "id": "fhj90jbl2h787" + }, + "items": { + "$ref": "#/components/schemas/DataSource" + } + } + }, + "required": [ + "data_sources" + ], + "x-internal": false + }, + "DataPoint": { + "title": "DataPoint", + "x-stoplight": { + "id": "c7tcluzgw5cjz" + }, + "type": "object", + "description": "Conatins detail for single data point", + "x-internal": false, + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "7ravaew9405n5" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "0i3oxc3ybop4k" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "1hkouvzjjgqn1" + } + }, + "data_point_identifier": { + "type": "string", + "x-stoplight": { + "id": "ytmctby35eehe" + } + }, + "detailed_description": { + "type": "string", + "x-stoplight": { + "id": "ktfl6zmiaxrv8" + } + }, + "input_details": { + "type": "array", + "x-stoplight": { + "id": "7gpxma8wy54sh" + }, + "items": { + "$ref": "#/components/schemas/InputDetails" + } + } + }, + "required": [ + "type", + "name", + "description", + "data_point_identifier", + "detailed_description" + ] + }, + "DataPointsResponse": { + "title": "DataPointResponse", + "x-stoplight": { + "id": "oo360bhea35ae" + }, + "type": "object", + "description": "Resposne for List of Data Points", + "properties": { + "data_points": { + "type": "array", + "x-stoplight": { + "id": "8ibklj43876jd" + }, + "items": { + "$ref": "#/components/schemas/DataPoint" + } + } + }, + "required": [ + "data_points" + ], + "x-internal": false + }, + "CheckStatus": { + "title": "CheckStatus", + "x-stoplight": { + "id": "fdrxgq2legal0" + }, + "type": "object", + "description": "Info for single check status", + "x-internal": false, + "properties": { + "reason": { + "type": "string", + "x-stoplight": { + "id": "a55tfumwxdws2" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "def12dcql6nng" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "hgm12dcql6uny" + } + }, + "custom": { + "type": "boolean", + "x-stoplight": { + "id": "05nibebb1qklq" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "zz8q5jgf52oex" + }, + "enum": [ + "PASS", + "FAIL" + ] + }, + "weight": { + "type": "integer", + "x-stoplight": { + "id": "4onn2ugf7eag2" + } + } + }, + "required": [ + "name", + "status", + "weight" + ] + }, + "ScorecardSummaryInfo": { + "title": "ScorecardSummaryInfo", + "x-stoplight": { + "id": "pay6aezj4d31h" + }, + "type": "object", + "description": "Scorecard score calculation summary info", + "x-internal": false, + "properties": { + "scorecard_name": { + "type": "string", + "x-stoplight": { + "id": "9mygzdf55ojhx" + } + }, + "timestamp": { + "type": "integer", + "x-stoplight": { + "id": "t8nvwtsz37o45" + }, + "format": "int64" + }, + "score": { + "type": "integer", + "x-stoplight": { + "id": "n3owkfarff0z1" + } + }, + "checks_statuses": { + "type": "array", + "x-stoplight": { + "id": "bq3l2ts4hqmeb" + }, + "items": { + "$ref": "#/components/schemas/CheckStatus" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "vqndowi5uxn9y" + } + }, + "scorecard_identifier": { + "type": "string", + "x-stoplight": { + "id": "8ug477to6b52k" + } + }, + "recalibrate_info": { + "$ref": "#/components/schemas/ScorecardRecalibrateInfo" + } + }, + "required": [ + "scorecard_name", + "timestamp", + "score", + "checks_statuses", + "description", + "scorecard_identifier" + ] + }, + "ScorecardSummaryResponse": { + "title": "ScorecardSummaryResponse", + "x-stoplight": { + "id": "ynl06zzfi94rh" + }, + "type": "object", + "description": "Response for getting list for summary of score ", + "properties": { + "scorecards_summary": { + "type": "array", + "x-stoplight": { + "id": "1f4kjylmzpkq8" + }, + "items": { + "$ref": "#/components/schemas/ScorecardSummaryInfo" + } + } + }, + "required": [ + "scorecards_summary" + ], + "x-internal": false + }, + "ScorecardScore": { + "title": "ScorecardScore", + "x-stoplight": { + "id": "ynku3ttnf3cx6" + }, + "type": "object", + "x-internal": false, + "description": "Score info for single score card", + "properties": { + "score": { + "type": "integer", + "x-stoplight": { + "id": "h22nwhcbzelge" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "zcv3hpqtum3sy" + } + }, + "scorecard_name": { + "type": "string", + "x-stoplight": { + "id": "nci7recn0sy8r" + } + } + }, + "required": [ + "score", + "description", + "scorecard_name" + ] + }, + "ScorecardScoreResponse": { + "title": "ScorecardScoreResponse", + "x-stoplight": { + "id": "mzt5uyu7qe0wo" + }, + "type": "object", + "x-internal": false, + "description": "Response for getting only scores for scorecards", + "properties": { + "scorecard_scores": { + "type": "array", + "x-stoplight": { + "id": "awwxj6rf39qgz" + }, + "items": { + "$ref": "#/components/schemas/ScorecardScore" + } + }, + "overall_score": { + "type": "integer", + "x-stoplight": { + "id": "d2sok8uuzgwog" + } + } + }, + "required": [ + "scorecard_scores", + "overall_score" + ] + }, + "EntityScores": { + "title": "EntityScores", + "x-stoplight": { + "id": "pm2xjutml29k8" + }, + "type": "object", + "x-internal": false, + "description": "Scores for each backstage entity", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "c0ds57kufm40y" + } + }, + "title": { + "type": "string", + "x-stoplight": { + "id": "3br5wu0kv0evq" + } + }, + "kind": { + "type": "string", + "x-stoplight": { + "id": "yyu76dpyv8le4" + } + }, + "namespace": { + "type": "string", + "x-stoplight": { + "id": "ndpcgr677rusf" + } + }, + "scores": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScorecardScore" + } + } + }, + "required": [ + "name", + "title", + "kind", + "namespace", + "scores" + ] + }, + "EntityScoresResponse": { + "title": "EntityScoresResponse", + "x-stoplight": { + "id": "6jzf10wfckw9o" + }, + "type": "object", + "description": "Response for each entity scores", + "x-internal": false, + "properties": { + "entity": { + "$ref": "#/components/schemas/EntityScores" + } + } + }, + "ScorecardRecalibrateResponse": { + "title": "ScorecardRecalibrateResponse", + "x-stoplight": { + "id": "832327nsai3xw" + }, + "type": "object", + "properties": { + "recalibrated_scores": { + "$ref": "#/components/schemas/ScorecardSummaryInfo" + } + }, + "required": [ + "recalibrated_scores" + ] + }, + "ScorecardRecalibrateResponseV2": { + "title": "ScorecardRecalibrateResponseV2", + "x-stoplight": { + "id": "6ooyo1l1t3jkn" + }, + "type": "object", + "properties": { + "info": { + "$ref": "#/components/schemas/ScorecardRecalibrateInfo" + } + } + }, + "DataSourceDataPointInfo": { + "title": "DataSourceDataPointInfo", + "x-stoplight": { + "id": "jip4iam34alsh" + }, + "type": "object", + "description": "Request Content for fetching the data point data from data source", + "x-internal": false, + "properties": { + "data_source_location": { + "$ref": "#/components/schemas/DataSourceLocationInfo" + }, + "catalog_info_yaml": { + "type": "string", + "x-stoplight": { + "id": "p0wrxgotcawcm" + } + } + }, + "required": [ + "data_source_location", + "catalog_info_yaml" + ] + }, + "DataPointInputValues": { + "title": "DataPointInputValues", + "x-stoplight": { + "id": "pmbxi4kgowomt" + }, + "type": "object", + "properties": { + "data_point_identifier": { + "type": "string", + "x-stoplight": { + "id": "bulmbn2grsz1a" + } + }, + "data_source_identifier": { + "type": "string", + "x-stoplight": { + "id": "auomnn2gppz9a" + } + }, + "input_values": { + "type": "array", + "x-stoplight": { + "id": "ojz53dfz4w06d" + }, + "items": { + "$ref": "#/components/schemas/InputValue" + } + } + }, + "required": [ + "data_point_identifier", + "values" + ], + "description": "Data point values Info for Request", + "x-internal": false + }, + "DataSourceLocationInfo": { + "title": "DataSourceLocationInfo", + "x-stoplight": { + "id": "ky5xrxrsqr6br" + }, + "type": "object", + "description": "Data Source Location Info for request", + "x-internal": false, + "properties": { + "data_points": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DataPointInputValues" + } + } + }, + "required": [ + "data_points" + ] + }, + "DefaultSaveResponse": { + "title": "DefaultSaveResponse", + "x-stoplight": { + "id": "4dbdqgfzqv8nz" + }, + "type": "object", + "description": "Default response for Save/Edit operations ", + "properties": { + "status": { + "type": "string", + "x-stoplight": { + "id": "cskevfqvaydbn" + } + } + }, + "required": [ + "status" + ] + }, + "DataSourceDataPointsMap": { + "title": "DataSourceDataPointsMap", + "x-stoplight": { + "id": "cpgfpfbu0mtuc" + }, + "type": "object", + "properties": { + "data_source": { + "$ref": "#/components/schemas/DataSource" + }, + "data_points": { + "type": "array", + "x-stoplight": { + "id": "hvxvu8nzkm4zd" + }, + "items": { + "$ref": "#/components/schemas/DataPoint" + } + } + }, + "required": [ + "data_source", + "data_points" + ], + "description": "Mapping of data source with data points" + }, + "DataSourceDataPointsMapResponse": { + "title": "DataSourceDataPointsMapResponse", + "x-stoplight": { + "id": "hkryihjz7x491" + }, + "type": "object", + "properties": { + "data_source_data_points_map": { + "x-stoplight": { + "id": "gjgcug67oivlg" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/DataSourceDataPointsMap" + } + } + }, + "required": [ + "data_source_data_points_map" + ], + "description": "Response for getting the data sources and data points map" + }, + "ClusterConfig": { + "title": "ClusterConfig", + "x-stoplight": { + "id": "p3z26e6oxw2g7" + }, + "type": "object", + "properties": { + "url": { + "type": "string", + "x-stoplight": { + "id": "jkgnyf93137ih" + } + }, + "token": { + "type": "string", + "x-stoplight": { + "id": "46kek5s2hu6ff" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "jdhh8cesnek6e" + } + } + }, + "description": "Kubernetes Cluster configuration" + }, + "KubernetesConfig": { + "title": "KubernetesConfig", + "x-stoplight": { + "id": "bka2fmwsy2h8r" + }, + "type": "object", + "description": "Kubernetes data source config", + "properties": { + "clusters": { + "type": "array", + "x-stoplight": { + "id": "a2xxxtl7ss1wn" + }, + "items": { + "$ref": "#/components/schemas/ClusterConfig" + } + }, + "label_selector": { + "type": "string", + "x-stoplight": { + "id": "au25s8h8q4qzc" + } + }, + "namespace": { + "type": "string", + "x-stoplight": { + "id": "fl26s8h9q4qzc" + } + }, + "data_source_location": { + "$ref": "#/components/schemas/DataSourceLocationInfo" + } + } + }, + "KubernetesRequest": { + "title": "KubernetesRequest", + "x-stoplight": { + "id": "tnm7lax8bnuqn" + }, + "type": "object", + "properties": { + "request": { + "$ref": "#/components/schemas/KubernetesConfig" + } + } + }, + "ScmConfig": { + "title": "ScmConfig", + "x-stoplight": { + "id": "4lnqpy92i93nn" + }, + "type": "object", + "description": "Scm data source config", + "properties": { + "token": { + "type": "string", + "x-stoplight": { + "id": "trwbwp52ghvr1" + } + }, + "repo_scm": { + "type": "string", + "x-stoplight": { + "id": "ild5tcji7lp79" + } + }, + "repo_owner": { + "type": "string", + "x-stoplight": { + "id": "jsd5zcji6lp79" + } + }, + "repo_name": { + "type": "string", + "x-stoplight": { + "id": "4g3czqv7rubhe" + } + }, + "repo_branch": { + "type": "string", + "x-stoplight": { + "id": "utj0sh93p6jpf" + } + }, + "repo_sub_folder": { + "type": "string", + "x-stoplight": { + "id": "oiao02rw7ueem" + } + }, + "data_source_location": { + "$ref": "#/components/schemas/DataSourceLocationInfo" + } + } + }, + "ScmRequest": { + "title": "ScmRequest", + "x-stoplight": { + "id": "qdoqi2ofwsxrr" + }, + "type": "object", + "properties": { + "request": { + "$ref": "#/components/schemas/ScmConfig" + } + } + }, + "ScorecardRecalibrateIdentifiers": { + "title": "ScorecardRecalibrateIdentifiers", + "x-stoplight": { + "id": "dq24ve7fntvl7" + }, + "type": "object", + "properties": { + "scorecard_identifier": { + "type": "string", + "x-stoplight": { + "id": "ext9tyc3dprj6" + } + }, + "entity_identifier": { + "type": "string", + "x-stoplight": { + "id": "988nefyoe6o5e" + } + } + }, + "description": "Identifiers needed for score recalibration" + }, + "ScorecardRecalibrateRequest": { + "title": "ScorecardRecalibrateRequest", + "x-stoplight": { + "id": "wyhtihipnwd7n" + }, + "type": "object", + "properties": { + "identifiers": { + "$ref": "#/components/schemas/ScorecardRecalibrateIdentifiers" + } + } + }, + "LicenseUsageSaveRequest": { + "title": "LicenseUsageSaveRequest", + "x-stoplight": { + "id": "p4t22zv37yivm" + }, + "type": "object", + "description": "User details and accessedAt to capture license usage", + "properties": { + "user_identifier": { + "type": "string", + "x-stoplight": { + "id": "kwshwrjsp0kw0" + } + }, + "email": { + "type": "string", + "x-stoplight": { + "id": "gg9ozxyv4slx8" + } + }, + "user_name": { + "type": "string", + "x-stoplight": { + "id": "gg9ozxyv4slx8" + } + }, + "accessed_at": { + "type": "integer", + "x-stoplight": { + "id": "w7yl3d8j1xce2" + }, + "format": "int64" + } + }, + "required": [ + "user_identifier", + "email", + "user_name", + "accessed_at" + ] + }, + "LicenseUsageSaveResponse": { + "title": "LicenseUsageSaveResponse", + "x-stoplight": { + "id": "zavwissy2n6kj" + }, + "type": "object", + "description": "Response for license usage save", + "properties": { + "status": { + "type": "string", + "x-stoplight": { + "id": "uva00wdpw7tkp" + } + } + }, + "required": [ + "status" + ] + }, + "InputDetails": { + "title": "InputDetails", + "x-stoplight": { + "id": "9bevzs2ntadh9" + }, + "type": "object", + "properties": { + "key": { + "type": "string", + "x-stoplight": { + "id": "raxmdmy2r7q9y" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "aqhb6cu8ooj5t" + } + }, + "required": { + "type": "boolean", + "x-stoplight": { + "id": "q7eabpypob3ty" + } + } + }, + "required": [ + "key", + "description", + "required" + ] + }, + "InputValue": { + "title": "InputValue", + "x-stoplight": { + "id": "optt6zoyoj558" + }, + "type": "object", + "properties": { + "key": { + "type": "string", + "x-stoplight": { + "id": "g1gwgcsubi0n0" + } + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "uf1wutejszt8j" + } + } + }, + "required": [ + "key", + "value" + ] + }, + "ScorecardStats": { + "title": "ScorecardStats", + "x-stoplight": { + "id": "mfzfyuj9dxi9v" + }, + "type": "object", + "description": "ScorecardStats", + "x-internal": false, + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "skt0gj9ivt90s" + } + }, + "namespace": { + "type": "string", + "x-stoplight": { + "id": "oklu13i7o6ebd" + } + }, + "owner": { + "type": "string", + "x-stoplight": { + "id": "uiiw13t7o6uda" + } + }, + "system": { + "type": "string", + "x-stoplight": { + "id": "up1h022u2v98y" + } + }, + "kind": { + "type": "string", + "x-stoplight": { + "id": "azw80jiyldmxq" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "oijvwg17eyejq" + } + }, + "score": { + "type": "integer", + "x-stoplight": { + "id": "ehz071o8ft8bg" + } + } + }, + "required": [ + "name", + "namespace", + "owner", + "system", + "kind", + "type", + "score" + ] + }, + "ScorecardStatsResponse": { + "title": "ScorecardStatsResponse", + "x-stoplight": { + "id": "csadnzoryu4um" + }, + "description": "ScorecardStatsResponse", + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "czewiwd87fr8u" + } + }, + "timestamp": { + "type": "integer", + "x-stoplight": { + "id": "5p8wtkrmax6su" + }, + "format": "int64" + }, + "stats": { + "type": "array", + "x-stoplight": { + "id": "f4tm5re3zal0h" + }, + "items": { + "$ref": "#/components/schemas/ScorecardStats" + } + } + }, + "required": [ + "name", + "stats" + ] + }, + "CheckStats": { + "title": "CheckStats", + "x-stoplight": { + "id": "mgzeoij8ddi8f" + }, + "type": "object", + "description": "CheckStats", + "x-internal": false, + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "tkt0gj9ivt90s" + } + }, + "namespace": { + "type": "string", + "x-stoplight": { + "id": "pklu13i8o9rdb" + } + }, + "owner": { + "type": "string", + "x-stoplight": { + "id": "piiw13t7o6uda" + } + }, + "system": { + "type": "string", + "x-stoplight": { + "id": "pp1h022u2v98y" + } + }, + "kind": { + "type": "string", + "x-stoplight": { + "id": "bzw80jiyldmxq" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "pijvwg17eyejq" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "fhz071o8ft8bg" + } + } + }, + "required": [ + "name", + "namespace", + "owner", + "system", + "kind", + "type", + "status" + ] + }, + "CheckStatsResponse": { + "title": "CheckStatsResponse", + "x-stoplight": { + "id": "1hhr4bzpt278k" + }, + "type": "object", + "description": "CheckStatsResponse", + "x-internal": false, + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "5kkekddw3r1zh" + } + }, + "timestamp": { + "type": "integer", + "x-stoplight": { + "id": "5e8wpkrsax6xu" + }, + "format": "int64" + }, + "stats": { + "x-stoplight": { + "id": "nd4na7s04suxx" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/CheckStats" + } + } + }, + "required": [ + "name", + "stats" + ] + }, + "CheckGraph": { + "title": "CheckGraph", + "x-stoplight": { + "id": "7z8uudt72xmej" + }, + "type": "object", + "properties": { + "timestamp": { + "type": "integer", + "x-stoplight": { + "id": "549864xz1sb1m" + }, + "format": "int64" + }, + "count": { + "type": "integer", + "x-stoplight": { + "id": "irv1t5g39uexj" + } + } + } + }, + "ScorecardRecalibrateInfo": { + "title": "ScorecardRecalibrateInfo", + "x-stoplight": { + "id": "a5yovd00yo89y" + }, + "type": "object", + "properties": { + "start_time": { + "type": "integer", + "x-stoplight": { + "id": "dsc57yz269flx" + }, + "format": "int64" + }, + "started_by": { + "$ref": "#/components/schemas/User" + } + } + }, + "User": { + "title": "User", + "x-stoplight": { + "id": "p693c8e19hig1" + }, + "type": "object", + "properties": { + "uuid": { + "type": "string", + "x-stoplight": { + "id": "akz3uywxq3fcy" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "j5y9u9hxapibd" + } + }, + "email": { + "type": "string", + "x-stoplight": { + "id": "zrikcrbyjl7pk" + } + } + }, + "description": "" + }, + "DefaultPluginDetailedInfo": { + "title": "DefaultPluginDetailedInfo", + "x-stoplight": { + "id": "om79yzqsehzdj" + }, + "allOf": [ + { + "$ref": "#/components/schemas/PluginDetailedInfo" + } + ], + "description": "Metadata for default plugin" + }, + "CustomPluginDetailedInfo": { + "title": "CustomPluginDetailedInfo", + "x-stoplight": { + "id": "7d5vhhxgcinuj" + }, + "description": "Metadata for custom plugin", + "allOf": [ + { + "$ref": "#/components/schemas/PluginDetailedInfo" + }, + { + "type": "object", + "x-stoplight": { + "id": "a3azbqof3qaa4" + }, + "properties": { + "artifact": { + "$ref": "#/components/schemas/Artifact" + }, + "package_name": { + "type": "string", + "x-stoplight": { + "id": "6tclf6gflwbnm" + } + } + } + } + ] + }, + "Artifact": { + "title": "Artifact", + "x-stoplight": { + "id": "647wjmduc547h" + }, + "type": "object", + "description": "Artifact details for custom plugin", + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "jkdjdyi0psnta" + }, + "enum": [ + "NPM", + "ZIP" + ] + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "kmk65kswz6xuz" + } + } + }, + "required": [ + "type", + "url" + ] + }, + "CustomPluginInfoRequest": { + "title": "CustomPluginInfoRequest", + "x-stoplight": { + "id": "szco1w9ni5gg2" + }, + "type": "object", + "properties": { + "info": { + "$ref": "#/components/schemas/CustomPluginDetailedInfo" + } + } + }, + "CustomPluginInfoResponse": { + "title": "CustomPluginInfoResponse", + "x-stoplight": { + "id": "r9u1gb8tlw8jm" + }, + "type": "object", + "properties": { + "info": { + "$ref": "#/components/schemas/CustomPluginDetailedInfo" + } + } + }, + "BackstageHarnessSyncRequest": { + "title": "BackstageHarnessSyncRequest", + "type": "object", + "properties": { + "entity_identifier": { + "type": "string" + }, + "action": { + "type": "string", + "enum": [ + "create", + "update", + "upsert", + "delete" + ] + }, + "sync_mode": { + "type": "string", + "enum": [ + "sync", + "async" + ] + }, + "user": { + "$ref": "#/components/schemas/User" + } + }, + "required": [ + "entity_identifier", + "action", + "sync_mode" + ] + }, + "BackstageHarnessSyncEntitiesResponse": { + "title": "BackstageHarnessSyncEntitiesResponse", + "type": "object", + "description": "Response for backstage harness entities sync", + "properties": { + "status": { + "type": "string" + } + }, + "required": [ + "status" + ] + }, + "CustomPropertyByFieldDeleteResponse": { + "title": "CustomPropertyByFieldDeleteResponse", + "x-stoplight": { + "id": "6mjc0h4a2gtq6" + }, + "type": "object", + "required": [ + "property", + "entities_with_deletion" + ], + "properties": { + "property": { + "type": "string", + "x-stoplight": { + "id": "oo229sv9sf7by" + } + }, + "entities_with_deletion": { + "$ref": "#/components/schemas/CustomPropertyEntitiesCount" + } + } + }, + "CustomPropertyEntitiesCount": { + "title": "CustomPropertyEntitiesCount", + "x-stoplight": { + "id": "gipskdfrfr4se" + }, + "type": "object", + "required": [ + "count" + ], + "properties": { + "count": { + "type": "integer", + "x-stoplight": { + "id": "88y9vxs5v3tqc" + } + }, + "entity_refs": { + "type": "array", + "x-stoplight": { + "id": "8lpmsukk6dl4l" + }, + "items": { + "x-stoplight": { + "id": "ilcf2ihl97863" + }, + "type": "string" + } + } + } + }, + "CustomPropertyFilterRequest": { + "title": "CustomPropertyFilterRequest", + "x-stoplight": { + "id": "r7b8oidy5wmw3" + }, + "description": "Custom Property filter request for ingestion", + "allOf": [ + { + "$ref": "#/components/schemas/PropertyValue" + }, + { + "type": "object", + "required": [ + "filter" + ], + "properties": { + "filter": { + "$ref": "#/components/schemas/ScorecardFilter" + }, + "skip_entity_refs": { + "type": "array", + "x-stoplight": { + "id": "9rtf97h3uu9z3" + }, + "items": { + "x-stoplight": { + "id": "etzt6sp88w5iz" + }, + "type": "string" + } + } + } + } + ] + }, + "CustomPropertyFilterDeleteRequest": { + "title": "CustomPropertyFilterDeleteRequest", + "x-stoplight": { + "id": "r7b8oidy5ppw3" + }, + "description": "Custom Property filter delete request", + "type": "object", + "required": [ + "property", + "filter" + ], + "properties": { + "property": { + "type": "string", + "x-stoplight": { + "id": "e60m6bmezo34y" + } + }, + "filter": { + "$ref": "#/components/schemas/ScorecardFilter" + }, + "skip_entity_refs": { + "type": "array", + "x-stoplight": { + "id": "9rtf97h3uu9z3" + }, + "items": { + "x-stoplight": { + "id": "etzt6sp88w5iz" + }, + "type": "string" + } + } + } + }, + "CustomPropertiesBase": { + "title": "CustomPropertiesBase", + "x-stoplight": { + "id": "blleozqeppo3p" + }, + "type": "object", + "description": "Custom properties base", + "properties": { + "entity_ref": { + "type": "string", + "x-stoplight": { + "id": "f60m7omezo34z" + } + }, + "property": { + "type": "string", + "x-stoplight": { + "id": "e60m6bmezo34y" + } + }, + "value": { + "type": "object", + "x-stoplight": { + "id": "00wv958ee37z0" + } + }, + "mode": { + "type": "string", + "x-stoplight": { + "id": "ngeqasui9chk4" + }, + "enum": [ + "append", + "replace" + ] + } + } + }, + "PropertyValue": { + "title": "PropertyValue", + "x-stoplight": { + "id": "awleozpepzo2p" + }, + "type": "object", + "description": "Value overrides for custom property", + "required": [ + "property", + "value" + ], + "properties": { + "property": { + "type": "string", + "x-stoplight": { + "id": "e60m6bmezo34y" + } + }, + "value": { + "type": "object", + "x-stoplight": { + "id": "00wv958ee37z0" + } + }, + "mode": { + "type": "string", + "x-stoplight": { + "id": "ngeqasui9chk4" + }, + "enum": [ + "append", + "replace" + ] + } + } + }, + "EntityValue": { + "title": "EntityValue", + "x-stoplight": { + "id": "bpqeozlezzo2s" + }, + "type": "object", + "description": "Value overrides for custom property", + "required": [ + "entity_ref" + ], + "properties": { + "entity_ref": { + "type": "string", + "x-stoplight": { + "id": "e60m6bmezo34y" + } + }, + "value": { + "type": "object", + "x-stoplight": { + "id": "00wv958ee37z0" + } + } + } + }, + "CustomPropertyByFieldResponse": { + "title": "CustomPropertyByFieldResponse", + "x-stoplight": { + "id": "wc4i06fegoodx" + }, + "type": "object", + "required": [ + "property", + "entities_with_additions", + "entities_with_updates" + ], + "properties": { + "property": { + "type": "string", + "x-stoplight": { + "id": "ix5gx2623nliy" + } + }, + "entities_with_additions": { + "$ref": "#/components/schemas/CustomPropertyEntitiesCount" + }, + "entities_with_updates": { + "$ref": "#/components/schemas/CustomPropertyEntitiesCount" + } + } + }, + "CustomPropertyResponse": { + "title": "CustomPropertyResponse", + "x-stoplight": { + "id": "ud6i06fagpppl" + }, + "type": "object", + "required": [ + "status", + "message" + ], + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "ERROR" + ], + "x-stoplight": { + "id": "ix5gx2623nliy" + } + }, + "message": { + "type": "string", + "x-stoplight": { + "id": "ix5gx2623nliy" + } + } + } + }, + "CustomPropertyByEntityGetResponse": { + "title": "CustomPropertyByEntityGetResponse", + "x-stoplight": { + "id": "nn908nicqnzps" + }, + "type": "object", + "properties": { + "properties": { + "type": "array", + "x-stoplight": { + "id": "8t9gstypcz6rq" + }, + "items": { + "$ref": "#/components/schemas/PropertyValue" + } + } + } + }, + "CustomPropertyByFieldGetResponse": { + "title": "CustomPropertyByFieldGetResponse", + "x-stoplight": { + "id": "pq996nicsnzus" + }, + "type": "object", + "properties": { + "entity_refs": { + "type": "array", + "x-stoplight": { + "id": "8t9gstypcz6rq" + }, + "items": { + "$ref": "#/components/schemas/EntityValue" + } + }, + "mode": { + "type": "string", + "x-stoplight": { + "id": "xhepwtso50sls" + } + } + } + }, + "CustomPropertyByEntityRequest": { + "title": "CustomPropertyByEntityRequest", + "x-stoplight": { + "id": "5tvio8q8l1dpd" + }, + "allOf": [ + { + "$ref": "#/components/schemas/CustomPropertiesBase" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "array", + "x-stoplight": { + "id": "8t9gstypcz6rq" + }, + "items": { + "$ref": "#/components/schemas/PropertyValue" + } + } + } + } + ] + }, + "CustomPropertyByEntityDeleteRequest": { + "title": "CustomPropertyByEntityDeleteRequest", + "x-stoplight": { + "id": "8tpio8p8l2bpe" + }, + "required": [ + "entity_ref" + ], + "properties": { + "entity_ref": { + "type": "string", + "x-stoplight": { + "id": "e60m6bmezo34y" + } + }, + "property": { + "type": "string", + "x-stoplight": { + "id": "8t9gstypcz6rq" + } + }, + "properties": { + "type": "array", + "x-stoplight": { + "id": "9rtf97h3uu9z3" + }, + "items": { + "x-stoplight": { + "id": "etzt6sp88w5iz" + }, + "type": "string" + } + } + } + }, + "CustomPropertyByFieldRequest": { + "title": "CustomPropertyByFieldRequest", + "x-stoplight": { + "id": "5tvio9q9l2dpd" + }, + "allOf": [ + { + "$ref": "#/components/schemas/CustomPropertiesBase" + }, + { + "type": "object", + "properties": { + "entity_refs": { + "type": "array", + "x-stoplight": { + "id": "8t9gstypcz6rq" + }, + "items": { + "$ref": "#/components/schemas/EntityValue" + } + }, + "value": { + "type": "object", + "x-stoplight": { + "id": "botemn13q8oum" + } + } + } + } + ] + }, + "CustomPropertyByFieldDeleteRequest": { + "title": "CustomPropertyByFieldDeleteRequest", + "x-stoplight": { + "id": "9tpio9p9l2bpe" + }, + "required": [ + "property" + ], + "properties": { + "property": { + "type": "string", + "x-stoplight": { + "id": "e60m6bmezo34y" + } + }, + "entity_ref": { + "type": "string", + "x-stoplight": { + "id": "botemn13q8oum" + } + }, + "entity_refs": { + "type": "array", + "x-stoplight": { + "id": "9rtf97h3uu9z3" + }, + "items": { + "x-stoplight": { + "id": "etzt6sp88w5iz" + }, + "type": "string" + } + } + } + }, + "WorkflowsInfo": { + "title": "WorkflowsInfo", + "x-stoplight": { + "id": "866tz63x57k0x" + }, + "type": "object", + "description": "Model for storing the workflows info", + "required": [ + "name", + "kind", + "owner", + "uid", + "type" + ], + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "vnbg0l0j8mgza" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "hknsgi5o004yz" + } + }, + "kind": { + "type": "string", + "x-stoplight": { + "id": "5zns4zkrymy84" + } + }, + "owner": { + "type": "string", + "x-stoplight": { + "id": "fiu5eamaodjbe" + } + }, + "uid": { + "type": "string", + "x-stoplight": { + "id": "zh1vswqa2gpfu" + } + }, + "title": { + "type": "string", + "x-stoplight": { + "id": "gf19zc78mgkhc" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "v9nvaq6hcgwc5" + } + }, + "icon": { + "type": "string", + "x-stoplight": { + "id": "wf2635s4o4q3e" + } + } + } + }, + "Group": { + "title": "Group", + "x-stoplight": { + "id": "jraoj2djmfey2" + }, + "type": "object", + "required": [ + "name", + "identifier" + ], + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "ecm59972w2ose" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "oztyyv8qf5t61" + } + }, + "icon": { + "type": "string", + "x-stoplight": { + "id": "w18j21yz63srs" + } + }, + "workflows": { + "type": "array", + "x-stoplight": { + "id": "lybolo6pxkrni" + }, + "items": { + "$ref": "#/components/schemas/WorkflowsInfo" + } + }, + "order": { + "type": "integer", + "x-stoplight": { + "id": "9y93xwkkr90ir" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "qvx6zkkojf3z1" + } + } + } + }, + "EntitiesGroups": { + "title": "Entities Groups", + "description": "Represents a group of entities organized by organization and project, providing a hierarchical view of entities within the system.", + "type": "object", + "properties": { + "org_identifier": { + "type": "string", + "description": "Unique identifier of the organization" + }, + "org_name": { + "type": "string", + "description": "Display name of the organization" + }, + "project_identifier": { + "type": "string", + "description": "Unique identifier of the project" + }, + "project_name": { + "type": "string", + "description": "Display name of the project" + }, + "group_identifier": { + "type": "string", + "description": "Unique identifier of the group" + }, + "group_name": { + "type": "string", + "description": "Display name of the group" + }, + "group_description": { + "type": "string", + "description": "Description of the group" + }, + "group_icon": { + "type": "string", + "description": "Icon URL representing the group" + }, + "order": { + "type": "integer", + "description": "Display order for the group" + }, + "workflows": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Workflows associated with the group" + }, + "total": { + "type": "integer", + "description": "Total number of entities in the group" + }, + "entities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityResponse" + }, + "description": "Entities belonging to the group" + } + } + }, + "GroupRequest": { + "title": "GroupRequest", + "x-stoplight": { + "id": "uueeep23y7awo" + }, + "type": "object", + "properties": { + "group": { + "$ref": "#/components/schemas/Group" + } + } + }, + "GroupResponse": { + "title": "GroupResponse", + "x-stoplight": { + "id": "ogke44btl75gm" + }, + "type": "object", + "properties": { + "group": { + "$ref": "#/components/schemas/Group" + } + } + }, + "GroupsYamlResponse": { + "title": "GroupYaml", + "x-stoplight": { + "id": "d862zg9wbkg0t" + }, + "type": "object", + "properties": { + "yaml": { + "type": "string", + "x-stoplight": { + "id": "l0fjq91pgtgl5" + } + } + } + }, + "WorkflowsInfoResponse": { + "title": "WorkflowsInfoResponse", + "x-stoplight": { + "id": "glueaqvly22p3" + }, + "type": "object", + "properties": { + "workflows": { + "type": "array", + "x-stoplight": { + "id": "dhf5s9geavdi2" + }, + "items": { + "$ref": "#/components/schemas/WorkflowsInfo" + } + } + } + }, + "TopVisitedCard": { + "title": "TopVisitedCard", + "x-stoplight": { + "id": "m7hoy1gn0v1k5" + }, + "x-discriminator-value": "TOP_VISITED", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "5j0xgqlt3yd4k" + }, + "required": [ + "size", + "type" + ], + "properties": { + "description": { + "type": "string", + "x-stoplight": { + "id": "qw6x6xkdrkm29" + } + }, + "size": { + "type": "string", + "x-stoplight": { + "id": "vh56q1lupdsvh" + } + }, + "type": { + "x-stoplight": { + "id": "ex97ilz87facq" + }, + "type": "string", + "enum": [ + "TOP_VISITED" + ] + } + } + } + ] + }, + "RecentlyVisitedCard": { + "title": "RecentlyVisitedCard", + "x-stoplight": { + "id": "1i5ksikl60hj2" + }, + "x-discriminator-value": "RECENTLY_VISITED", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "9dcvqmqu0vmyr" + }, + "required": [ + "type", + "size" + ], + "properties": { + "type": { + "x-stoplight": { + "id": "hysmuwztrco9m" + }, + "type": "string", + "enum": [ + "RECENTLY_VISITED" + ] + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "2zk1b2i27ndxh" + } + }, + "size": { + "type": "string", + "x-stoplight": { + "id": "d86po14co3y2u" + } + } + } + } + ] + }, + "StarredEntitiesCard": { + "title": "StarredEntitiesCard", + "x-stoplight": { + "id": "6go56r5l9pw5i" + }, + "x-discriminator-value": "STARRED_ENTITIES", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "eoi55yj342n8t" + }, + "required": [ + "type", + "size" + ], + "properties": { + "description": { + "type": "string", + "x-stoplight": { + "id": "z7ok1yz4wpvkp" + } + }, + "type": { + "x-stoplight": { + "id": "bo6ytc8ye71mr" + }, + "type": "string", + "enum": [ + "STARRED_ENTITIES" + ] + }, + "size": { + "type": "string", + "x-stoplight": { + "id": "2b7sm5d32gi0m" + } + } + } + } + ] + }, + "MarkdownCard": { + "title": "MarkdownCard", + "x-stoplight": { + "id": "pf6hmrip039m3" + }, + "x-discriminator-value": "MARKDOWN", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "s2iscjtgbag4u" + }, + "required": [ + "size", + "markdown", + "type" + ], + "properties": { + "size": { + "type": "string", + "x-stoplight": { + "id": "4jdoz1l4z35vg" + } + }, + "markdown": { + "type": "string", + "x-stoplight": { + "id": "cuhajyaa2etej" + } + }, + "type": { + "x-stoplight": { + "id": "z2ou3om9iztbr" + }, + "type": "string", + "enum": [ + "MARKDOWN" + ] + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "jyz2x09vfz1oe" + } + } + } + } + ] + }, + "VideoCard": { + "title": "VideoCard", + "x-stoplight": { + "id": "49pkntslbrtt9" + }, + "x-discriminator-value": "VIDEO", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "ax1vjqn85e6nt" + }, + "required": [ + "size", + "url", + "type" + ], + "properties": { + "size": { + "type": "string", + "x-stoplight": { + "id": "j654ol7h61322" + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "5vdojnxp9r99q" + } + }, + "type": { + "x-stoplight": { + "id": "09ia6lef8t2dv" + }, + "type": "string", + "enum": [ + "VIDEO" + ] + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "4bu579fusn3oa" + } + } + } + } + ] + }, + "CustomLinkCard": { + "title": "CustomLinkCard", + "x-stoplight": { + "id": "783vgfgsud01c" + }, + "x-discriminator-value": "CUSTOM_LINK", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "r8sbdlsrva2l8" + }, + "required": [ + "size", + "links", + "type" + ], + "properties": { + "size": { + "type": "string", + "x-stoplight": { + "id": "o2ea6f32fr0lf" + } + }, + "links": { + "type": "array", + "x-stoplight": { + "id": "qera0maj9pypa" + }, + "items": { + "$ref": "#/components/schemas/LinksInfo" + } + }, + "type": { + "x-stoplight": { + "id": "jrvenxvsxhtvd" + }, + "type": "string", + "enum": [ + "CUSTOM_LINK" + ] + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "f0zdkkr5p9lvu" + } + } + } + } + ] + }, + "LinksInfo": { + "title": "LinksInfo", + "x-stoplight": { + "id": "hs6wffpa1vsmr" + }, + "type": "object", + "required": [ + "icon", + "title", + "url", + "identifier" + ], + "properties": { + "icon": { + "type": "string", + "x-stoplight": { + "id": "8tq6yxtmtp8jt" + } + }, + "title": { + "type": "string", + "x-stoplight": { + "id": "l7xnxrlom0i2n" + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "739ho9wpegobn" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "qzinj0rideh67" + } + } + } + }, + "SelfServiceCard": { + "title": "SelfServiceCard", + "x-stoplight": { + "id": "3aa0r0uzbggg0" + }, + "x-discriminator-value": "SELF_SERVICE", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "cdi4u1wg394gb" + }, + "required": [ + "size", + "type" + ], + "properties": { + "size": { + "type": "string", + "x-stoplight": { + "id": "18gz6gz1curjl" + } + }, + "type": { + "x-stoplight": { + "id": "s3mcc22q06wpr" + }, + "type": "string", + "enum": [ + "SELF_SERVICE" + ] + } + } + } + ] + }, + "GithubCard": { + "title": "GithubCard", + "x-stoplight": { + "id": "0yx2ck021z2fa" + }, + "x-discriminator-value": "GITHUB", + "allOf": [ + { + "type": "object", + "x-stoplight": { + "id": "xbbuk5a5b828j" + }, + "required": [ + "size", + "type" + ], + "properties": { + "size": { + "type": "string", + "x-stoplight": { + "id": "xbbuk5a5b828k" + } + }, + "type": { + "x-stoplight": { + "id": "g9wz1jrs1t4xj" + }, + "type": "string", + "enum": [ + "GITHUB" + ] + } + } + } + ] + }, + "HeaderInfo": { + "title": "HeaderInfo", + "x-stoplight": { + "id": "40s7em3fy3i26" + }, + "type": "object", + "required": [ + "header_text", + "quick_links" + ], + "properties": { + "header_text": { + "type": "string", + "x-stoplight": { + "id": "ejy8owdfu3a7w" + } + }, + "quick_links": { + "type": "array", + "x-stoplight": { + "id": "c37mcmjbsb0ew" + }, + "items": { + "$ref": "#/components/schemas/LinksInfo" + } + } + } + }, + "BannerInfo": { + "title": "BannerInfo", + "x-stoplight": { + "id": "sh7q54y2x3w6n" + }, + "type": "object", + "required": [ + "banner_enabled" + ], + "properties": { + "image": { + "$ref": "#/components/schemas/UploadInfo" + }, + "video": { + "$ref": "#/components/schemas/UploadInfo" + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "6qi1pn6df9w3y" + } + }, + "banner_enabled": { + "type": "boolean", + "x-stoplight": { + "id": "acof9j24ugx2m" + } + } + } + }, + "HomePageLayoutInfo": { + "title": "HomePageLaout", + "x-stoplight": { + "id": "46lg0j8o4jyx3" + }, + "type": "object", + "required": [ + "header", + "banner", + "cards" + ], + "properties": { + "header": { + "$ref": "#/components/schemas/HeaderInfo" + }, + "banner": { + "$ref": "#/components/schemas/BannerInfo" + }, + "cards": { + "type": "array", + "x-stoplight": { + "id": "l98ox7834hcmr" + } + } + } + }, + "CardResponse": { + "title": "CardResponse", + "x-stoplight": { + "id": "pwxdpumn5p2nf" + }, + "type": "object", + "required": [ + "card" + ] + }, + "HomePageLayoutResponse": { + "title": "HomePageLayoutResponse", + "x-stoplight": { + "id": "frc0lddsqe2py" + }, + "type": "object", + "required": [ + "home_page_layout" + ], + "properties": { + "home_page_layout": { + "$ref": "#/components/schemas/HomePageLayoutInfo" + } + } + }, + "HomePageLayoutRequest": { + "title": "HomePageLayoutRequest", + "x-stoplight": { + "id": "3zfmlb9fjyabb" + }, + "type": "object", + "required": [ + "home_page_layout" + ], + "properties": { + "home_page_layout": { + "$ref": "#/components/schemas/HomePageLayoutInfo" + } + } + }, + "HomePageLayoutYamlResponse": { + "title": "HomePageLayoutYamlResponse", + "x-stoplight": { + "id": "tjtix0kc16tuq" + }, + "type": "object", + "required": [ + "yaml" + ], + "properties": { + "yaml": { + "type": "string", + "x-stoplight": { + "id": "p80gq93dymf9w" + } + } + } + }, + "UploadInfo": { + "title": "UploadInfo", + "x-stoplight": { + "id": "i16ow38yt6ko6" + }, + "type": "object", + "properties": { + "url": { + "type": "string", + "x-stoplight": { + "id": "vuah9tjeklkgo" + } + }, + "uploads": { + "type": "array", + "x-stoplight": { + "id": "h8egu2hf2jyn3" + }, + "items": { + "x-stoplight": { + "id": "ngwwqfsxkzrsl" + }, + "type": "string" + } + }, + "selected": { + "type": "string", + "x-stoplight": { + "id": "3f7t4n7o9ftip" + } + } + } + }, + "CardIconResponse": { + "title": "CardIconInfo", + "x-stoplight": { + "id": "3n6zz2mg3vjie" + }, + "type": "object", + "required": [ + "icon_url" + ], + "properties": { + "icon_url": { + "type": "string", + "x-stoplight": { + "id": "28g2dkx7xtnpl" + } + } + } + }, + "DeleteHomePageLayoutIconRequest": { + "title": "DeleteHomePageLayoutIcom", + "x-stoplight": { + "id": "eambi0iwmbtf4" + }, + "type": "object", + "required": [ + "icon_url" + ], + "properties": { + "icon_url": { + "type": "string", + "x-stoplight": { + "id": "3orajqsokg0my" + } + } + } + }, + "EntityRequest": { + "title": "Entity Request Body", + "description": "Request body for creating or updating an Entity, containing the entity YAML definition as a string.", + "type": "object", + "properties": { + "yaml": { + "type": "string", + "description": "Entity YAML definition as a string. Should conform to either the Harness entity format or the Backstage entity format, depending on the operation." + } + }, + "required": [ + "yaml" + ] + }, + "EntityResponse": { + "title": "Entity Response Body", + "description": "Detailed information about an Entity, including its metadata, relationships, and YAML representation.", + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Unique identifier of the entity within its scope and kind" + }, + "entity_ref": { + "type": "string", + "description": "Full entity reference in the format scope/kind/identifier" + }, + "orgIdentifier": { + "type": "string", + "description": "Identifier of the organization that the entity belongs to" + }, + "org_name": { + "type": "string", + "description": "Display name of the organization that the entity belongs to" + }, + "projectIdentifier": { + "type": "string", + "description": "Identifier of the project that the entity belongs to" + }, + "project_name": { + "type": "string", + "description": "Display name of the project that the entity belongs to" + }, + "scope": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ], + "description": "Scope of the entity (account, organization, or project level)" + }, + "referenceType": { + "type": "string", + "enum": [ + "INLINE", + "GIT" + ], + "description": "Type of reference for the entity (inline definition or Git-sourced)" + }, + "kind": { + "type": "string", + "enum": [ + "api", + "component", + "group", + "resource", + "user", + "workflow" + ], + "description": "Kind of the entity (defines its core purpose)" + }, + "type": { + "type": "string", + "description": "Type of the entity within its kind (e.g., Service, Website)" + }, + "name": { + "type": "string", + "description": "Display name of the entity" + }, + "description": { + "type": "string", + "description": "Descriptive text about the entity" + }, + "owner": { + "type": "string", + "description": "Owner reference for the entity (user or group)" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Tags associated with the entity for categorization" + }, + "lifecycle": { + "type": "string", + "description": "Lifecycle stage of the entity (e.g., experimental, production)" + }, + "metadata": { + "type": "object", + "description": "Additional metadata associated with the entity" + }, + "scorecards": { + "type": "object", + "properties": { + "average": { + "type": "number", + "description": "Average score across all scorecards" + }, + "scores": { + "type": "array", + "items": { + "type": "object", + "properties": { + "scorecard": { + "type": "string", + "description": "Name of the scorecard" + }, + "score": { + "type": "number", + "description": "Numeric score (typically 0-100)" + }, + "total_checks": { + "type": "number", + "description": "Total number of checks in the scorecard" + }, + "passed_checks": { + "type": "number", + "description": "Number of checks that passed" + } + } + } + } + }, + "description": "Scorecard information for the entity" + }, + "yaml": { + "type": "string", + "description": "Complete entity YAML definition" + }, + "starred": { + "type": "boolean", + "description": "Whether the entity is marked as a favorite by the current user" + }, + "status": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of status information" + }, + "level": { + "type": "string", + "description": "Severity level (info, warning, error)" + }, + "message": { + "type": "string", + "description": "Status message text" + } + } + }, + "description": "Status information for the entity" + }, + "groups": { + "type": "array", + "items": { + "type": "object", + "properties": { + "org_identifier": { + "type": "string", + "description": "Organization identifier" + }, + "org_name": { + "type": "string", + "description": "Organization name" + }, + "project_identifier": { + "type": "string", + "description": "Project identifier" + }, + "project_name": { + "type": "string", + "description": "Project name" + }, + "scope": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ], + "description": "Scope level" + }, + "group_identifier": { + "type": "string", + "description": "Group identifier" + }, + "group_name": { + "type": "string", + "description": "Group display name" + }, + "group_description": { + "type": "string", + "description": "Group description" + }, + "group_icon": { + "type": "string", + "description": "Group icon URL" + } + } + }, + "description": "Groups that the entity belongs to" + } + }, + "required": [ + "identifier", + "entity_ref", + "scope", + "referenceType", + "kind", + "yaml" + ] + }, + "EntityConvertResponse": { + "title": "Entity Convert Response", + "description": "Result of converting an Entity between formats (Backstage to Harness or vice versa), containing the converted YAML definition.", + "type": "object", + "properties": { + "yaml": { + "type": "string", + "description": "Converted entity YAML definition in the target format" + } + }, + "required": [ + "yaml" + ] + }, + "EntityKindsResponse": { + "title": "Entity Kinds Response", + "description": "Information about an Entity Kind, including its display name, description, and the count of entities of this kind in the system.", + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "Kind identifier (e.g., component, api)" + }, + "display_name": { + "type": "string", + "description": "Human-readable display name for the kind" + }, + "description": { + "type": "string", + "description": "Description of the entity kind and its purpose" + }, + "total": { + "type": "integer", + "description": "Total number of entities of this kind in the system" + } + } + }, + "EntityFiltersResponse": { + "title": "Entity Filters Response", + "description": "Filter options for Entities, including the filter name and its possible values. Used for building dynamic filter UIs.", + "type": "object", + "properties": { + "filter": { + "type": "string", + "description": "Name of the filter (e.g., type, lifecycle, owner)" + }, + "values": { + "type": "object", + "description": "Available values for the filter (depends on the filter type)" + } + } + }, + "EntityJsonSchemaResponse": { + "title": "Entity JSON Schema Response", + "description": "JSON Schema for validating Entity definitions, which can be used for client-side validation before submitting entity operations.", + "type": "object" + }, + "EntitiesGroupsResponse": { + "title": "Entities Groups Response", + "description": "Entities organized in hierarchical groups based on account, organization, and project, along with count information for each level.", + "type": "object", + "properties": { + "data": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "with_group": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitiesGroups" + }, + "description": "Account-level entities organized into groups" + }, + "without_group": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityResponse" + }, + "description": "Account-level entities not associated with any group" + } + }, + "description": "Account-level entities" + }, + "org": { + "type": "object", + "properties": { + "with_group": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitiesGroups" + }, + "description": "Organization-level entities organized into groups" + }, + "without_group": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityResponse" + }, + "description": "Organization-level entities not associated with any group" + } + }, + "description": "Organization-level entities" + }, + "project": { + "type": "object", + "properties": { + "with_group": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitiesGroups" + }, + "description": "Project-level entities organized into groups" + }, + "without_group": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityResponse" + }, + "description": "Project-level entities not associated with any group" + } + }, + "description": "Project-level entities" + } + }, + "description": "Grouped entity data" + }, + "count": { + "type": "object", + "properties": { + "total": { + "type": "integer", + "description": "Total number of entities across all scopes" + }, + "total_owned": { + "type": "integer", + "description": "Total number of entities owned by the current user or their groups" + }, + "total_starred": { + "type": "integer", + "description": "Total number of entities marked as favorites by the current user" + }, + "account": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitiesGroups" + }, + "description": "Entity counts at the account level by group" + }, + "org": { + "type": "array", + "items": { + "type": "object", + "properties": { + "org_identifier": { + "type": "string", + "description": "Organization identifier" + }, + "org_name": { + "type": "string", + "description": "Organization name" + }, + "groups": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitiesGroups" + }, + "description": "Entity counts by group within the organization" + } + } + }, + "description": "Entity counts at the organization level" + }, + "project": { + "type": "array", + "items": { + "type": "object", + "properties": { + "org_identifier": { + "type": "string", + "description": "Organization identifier" + }, + "org_name": { + "type": "string", + "description": "Organization name" + }, + "project_identifier": { + "type": "string", + "description": "Project identifier" + }, + "project_name": { + "type": "string", + "description": "Project name" + }, + "groups": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitiesGroups" + }, + "description": "Entity counts by group within the project" + } + } + }, + "description": "Entity counts at the project level" + } + }, + "description": "Count information for entities by scope and group" + } + } + }, + "Failure": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ValidationError" + } + } + }, + "description": "This is Failure entity as defied in Harness" + }, + "ValidationError": { + "type": "object", + "properties": { + "fieldId": { + "type": "string" + }, + "error": { + "type": "string" + } + } + }, + "Error": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/ErrorMetadata2" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "ErrorMetadata2": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "ResponseMessage": { + "type": "object", + "properties": { + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "level": { + "type": "string", + "enum": [ + "INFO", + "ERROR" + ] + }, + "message": { + "type": "string" + }, + "exception": { + "type": "object", + "properties": { + "stackTrace": { + "type": "array", + "items": { + "type": "object", + "properties": { + "classLoaderName": { + "type": "string" + }, + "moduleName": { + "type": "string" + }, + "moduleVersion": { + "type": "string" + }, + "methodName": { + "type": "string" + }, + "fileName": { + "type": "string" + }, + "lineNumber": { + "type": "integer", + "format": "int32" + }, + "nativeMethod": { + "type": "boolean" + }, + "className": { + "type": "string" + } + } + } + }, + "message": { + "type": "string" + }, + "suppressed": { + "type": "array", + "items": { + "type": "object", + "properties": { + "stackTrace": { + "type": "array", + "items": { + "type": "object", + "properties": { + "classLoaderName": { + "type": "string" + }, + "moduleName": { + "type": "string" + }, + "moduleVersion": { + "type": "string" + }, + "methodName": { + "type": "string" + }, + "fileName": { + "type": "string" + }, + "lineNumber": { + "type": "integer", + "format": "int32" + }, + "nativeMethod": { + "type": "boolean" + }, + "className": { + "type": "string" + } + } + } + }, + "message": { + "type": "string" + }, + "localizedMessage": { + "type": "string" + } + } + } + }, + "localizedMessage": { + "type": "string" + } + } + }, + "failureTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EXPIRED", + "DELEGATE_PROVISIONING", + "CONNECTIVITY", + "AUTHENTICATION", + "VERIFICATION_FAILURE", + "APPLICATION_ERROR", + "AUTHORIZATION_ERROR", + "TIMEOUT_ERROR", + "POLICY_EVALUATION_FAILURE", + "INPUT_TIMEOUT_FAILURE", + "APPROVAL_REJECTION", + "DELEGATE_RESTART", + "USER_MARKED_FAILURE" + ] + } + }, + "additionalInfo": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Account": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Account Identifier." + }, + "name": { + "type": "string", + "description": "Name of the Account." + }, + "companyName": { + "type": "string", + "description": "Name of the Company." + }, + "accountType": { + "type": "string", + "description": "Type of the Account" + }, + "accountStatus": { + "type": "string", + "description": "Status of the Account" + }, + "cluster": { + "type": "string", + "description": "Name of the cluster associated with this Account." + }, + "defaultExperience": { + "type": "string", + "description": "Default experience of the Account.", + "enum": [ + "NG", + "CG" + ] + }, + "authenticationMechanism": { + "type": "string", + "description": "Authentication mechanism associated with the account.", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + }, + "serviceAccountConfig": { + "$ref": "#/components/schemas/ServiceAccountConfig" + }, + "createdAt": { + "type": "integer", + "description": "Account creation time in epoch", + "format": "int64" + }, + "expiryTime": { + "type": "integer", + "description": "Account's license expiry time in epoch", + "format": "int64" + }, + "ringName": { + "type": "string", + "description": "Specifies delegate ring version for account" + }, + "subdomainURL": { + "type": "string", + "description": "Specifies subdomain url for account" + }, + "sessionTimeoutInMinutes": { + "type": "integer", + "description": "SessionTimeout in minutes", + "format": "int32" + }, + "publicAccessEnabled": { + "type": "boolean", + "description": "Specifies if Account has public access enabled." + }, + "absoluteSessionTimeoutInMinutes": { + "type": "integer", + "description": "Absolute SessionTimeout in minutes", + "format": "int32" + }, + "twoFactorAdminEnforced": { + "type": "boolean" + }, + "nextGenEnabled": { + "type": "boolean" + }, + "cannyUsernameAbbreviationEnabled": { + "type": "boolean" + }, + "crossGenerationAccessEnabled": { + "type": "boolean" + }, + "productLed": { + "type": "boolean" + }, + "harnessSupportAccessAllowed": { + "type": "boolean" + }, + "oauthEnabled": { + "type": "boolean" + } + }, + "description": "Account details defined in Harness." + }, + "ResponseDTOAccount": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/Account" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceAccountConfig": { + "type": "object", + "properties": { + "apiKeyLimit": { + "type": "integer", + "format": "int64" + }, + "tokenLimit": { + "type": "integer", + "format": "int64" + } + }, + "description": "Service Account configuration associated with this Account." + }, + "ResponseDTOBoolean": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "boolean" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ByteString": { + "type": "object", + "properties": { + "empty": { + "type": "boolean" + }, + "validUtf8": { + "type": "boolean" + } + } + }, + "Declaration": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "fullNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "reserved": { + "type": "boolean" + }, + "type": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int32" + }, + "fullName": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Declaration" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserDeclaration" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "repeated": { + "type": "boolean" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "DeclarationOrBuilder": { + "type": "object", + "properties": { + "fullNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "reserved": { + "type": "boolean" + }, + "type": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int32" + }, + "fullName": { + "type": "string" + }, + "repeated": { + "type": "boolean" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Descriptor": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int32" + }, + "proto": { + "$ref": "#/components/schemas/DescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/MessageOptions" + }, + "fullName": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "containingType": { + "$ref": "#/components/schemas/Descriptor" + }, + "nestedTypes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Descriptor" + } + }, + "enumTypes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptor" + } + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptor" + } + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptor" + } + }, + "oneofs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OneofDescriptor" + } + }, + "name": { + "type": "string" + }, + "extendable": { + "type": "boolean" + }, + "realOneofs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OneofDescriptor" + } + } + } + }, + "DescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "name": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/MessageOptions" + }, + "fieldCount": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/DescriptorProto" + }, + "reservedRangeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ReservedRange" + } + }, + "reservedNameList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "extensionRangeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtensionRange" + } + }, + "oneofDeclCount": { + "type": "integer", + "format": "int32" + }, + "nestedTypeCount": { + "type": "integer", + "format": "int32" + }, + "enumTypeCount": { + "type": "integer", + "format": "int32" + }, + "extensionCount": { + "type": "integer", + "format": "int32" + }, + "extensionRangeCount": { + "type": "integer", + "format": "int32" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "enumTypeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptorProto" + } + }, + "enumTypeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptorProtoOrBuilder" + } + }, + "extensionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProto" + } + }, + "extensionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProtoOrBuilder" + } + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/MessageOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "fieldList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProto" + } + }, + "fieldOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProtoOrBuilder" + } + }, + "nestedTypeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DescriptorProto" + } + }, + "nestedTypeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DescriptorProtoOrBuilder" + } + }, + "extensionRangeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtensionRangeOrBuilder" + } + }, + "oneofDeclList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OneofDescriptorProto" + } + }, + "oneofDeclOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OneofDescriptorProtoOrBuilder" + } + }, + "reservedRangeCount": { + "type": "integer", + "format": "int32" + }, + "reservedRangeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ReservedRangeOrBuilder" + } + }, + "reservedNameCount": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "DescriptorProtoOrBuilder": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "options": { + "$ref": "#/components/schemas/MessageOptions" + }, + "fieldCount": { + "type": "integer", + "format": "int32" + }, + "reservedRangeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ReservedRange" + } + }, + "reservedNameList": { + "type": "array", + "items": { + "type": "string" + } + }, + "extensionRangeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtensionRange" + } + }, + "oneofDeclCount": { + "type": "integer", + "format": "int32" + }, + "nestedTypeCount": { + "type": "integer", + "format": "int32" + }, + "enumTypeCount": { + "type": "integer", + "format": "int32" + }, + "extensionCount": { + "type": "integer", + "format": "int32" + }, + "extensionRangeCount": { + "type": "integer", + "format": "int32" + }, + "enumTypeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptorProto" + } + }, + "enumTypeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptorProtoOrBuilder" + } + }, + "extensionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProto" + } + }, + "extensionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProtoOrBuilder" + } + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/MessageOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "fieldList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProto" + } + }, + "fieldOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProtoOrBuilder" + } + }, + "extensionRangeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExtensionRangeOrBuilder" + } + }, + "oneofDeclList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OneofDescriptorProto" + } + }, + "oneofDeclOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OneofDescriptorProtoOrBuilder" + } + }, + "reservedRangeCount": { + "type": "integer", + "format": "int32" + }, + "reservedRangeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ReservedRangeOrBuilder" + } + }, + "reservedNameCount": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "EditionDefault": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "value": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "edition": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EditionDefault" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEditionDefault" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "valueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EditionDefaultOrBuilder": { + "type": "object", + "properties": { + "value": { + "type": "string" + }, + "edition": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "valueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "EntityGitDetails1": { + "type": "object", + "properties": { + "valid": { + "type": "boolean", + "description": "Indicates if the Entity is valid" + }, + "invalidYaml": { + "type": "string", + "description": "This has the Git File content if the entity is invalid" + } + }, + "description": "This contains Validity Details of the Entity" + }, + "EnumDescriptor": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int32" + }, + "proto": { + "$ref": "#/components/schemas/EnumDescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/EnumOptions" + }, + "fullName": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "containingType": { + "$ref": "#/components/schemas/Descriptor" + }, + "values": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumValueDescriptor" + } + }, + "name": { + "type": "string" + }, + "closed": { + "type": "boolean" + } + } + }, + "EnumDescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "name": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/EnumOptions" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EnumDescriptorProto" + }, + "reservedRangeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumReservedRange" + } + }, + "reservedNameList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEnumDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/EnumOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "reservedRangeCount": { + "type": "integer", + "format": "int32" + }, + "reservedRangeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumReservedRangeOrBuilder" + } + }, + "reservedNameCount": { + "type": "integer", + "format": "int32" + }, + "valueCount": { + "type": "integer", + "format": "int32" + }, + "valueOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumValueDescriptorProtoOrBuilder" + } + }, + "valueList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumValueDescriptorProto" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EnumDescriptorProtoOrBuilder": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "options": { + "$ref": "#/components/schemas/EnumOptions" + }, + "reservedRangeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumReservedRange" + } + }, + "reservedNameList": { + "type": "array", + "items": { + "type": "string" + } + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/EnumOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "reservedRangeCount": { + "type": "integer", + "format": "int32" + }, + "reservedRangeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumReservedRangeOrBuilder" + } + }, + "reservedNameCount": { + "type": "integer", + "format": "int32" + }, + "valueCount": { + "type": "integer", + "format": "int32" + }, + "valueOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumValueDescriptorProtoOrBuilder" + } + }, + "valueList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumValueDescriptorProto" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "EnumOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EnumOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEnumOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "deprecatedLegacyJsonFieldConflicts": { + "type": "boolean" + }, + "allowAlias": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EnumOptionsOrBuilder": { + "type": "object", + "properties": { + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "deprecatedLegacyJsonFieldConflicts": { + "type": "boolean" + }, + "allowAlias": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "EnumReservedRange": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "start": { + "type": "integer", + "format": "int32" + }, + "end": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EnumReservedRange" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEnumReservedRange" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EnumReservedRangeOrBuilder": { + "type": "object", + "properties": { + "start": { + "type": "integer", + "format": "int32" + }, + "end": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "EnumValueDescriptor": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int32" + }, + "proto": { + "$ref": "#/components/schemas/EnumValueDescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/EnumValueOptions" + }, + "fullName": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumDescriptor" + }, + "name": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "number": { + "type": "integer", + "format": "int32" + } + } + }, + "EnumValueDescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "name": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/EnumValueOptions" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EnumValueDescriptorProto" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEnumValueDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/EnumValueOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EnumValueDescriptorProtoOrBuilder": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int32" + }, + "options": { + "$ref": "#/components/schemas/EnumValueOptions" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/EnumValueOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "EnumValueOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EnumValueOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEnumValueOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "debugRedact": { + "type": "boolean" + }, + "featureSupport": { + "$ref": "#/components/schemas/FeatureSupport" + }, + "featureSupportOrBuilder": { + "$ref": "#/components/schemas/FeatureSupportOrBuilder" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EnumValueOptionsOrBuilder": { + "type": "object", + "properties": { + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "debugRedact": { + "type": "boolean" + }, + "featureSupport": { + "$ref": "#/components/schemas/FeatureSupport" + }, + "featureSupportOrBuilder": { + "$ref": "#/components/schemas/FeatureSupportOrBuilder" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "EnvironmentGroup": { + "type": "object", + "properties": { + "envGroup": { + "$ref": "#/components/schemas/EnvironmentGroupResponse" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + } + }, + "description": "This is the view of Environment Group Entity defined in Harness" + }, + "EnvironmentGroupResponse": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier for the Entity." + }, + "name": { + "type": "string", + "description": "Name of the Entity" + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "color": { + "type": "string", + "description": "Color Code for the Entity" + }, + "deleted": { + "type": "boolean", + "description": "Deletion status for Entity" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "envIdentifiers": { + "type": "array", + "description": "Environment Identifiers linked with Environment Group Identity", + "items": { + "type": "string", + "description": "Environment Identifiers linked with Environment Group Identity" + } + }, + "envResponse": { + "type": "array", + "description": "Info of Environments linked with Entity", + "items": { + "$ref": "#/components/schemas/EnvironmentResponse1" + } + }, + "yaml": { + "type": "string", + "description": "Yaml of the Environment Group" + }, + "gitDetails": { + "$ref": "#/components/schemas/EntityGitDetails1" + } + }, + "description": "This is the Environment Group Entity defined in Harness" + }, + "EnvironmentResponse1": { + "type": "object", + "properties": { + "environment": { + "$ref": "#/components/schemas/EnvironmentResponseDetails" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/EntityGitDetails1" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + } + }, + "EnvironmentResponseDetails": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "PreProduction", + "Production" + ] + }, + "deleted": { + "type": "boolean" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "yaml": { + "type": "string" + } + }, + "description": "This is the Environment entity defined in Harness" + }, + "ExtensionRange": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/ExtensionRangeOptions" + }, + "start": { + "type": "integer", + "format": "int32" + }, + "end": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExtensionRange" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExtensionRange" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/ExtensionRangeOptionsOrBuilder" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExtensionRangeOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExtensionRangeOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExtensionRangeOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "declarationCount": { + "type": "integer", + "format": "int32" + }, + "declarationList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Declaration" + } + }, + "declarationOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DeclarationOrBuilder" + } + }, + "verification": { + "type": "string", + "enum": [ + "DECLARATION", + "UNVERIFIED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExtensionRangeOptionsOrBuilder": { + "type": "object", + "properties": { + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "declarationCount": { + "type": "integer", + "format": "int32" + }, + "declarationList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Declaration" + } + }, + "declarationOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DeclarationOrBuilder" + } + }, + "verification": { + "type": "string", + "enum": [ + "DECLARATION", + "UNVERIFIED" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ExtensionRangeOrBuilder": { + "type": "object", + "properties": { + "options": { + "$ref": "#/components/schemas/ExtensionRangeOptions" + }, + "start": { + "type": "integer", + "format": "int32" + }, + "end": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/ExtensionRangeOptionsOrBuilder" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FeatureSet": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FeatureSet" + }, + "enumType": { + "type": "string", + "enum": [ + "ENUM_TYPE_UNKNOWN", + "OPEN", + "CLOSED" + ] + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFeatureSet" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "messageEncoding": { + "type": "string", + "enum": [ + "MESSAGE_ENCODING_UNKNOWN", + "LENGTH_PREFIXED", + "DELIMITED" + ] + }, + "utf8Validation": { + "type": "string", + "enum": [ + "UTF8_VALIDATION_UNKNOWN", + "VERIFY", + "NONE" + ] + }, + "fieldPresence": { + "type": "string", + "enum": [ + "FIELD_PRESENCE_UNKNOWN", + "EXPLICIT", + "IMPLICIT", + "LEGACY_REQUIRED" + ] + }, + "repeatedFieldEncoding": { + "type": "string", + "enum": [ + "REPEATED_FIELD_ENCODING_UNKNOWN", + "PACKED", + "EXPANDED" + ] + }, + "jsonFormat": { + "type": "string", + "enum": [ + "JSON_FORMAT_UNKNOWN", + "ALLOW", + "LEGACY_BEST_EFFORT" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FeatureSetOrBuilder": { + "type": "object", + "properties": { + "enumType": { + "type": "string", + "enum": [ + "ENUM_TYPE_UNKNOWN", + "OPEN", + "CLOSED" + ] + }, + "messageEncoding": { + "type": "string", + "enum": [ + "MESSAGE_ENCODING_UNKNOWN", + "LENGTH_PREFIXED", + "DELIMITED" + ] + }, + "utf8Validation": { + "type": "string", + "enum": [ + "UTF8_VALIDATION_UNKNOWN", + "VERIFY", + "NONE" + ] + }, + "fieldPresence": { + "type": "string", + "enum": [ + "FIELD_PRESENCE_UNKNOWN", + "EXPLICIT", + "IMPLICIT", + "LEGACY_REQUIRED" + ] + }, + "repeatedFieldEncoding": { + "type": "string", + "enum": [ + "REPEATED_FIELD_ENCODING_UNKNOWN", + "PACKED", + "EXPANDED" + ] + }, + "jsonFormat": { + "type": "string", + "enum": [ + "JSON_FORMAT_UNKNOWN", + "ALLOW", + "LEGACY_BEST_EFFORT" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FeatureSupport": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FeatureSupport" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFeatureSupport" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "editionIntroduced": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "editionDeprecated": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "deprecationWarning": { + "type": "string" + }, + "deprecationWarningBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "editionRemoved": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FeatureSupportOrBuilder": { + "type": "object", + "properties": { + "editionIntroduced": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "editionDeprecated": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "deprecationWarning": { + "type": "string" + }, + "deprecationWarningBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "editionRemoved": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FieldDescriptor": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int32" + }, + "proto": { + "$ref": "#/components/schemas/FieldDescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/FieldOptions" + }, + "fullName": { + "type": "string" + }, + "jsonName": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "extensionScope": { + "$ref": "#/components/schemas/Descriptor" + }, + "type": { + "type": "string", + "enum": [ + "DOUBLE", + "FLOAT", + "INT64", + "UINT64", + "INT32", + "FIXED64", + "FIXED32", + "BOOL", + "STRING", + "GROUP", + "MESSAGE", + "BYTES", + "UINT32", + "ENUM", + "SFIXED32", + "SFIXED64", + "SINT32", + "SINT64" + ] + }, + "containingType": { + "$ref": "#/components/schemas/Descriptor" + }, + "messageType": { + "$ref": "#/components/schemas/Descriptor" + }, + "containingOneof": { + "$ref": "#/components/schemas/OneofDescriptor" + }, + "enumType": { + "$ref": "#/components/schemas/EnumDescriptor" + }, + "defaultValue": { + "type": "object" + }, + "javaType": { + "type": "string", + "enum": [ + "INT", + "LONG", + "FLOAT", + "DOUBLE", + "BOOLEAN", + "STRING", + "BYTE_STRING", + "ENUM", + "MESSAGE" + ] + }, + "name": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int32" + }, + "required": { + "type": "boolean" + }, + "optional": { + "type": "boolean" + }, + "repeated": { + "type": "boolean" + }, + "mapField": { + "type": "boolean" + }, + "extension": { + "type": "boolean" + }, + "liteType": { + "type": "string", + "enum": [ + "DOUBLE", + "FLOAT", + "INT64", + "UINT64", + "INT32", + "FIXED64", + "FIXED32", + "BOOL", + "STRING", + "GROUP", + "MESSAGE", + "BYTES", + "UINT32", + "ENUM", + "SFIXED32", + "SFIXED64", + "SINT32", + "SINT64" + ] + }, + "packable": { + "type": "boolean" + }, + "liteJavaType": { + "type": "string", + "enum": [ + "INT", + "LONG", + "FLOAT", + "DOUBLE", + "BOOLEAN", + "STRING", + "BYTE_STRING", + "ENUM", + "MESSAGE" + ] + }, + "realContainingOneof": { + "$ref": "#/components/schemas/OneofDescriptor" + }, + "packed": { + "type": "boolean" + } + } + }, + "FieldDescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "label": { + "type": "string", + "enum": [ + "LABEL_OPTIONAL", + "LABEL_REPEATED", + "LABEL_REQUIRED" + ] + }, + "name": { + "type": "string" + }, + "typeName": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "TYPE_DOUBLE", + "TYPE_FLOAT", + "TYPE_INT64", + "TYPE_UINT64", + "TYPE_INT32", + "TYPE_FIXED64", + "TYPE_FIXED32", + "TYPE_BOOL", + "TYPE_STRING", + "TYPE_GROUP", + "TYPE_MESSAGE", + "TYPE_BYTES", + "TYPE_UINT32", + "TYPE_ENUM", + "TYPE_SFIXED32", + "TYPE_SFIXED64", + "TYPE_SINT32", + "TYPE_SINT64" + ] + }, + "defaultValue": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/FieldOptions" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FieldDescriptorProto" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFieldDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/FieldOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "jsonName": { + "type": "string" + }, + "proto3Optional": { + "type": "boolean" + }, + "oneofIndex": { + "type": "integer", + "format": "int32" + }, + "extendee": { + "type": "string" + }, + "extendeeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "defaultValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "jsonNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "typeNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FieldDescriptorProtoOrBuilder": { + "type": "object", + "properties": { + "label": { + "type": "string", + "enum": [ + "LABEL_OPTIONAL", + "LABEL_REPEATED", + "LABEL_REQUIRED" + ] + }, + "name": { + "type": "string" + }, + "typeName": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "TYPE_DOUBLE", + "TYPE_FLOAT", + "TYPE_INT64", + "TYPE_UINT64", + "TYPE_INT32", + "TYPE_FIXED64", + "TYPE_FIXED32", + "TYPE_BOOL", + "TYPE_STRING", + "TYPE_GROUP", + "TYPE_MESSAGE", + "TYPE_BYTES", + "TYPE_UINT32", + "TYPE_ENUM", + "TYPE_SFIXED32", + "TYPE_SFIXED64", + "TYPE_SINT32", + "TYPE_SINT64" + ] + }, + "defaultValue": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int32" + }, + "options": { + "$ref": "#/components/schemas/FieldOptions" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/FieldOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "jsonName": { + "type": "string" + }, + "proto3Optional": { + "type": "boolean" + }, + "oneofIndex": { + "type": "integer", + "format": "int32" + }, + "extendee": { + "type": "string" + }, + "extendeeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "defaultValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "jsonNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "typeNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FieldOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "retention": { + "type": "string", + "enum": [ + "RETENTION_UNKNOWN", + "RETENTION_RUNTIME", + "RETENTION_SOURCE" + ] + }, + "editionDefaultsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EditionDefaultOrBuilder" + } + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FieldOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFieldOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "packed": { + "type": "boolean" + }, + "ctype": { + "type": "string", + "enum": [ + "STRING", + "CORD", + "STRING_PIECE" + ] + }, + "jstype": { + "type": "string", + "enum": [ + "JS_NORMAL", + "JS_STRING", + "JS_NUMBER" + ] + }, + "lazy": { + "type": "boolean" + }, + "unverifiedLazy": { + "type": "boolean" + }, + "weak": { + "type": "boolean" + }, + "debugRedact": { + "type": "boolean" + }, + "targetsList": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "TARGET_TYPE_UNKNOWN", + "TARGET_TYPE_FILE", + "TARGET_TYPE_EXTENSION_RANGE", + "TARGET_TYPE_MESSAGE", + "TARGET_TYPE_FIELD", + "TARGET_TYPE_ONEOF", + "TARGET_TYPE_ENUM", + "TARGET_TYPE_ENUM_ENTRY", + "TARGET_TYPE_SERVICE", + "TARGET_TYPE_METHOD" + ] + } + }, + "targetsCount": { + "type": "integer", + "format": "int32" + }, + "editionDefaultsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EditionDefault" + } + }, + "editionDefaultsCount": { + "type": "integer", + "format": "int32" + }, + "featureSupport": { + "$ref": "#/components/schemas/FeatureSupport" + }, + "featureSupportOrBuilder": { + "$ref": "#/components/schemas/FeatureSupportOrBuilder" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FieldOptionsOrBuilder": { + "type": "object", + "properties": { + "retention": { + "type": "string", + "enum": [ + "RETENTION_UNKNOWN", + "RETENTION_RUNTIME", + "RETENTION_SOURCE" + ] + }, + "editionDefaultsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EditionDefaultOrBuilder" + } + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "packed": { + "type": "boolean" + }, + "ctype": { + "type": "string", + "enum": [ + "STRING", + "CORD", + "STRING_PIECE" + ] + }, + "jstype": { + "type": "string", + "enum": [ + "JS_NORMAL", + "JS_STRING", + "JS_NUMBER" + ] + }, + "lazy": { + "type": "boolean" + }, + "unverifiedLazy": { + "type": "boolean" + }, + "weak": { + "type": "boolean" + }, + "debugRedact": { + "type": "boolean" + }, + "targetsList": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "TARGET_TYPE_UNKNOWN", + "TARGET_TYPE_FILE", + "TARGET_TYPE_EXTENSION_RANGE", + "TARGET_TYPE_MESSAGE", + "TARGET_TYPE_FIELD", + "TARGET_TYPE_ONEOF", + "TARGET_TYPE_ENUM", + "TARGET_TYPE_ENUM_ENTRY", + "TARGET_TYPE_SERVICE", + "TARGET_TYPE_METHOD" + ] + } + }, + "targetsCount": { + "type": "integer", + "format": "int32" + }, + "editionDefaultsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EditionDefault" + } + }, + "editionDefaultsCount": { + "type": "integer", + "format": "int32" + }, + "featureSupport": { + "$ref": "#/components/schemas/FeatureSupport" + }, + "featureSupportOrBuilder": { + "$ref": "#/components/schemas/FeatureSupportOrBuilder" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FileDescriptor": { + "type": "object", + "properties": { + "proto": { + "$ref": "#/components/schemas/FileDescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/FileOptions" + }, + "messageTypes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Descriptor" + } + }, + "enumTypes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptor" + } + }, + "services": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDescriptor" + } + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptor" + } + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FileDescriptor" + } + }, + "publicDependencies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FileDescriptor" + } + }, + "name": { + "type": "string" + }, + "package": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "fullName": { + "type": "string" + } + } + }, + "FileDescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "name": { + "type": "string" + }, + "package": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/FileOptions" + }, + "edition": { + "type": "string", + "enum": [ + "EDITION_UNKNOWN", + "EDITION_LEGACY", + "EDITION_PROTO2", + "EDITION_PROTO3", + "EDITION_2023", + "EDITION_2024", + "EDITION_1_TEST_ONLY", + "EDITION_2_TEST_ONLY", + "EDITION_99997_TEST_ONLY", + "EDITION_99998_TEST_ONLY", + "EDITION_99999_TEST_ONLY", + "EDITION_MAX" + ] + }, + "publicDependencyCount": { + "type": "integer", + "format": "int32" + }, + "dependencyCount": { + "type": "integer", + "format": "int32" + }, + "messageTypeCount": { + "type": "integer", + "format": "int32" + }, + "serviceCount": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FileDescriptorProto" + }, + "syntax": { + "type": "string" + }, + "enumTypeCount": { + "type": "integer", + "format": "int32" + }, + "extensionCount": { + "type": "integer", + "format": "int32" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFileDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "packageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "dependencyList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "publicDependencyList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "weakDependencyList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "weakDependencyCount": { + "type": "integer", + "format": "int32" + }, + "messageTypeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DescriptorProto" + } + }, + "messageTypeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DescriptorProtoOrBuilder" + } + }, + "enumTypeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptorProto" + } + }, + "enumTypeOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnumDescriptorProtoOrBuilder" + } + }, + "serviceList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDescriptorProto" + } + }, + "serviceOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDescriptorProtoOrBuilder" + } + }, + "extensionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProto" + } + }, + "extensionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptorProtoOrBuilder" + } + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/FileOptionsOrBuilder" + }, + "sourceCodeInfo": { + "$ref": "#/components/schemas/SourceCodeInfo" + }, + "sourceCodeInfoOrBuilder": { + "$ref": "#/components/schemas/SourceCodeInfoOrBuilder" + }, + "syntaxBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FileOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "javaStringCheckUtf8": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FileOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFileOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "javaPackageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "javaOuterClassname": { + "type": "string" + }, + "javaOuterClassnameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "javaMultipleFiles": { + "type": "boolean" + }, + "javaGenerateEqualsAndHash": { + "type": "boolean" + }, + "optimizeFor": { + "type": "string", + "enum": [ + "SPEED", + "CODE_SIZE", + "LITE_RUNTIME" + ] + }, + "goPackage": { + "type": "string" + }, + "javaPackage": { + "type": "string" + }, + "goPackageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "ccGenericServices": { + "type": "boolean" + }, + "javaGenericServices": { + "type": "boolean" + }, + "pyGenericServices": { + "type": "boolean" + }, + "deprecated": { + "type": "boolean" + }, + "ccEnableArenas": { + "type": "boolean" + }, + "objcClassPrefix": { + "type": "string" + }, + "objcClassPrefixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "csharpNamespace": { + "type": "string" + }, + "csharpNamespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "swiftPrefix": { + "type": "string" + }, + "swiftPrefixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "phpClassPrefix": { + "type": "string" + }, + "phpClassPrefixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "phpNamespace": { + "type": "string" + }, + "phpNamespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "phpMetadataNamespace": { + "type": "string" + }, + "phpMetadataNamespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "rubyPackage": { + "type": "string" + }, + "rubyPackageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FileOptionsOrBuilder": { + "type": "object", + "properties": { + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "javaStringCheckUtf8": { + "type": "boolean" + }, + "javaPackageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "javaOuterClassname": { + "type": "string" + }, + "javaOuterClassnameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "javaMultipleFiles": { + "type": "boolean" + }, + "javaGenerateEqualsAndHash": { + "type": "boolean" + }, + "optimizeFor": { + "type": "string", + "enum": [ + "SPEED", + "CODE_SIZE", + "LITE_RUNTIME" + ] + }, + "goPackage": { + "type": "string" + }, + "javaPackage": { + "type": "string" + }, + "goPackageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "ccGenericServices": { + "type": "boolean" + }, + "javaGenericServices": { + "type": "boolean" + }, + "pyGenericServices": { + "type": "boolean" + }, + "deprecated": { + "type": "boolean" + }, + "ccEnableArenas": { + "type": "boolean" + }, + "objcClassPrefix": { + "type": "string" + }, + "objcClassPrefixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "csharpNamespace": { + "type": "string" + }, + "csharpNamespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "swiftPrefix": { + "type": "string" + }, + "swiftPrefixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "phpClassPrefix": { + "type": "string" + }, + "phpClassPrefixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "phpNamespace": { + "type": "string" + }, + "phpNamespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "phpMetadataNamespace": { + "type": "string" + }, + "phpMetadataNamespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "rubyPackage": { + "type": "string" + }, + "rubyPackageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "GovernanceMetadata2": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "detailsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicySetMetadata1" + } + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "detailsCount": { + "type": "integer", + "format": "int32" + }, + "detailsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicySetMetadataOrBuilder" + } + }, + "entityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "actionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "deny": { + "type": "boolean" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "message": { + "type": "string" + }, + "id": { + "type": "string" + }, + "type": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string" + }, + "entity": { + "type": "string" + }, + "action": { + "type": "string" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/GovernanceMetadata2" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserGovernanceMetadata" + }, + "initialized": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + }, + "description": "GovernanceMetadata for OPA evaluation" + }, + "Location": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "leadingDetachedCommentsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "pathCount": { + "type": "integer", + "format": "int32" + }, + "spanList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "spanCount": { + "type": "integer", + "format": "int32" + }, + "leadingComments": { + "type": "string" + }, + "leadingCommentsBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "trailingComments": { + "type": "string" + }, + "trailingCommentsBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "leadingDetachedCommentsCount": { + "type": "integer", + "format": "int32" + }, + "pathList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Location" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserLocation" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "LocationOrBuilder": { + "type": "object", + "properties": { + "leadingDetachedCommentsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "pathCount": { + "type": "integer", + "format": "int32" + }, + "spanList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "spanCount": { + "type": "integer", + "format": "int32" + }, + "leadingComments": { + "type": "string" + }, + "leadingCommentsBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "trailingComments": { + "type": "string" + }, + "trailingCommentsBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "leadingDetachedCommentsCount": { + "type": "integer", + "format": "int32" + }, + "pathList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Message": { + "type": "object", + "properties": { + "parserForType": { + "$ref": "#/components/schemas/ParserMessage" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/MessageLite" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + } + } + }, + "MessageLite": { + "type": "object", + "properties": { + "parserForType": { + "$ref": "#/components/schemas/ParserMessageLite" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/MessageLite" + } + } + }, + "MessageOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/MessageOptions" + }, + "messageSetWireFormat": { + "type": "boolean" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserMessageOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "mapEntry": { + "type": "boolean" + }, + "noStandardDescriptorAccessor": { + "type": "boolean" + }, + "deprecatedLegacyJsonFieldConflicts": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "MessageOptionsOrBuilder": { + "type": "object", + "properties": { + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "messageSetWireFormat": { + "type": "boolean" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "mapEntry": { + "type": "boolean" + }, + "noStandardDescriptorAccessor": { + "type": "boolean" + }, + "deprecatedLegacyJsonFieldConflicts": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "MethodDescriptor": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int32" + }, + "proto": { + "$ref": "#/components/schemas/MethodDescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/MethodOptions" + }, + "fullName": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "service": { + "$ref": "#/components/schemas/ServiceDescriptor" + }, + "inputType": { + "$ref": "#/components/schemas/Descriptor" + }, + "outputType": { + "$ref": "#/components/schemas/Descriptor" + }, + "clientStreaming": { + "type": "boolean" + }, + "serverStreaming": { + "type": "boolean" + }, + "name": { + "type": "string" + } + } + }, + "MethodDescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "inputTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "outputTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "clientStreaming": { + "type": "boolean" + }, + "serverStreaming": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/MethodOptions" + }, + "outputType": { + "type": "string" + }, + "inputType": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/MethodDescriptorProto" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserMethodDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/MethodOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "MethodDescriptorProtoOrBuilder": { + "type": "object", + "properties": { + "inputTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "outputTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "clientStreaming": { + "type": "boolean" + }, + "serverStreaming": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "options": { + "$ref": "#/components/schemas/MethodOptions" + }, + "outputType": { + "type": "string" + }, + "inputType": { + "type": "string" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/MethodOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "MethodOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "idempotencyLevel": { + "type": "string", + "enum": [ + "IDEMPOTENCY_UNKNOWN", + "NO_SIDE_EFFECTS", + "IDEMPOTENT" + ] + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/MethodOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserMethodOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "MethodOptionsOrBuilder": { + "type": "object", + "properties": { + "idempotencyLevel": { + "type": "string", + "enum": [ + "IDEMPOTENCY_UNKNOWN", + "NO_SIDE_EFFECTS", + "IDEMPOTENT" + ] + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "NamePart": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "namePart": { + "type": "string" + }, + "namePartBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "isExtension": { + "type": "boolean" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/NamePart" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserNamePart" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "NamePartOrBuilder": { + "type": "object", + "properties": { + "namePart": { + "type": "string" + }, + "namePartBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "isExtension": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "OneofDescriptor": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int32" + }, + "proto": { + "$ref": "#/components/schemas/OneofDescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/OneofOptions" + }, + "fullName": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "containingType": { + "$ref": "#/components/schemas/Descriptor" + }, + "fieldCount": { + "type": "integer", + "format": "int32" + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FieldDescriptor" + } + }, + "name": { + "type": "string" + } + } + }, + "OneofDescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "name": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/OneofOptions" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/OneofDescriptorProto" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserOneofDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/OneofOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "OneofDescriptorProtoOrBuilder": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "options": { + "$ref": "#/components/schemas/OneofOptions" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/OneofOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "OneofOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/OneofOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserOneofOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "OneofOptionsOrBuilder": { + "type": "object", + "properties": { + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Parser": { + "type": "object" + }, + "ParserDeclaration": { + "type": "object" + }, + "ParserDescriptorProto": { + "type": "object" + }, + "ParserEditionDefault": { + "type": "object" + }, + "ParserEnumDescriptorProto": { + "type": "object" + }, + "ParserEnumOptions": { + "type": "object" + }, + "ParserEnumReservedRange": { + "type": "object" + }, + "ParserEnumValueDescriptorProto": { + "type": "object" + }, + "ParserEnumValueOptions": { + "type": "object" + }, + "ParserExtensionRange": { + "type": "object" + }, + "ParserExtensionRangeOptions": { + "type": "object" + }, + "ParserFeatureSet": { + "type": "object" + }, + "ParserFeatureSupport": { + "type": "object" + }, + "ParserFieldDescriptorProto": { + "type": "object" + }, + "ParserFieldOptions": { + "type": "object" + }, + "ParserFileDescriptorProto": { + "type": "object" + }, + "ParserFileOptions": { + "type": "object" + }, + "ParserGovernanceMetadata": { + "type": "object" + }, + "ParserLocation": { + "type": "object" + }, + "ParserMessage": { + "type": "object" + }, + "ParserMessageLite": { + "type": "object" + }, + "ParserMessageOptions": { + "type": "object" + }, + "ParserMethodDescriptorProto": { + "type": "object" + }, + "ParserMethodOptions": { + "type": "object" + }, + "ParserNamePart": { + "type": "object" + }, + "ParserOneofDescriptorProto": { + "type": "object" + }, + "ParserOneofOptions": { + "type": "object" + }, + "ParserPolicyMetadata": { + "type": "object" + }, + "ParserPolicySetMetadata": { + "type": "object" + }, + "ParserReservedRange": { + "type": "object" + }, + "ParserServiceDescriptorProto": { + "type": "object" + }, + "ParserServiceOptions": { + "type": "object" + }, + "ParserSourceCodeInfo": { + "type": "object" + }, + "ParserUninterpretedOption": { + "type": "object" + }, + "PolicyMetadata1": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "updated": { + "type": "integer", + "format": "int64" + }, + "errorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyId": { + "type": "string" + }, + "policyName": { + "type": "string" + }, + "policyNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "denyMessagesList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "denyMessagesCount": { + "type": "integer", + "format": "int32" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "severity": { + "type": "string" + }, + "error": { + "type": "string" + }, + "status": { + "type": "string" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PolicyMetadata1" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicyMetadata" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PolicyMetadataOrBuilder": { + "type": "object", + "properties": { + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyName": { + "type": "string" + }, + "policyId": { + "type": "string" + }, + "policyIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "denyMessagesList": { + "type": "array", + "items": { + "type": "string" + } + }, + "denyMessagesCount": { + "type": "integer", + "format": "int32" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "errorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severity": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "status": { + "type": "string" + }, + "error": { + "type": "string" + }, + "orgId": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "accountId": { + "type": "string" + }, + "projectId": { + "type": "string" + }, + "updated": { + "type": "integer", + "format": "int64" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "PolicySetMetadata1": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "deny": { + "type": "boolean" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadata1" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PolicySetMetadata1" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicySetMetadata" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PolicySetMetadataOrBuilder": { + "type": "object", + "properties": { + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "deny": { + "type": "boolean" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadata1" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ProtocolStringList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "ReservedRange": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "start": { + "type": "integer", + "format": "int32" + }, + "end": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ReservedRange" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserReservedRange" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ReservedRangeOrBuilder": { + "type": "object", + "properties": { + "start": { + "type": "integer", + "format": "int32" + }, + "end": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ResponseDTOEnvironmentGroup": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnvironmentGroup" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceDescriptor": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int32" + }, + "proto": { + "$ref": "#/components/schemas/ServiceDescriptorProto" + }, + "options": { + "$ref": "#/components/schemas/ServiceOptions" + }, + "fullName": { + "type": "string" + }, + "file": { + "$ref": "#/components/schemas/FileDescriptor" + }, + "methods": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MethodDescriptor" + } + }, + "name": { + "type": "string" + } + } + }, + "ServiceDescriptorProto": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "name": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "options": { + "$ref": "#/components/schemas/ServiceOptions" + }, + "methodList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MethodDescriptorProto" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ServiceDescriptorProto" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserServiceDescriptorProto" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/ServiceOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "methodCount": { + "type": "integer", + "format": "int32" + }, + "methodOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MethodDescriptorProtoOrBuilder" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ServiceDescriptorProtoOrBuilder": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "options": { + "$ref": "#/components/schemas/ServiceOptions" + }, + "methodList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MethodDescriptorProto" + } + }, + "optionsOrBuilder": { + "$ref": "#/components/schemas/ServiceOptionsOrBuilder" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "methodCount": { + "type": "integer", + "format": "int32" + }, + "methodOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MethodDescriptorProtoOrBuilder" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ServiceOptions": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ServiceOptions" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserServiceOptions" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFieldsRaw": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ServiceOptionsOrBuilder": { + "type": "object", + "properties": { + "features": { + "$ref": "#/components/schemas/FeatureSet" + }, + "deprecated": { + "type": "boolean" + }, + "featuresOrBuilder": { + "$ref": "#/components/schemas/FeatureSetOrBuilder" + }, + "uninterpretedOptionList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOption" + } + }, + "uninterpretedOptionCount": { + "type": "integer", + "format": "int32" + }, + "uninterpretedOptionOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UninterpretedOptionOrBuilder" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "SourceCodeInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/SourceCodeInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserSourceCodeInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "locationCount": { + "type": "integer", + "format": "int32" + }, + "locationOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LocationOrBuilder" + } + }, + "locationList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Location" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "SourceCodeInfoOrBuilder": { + "type": "object", + "properties": { + "locationCount": { + "type": "integer", + "format": "int32" + }, + "locationOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LocationOrBuilder" + } + }, + "locationList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Location" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "UninterpretedOption": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "stringValue": { + "$ref": "#/components/schemas/ByteString" + }, + "doubleValue": { + "type": "number", + "format": "double" + }, + "nameCount": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/UninterpretedOption" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserUninterpretedOption" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "nameOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NamePartOrBuilder" + } + }, + "identifierValue": { + "type": "string" + }, + "identifierValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "positiveIntValue": { + "type": "integer", + "format": "int64" + }, + "negativeIntValue": { + "type": "integer", + "format": "int64" + }, + "aggregateValue": { + "type": "string" + }, + "aggregateValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nameList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NamePart" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "UninterpretedOptionOrBuilder": { + "type": "object", + "properties": { + "stringValue": { + "$ref": "#/components/schemas/ByteString" + }, + "doubleValue": { + "type": "number", + "format": "double" + }, + "nameCount": { + "type": "integer", + "format": "int32" + }, + "nameOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NamePartOrBuilder" + } + }, + "identifierValue": { + "type": "string" + }, + "identifierValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "positiveIntValue": { + "type": "integer", + "format": "int64" + }, + "negativeIntValue": { + "type": "integer", + "format": "int64" + }, + "aggregateValue": { + "type": "string" + }, + "aggregateValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nameList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NamePart" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "UnknownFieldSet": { + "type": "object", + "properties": { + "empty": { + "type": "boolean" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "parserForType": { + "$ref": "#/components/schemas/Parser" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "serializedSizeAsMessageSet": { + "type": "integer", + "format": "int32" + } + } + }, + "EnvironmentGroupRequest": { + "required": [ + "yaml" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "pattern": "^[a-zA-Z_][0-9a-zA-Z_]{0,127}$", + "type": "string", + "description": "Identifier of the Environment Group." + }, + "color": { + "type": "string", + "description": "Color of the Environment Group." + }, + "yaml": { + "type": "string", + "description": "Yaml of the Environment Group." + } + }, + "description": "This is the EnvironmentGroupRequest entity defined in Harness" + }, + "EnvironmentGroupDelete": { + "type": "object", + "properties": { + "deleted": { + "type": "boolean", + "description": "Value true, when the Entity is deleted" + }, + "accountId": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier for the Entity." + } + }, + "description": "This is the view of Environment Group Delete Response defined in Harness" + }, + "ResponseDTOEnvironmentGroupDelete": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnvironmentGroupDelete" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseEnvironmentGroup": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnvironmentGroup" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseEnvironmentGroup": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseEnvironmentGroup" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "FilterProperties": { + "required": [ + "filterType" + ], + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "description": "This specifies the corresponding Entity of the filter.", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + "description": "Properties of the Filter entity defined in Harness.", + "discriminator": { + "propertyName": "filterType" + } + }, + "AppDynamicsConnectorDTO": { + "required": [ + "accountname", + "controllerUrl" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "accountname": { + "type": "string" + }, + "controllerUrl": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "passwordRef": { + "type": "string" + }, + "clientSecretRef": { + "type": "string" + }, + "clientId": { + "type": "string" + }, + "authType": { + "type": "string", + "enum": [ + "UsernamePassword", + "ApiClientToken" + ] + } + } + } + ] + }, + "ArtifactoryAuthCredentials": { + "type": "object", + "description": "This entity contains the details of credentials for Artifactory Authentication" + }, + "ArtifactoryAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "Anonymous" + ] + }, + "spec": { + "$ref": "#/components/schemas/ArtifactoryAuthCredentials" + } + }, + "description": "This entity contains the details for Artifactory Authentication" + }, + "ArtifactoryConnector": { + "required": [ + "artifactoryServerUrl" + ], + "type": "object", + "description": "This entity contains the details of the Artifactory Connectors", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "artifactoryServerUrl": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/ArtifactoryAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "ArtifactoryUsernamePasswordAuth": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the Artifactory Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactoryAuthCredentials" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "AwsCodeCommitAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "HTTPS" + ] + }, + "spec": { + "$ref": "#/components/schemas/AwsCodeCommitCredentials" + } + }, + "description": "This contains details of the AWS Code Commit credentials" + }, + "AwsCodeCommitConnector": { + "required": [ + "authentication", + "type", + "url" + ], + "type": "object", + "description": "This contains details of the AWS Code Commit connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "authentication": { + "$ref": "#/components/schemas/AwsCodeCommitAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "Repo", + "Region" + ] + } + } + } + ] + }, + "AwsCodeCommitCredentials": { + "type": "object", + "description": "This interface for details of the AWS Code Commit credentials" + }, + "AwsCodeCommitHttpsCredentials": { + "required": [ + "spec", + "type" + ], + "type": "object", + "description": "This contains details of the AWS Code Commit credentials used via HTTPS connections", + "allOf": [ + { + "$ref": "#/components/schemas/AwsCodeCommitCredentials" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "AWSCredentials" + ] + }, + "spec": { + "$ref": "#/components/schemas/AwsCodeCommitHttpsCredentialsSpec" + } + } + } + ] + }, + "AwsCodeCommitHttpsCredentialsSpec": { + "type": "object", + "description": "This contains details of the AWS Code Commit credentials specs such as references of username and password used via HTTPS connections" + }, + "AwsCodeCommitSecretKeyAccessKey": { + "required": [ + "secretKeyRef" + ], + "type": "object", + "description": "This contains details of the AWS Code Commit secret references", + "allOf": [ + { + "$ref": "#/components/schemas/AwsCodeCommitHttpsCredentialsSpec" + }, + { + "type": "object", + "properties": { + "accessKey": { + "type": "string" + }, + "accessKeyRef": { + "type": "string" + }, + "secretKeyRef": { + "type": "string" + } + } + } + ] + }, + "AwsConnector": { + "required": [ + "credential" + ], + "type": "object", + "description": "This contains details of the AWS connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/AwsCredential" + }, + "awsSdkClientBackOffStrategyOverride": { + "$ref": "#/components/schemas/AwsSdkClientBackoffStrategy" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "AwsCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "crossAccountAccess": { + "$ref": "#/components/schemas/CrossAccountAccess" + }, + "type": { + "type": "string", + "enum": [ + "InheritFromDelegate", + "ManualConfig", + "Irsa", + "OidcAuthentication" + ] + }, + "spec": { + "$ref": "#/components/schemas/AwsCredentialSpec" + }, + "region": { + "type": "string" + } + }, + "description": "This contains details of the AWS connector credential" + }, + "AwsCredentialSpec": { + "type": "object", + "description": "This contains AWS connector credential spec" + }, + "AwsCurAttributes": { + "required": [ + "reportName", + "s3BucketName" + ], + "type": "object", + "properties": { + "reportName": { + "type": "string" + }, + "s3BucketName": { + "type": "string" + }, + "region": { + "type": "string" + }, + "s3Prefix": { + "type": "string" + } + }, + "description": "This contains AWS cost and usage reports attributes" + }, + "AwsEqualJitterBackoffStrategy": { + "type": "object", + "description": "Backoff strategy that uses equal jitter for computing the delay before the next retry.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsSdkBackOffStrategySpec" + }, + { + "type": "object", + "properties": { + "baseDelay": { + "type": "integer", + "format": "int64" + }, + "maxBackoffTime": { + "type": "integer", + "format": "int64" + }, + "retryCount": { + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "AwsFixedDelayBackoffStrategy": { + "type": "object", + "description": "Simple backoff strategy that always uses a fixed delay for the delay before the next retry attempt.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsSdkBackOffStrategySpec" + }, + { + "type": "object", + "properties": { + "fixedBackoff": { + "type": "integer", + "format": "int64" + }, + "retryCount": { + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "AwsFullJitterBackoffStrategy": { + "type": "object", + "description": "Backoff strategy that uses a full jitter strategy for computing the next backoff delay.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsSdkBackOffStrategySpec" + }, + { + "type": "object", + "properties": { + "baseDelay": { + "type": "integer", + "format": "int64" + }, + "maxBackoffTime": { + "type": "integer", + "format": "int64" + }, + "retryCount": { + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "AwsKmsConnector": { + "required": [ + "credential", + "kmsArn", + "region" + ], + "type": "object", + "description": "This has configuration details for the AWS KMS Secret Manager.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/AwsKmsConnectorCredential" + }, + "kmsArn": { + "type": "string", + "description": "ARN for AWS KMS." + }, + "region": { + "type": "string", + "description": "Region for AWS KMS." + }, + "isDefault": { + "type": "boolean", + "writeOnly": true + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + }, + "awsOidcTokenExchangeDetailsForDelegate": { + "$ref": "#/components/schemas/AwsOidcTokenExchangeDetailsForDelegate" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "executeOnDelegate": { + "type": "boolean", + "description": "Should the secret manager execute operations on the delegate, or via Harness platform" + }, + "default": { + "type": "boolean" + } + } + } + ] + }, + "AwsKmsConnectorCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "This indicates AWS credential types, Manual Credential, Assume IAM Role, Assume STS Role.", + "enum": [ + "AssumeIAMRole", + "AssumeSTSRole", + "ManualConfig", + "OidcAuthentication" + ] + }, + "spec": { + "$ref": "#/components/schemas/AwsKmsCredentialSpec" + } + }, + "description": "Returns the configuration details for the AWS KMS Secret Manager." + }, + "AwsKmsCredentialSpec": { + "type": "object", + "description": "This is interface that returns credentials specific to all roles for the AWS KMS Secret Manager." + }, + "AwsKmsCredentialSpecAssumeIAM": { + "required": [ + "delegateSelectors" + ], + "type": "object", + "description": "Returns the Delegate Selectors used by this AWS KMS Secret Manager Connector.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsKmsCredentialSpec" + }, + { + "type": "object", + "properties": { + "delegateSelectors": { + "maxItems": 2147483647, + "minItems": 1, + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + } + } + } + ] + }, + "AwsKmsCredentialSpecAssumeSTS": { + "required": [ + "delegateSelectors", + "roleArn" + ], + "type": "object", + "description": "Returns Delegate selectors, Role ARN and STS role duration used by AWS KMS Secret Manager.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsKmsCredentialSpec" + }, + { + "type": "object", + "properties": { + "delegateSelectors": { + "maxItems": 2147483647, + "minItems": 1, + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + }, + "roleArn": { + "type": "string", + "description": "Role ARN for the Delegate with STS Role." + }, + "externalName": { + "type": "string", + "description": "External Name." + }, + "assumeStsRoleDuration": { + "type": "integer", + "description": "This is the time duration for STS Role.", + "format": "int32" + } + } + } + ] + }, + "AwsKmsCredentialSpecManualConfig": { + "required": [ + "accessKey", + "secretKey" + ], + "type": "object", + "description": "This contains the AWS KMS Secret Manager's secret reference access key and secret key.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsKmsCredentialSpec" + }, + { + "type": "object", + "properties": { + "accessKey": { + "type": "string", + "description": "Access Key for AWS authentication." + }, + "secretKey": { + "type": "string", + "description": "Secret Key for AWS authentication." + } + } + } + ] + }, + "AwsManualConfigSpec": { + "required": [ + "secretKeyRef" + ], + "type": "object", + "description": "This contains AWS manual credentials connector spec", + "allOf": [ + { + "$ref": "#/components/schemas/AwsCredentialSpec" + }, + { + "type": "object", + "properties": { + "accessKey": { + "type": "string" + }, + "accessKeyRef": { + "type": "string" + }, + "secretKeyRef": { + "type": "string" + }, + "sessionTokenRef": { + "type": "string" + } + } + } + ] + }, + "AwsOidcSpec": { + "required": [ + "iamRoleArn" + ], + "type": "object", + "description": "This contains AWS OIDC credentials connector spec", + "allOf": [ + { + "$ref": "#/components/schemas/AwsCredentialSpec" + }, + { + "type": "object", + "properties": { + "iamRoleArn": { + "type": "string" + } + } + } + ] + }, + "AwsOidcTokenExchangeDetailsForDelegate": { + "type": "object", + "properties": { + "oidcIdToken": { + "type": "string" + }, + "idTokenExpiryTime": { + "type": "integer", + "format": "int64" + } + } + }, + "AwsSMCredentialSpecAssumeIAM": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AwsSecretManagerCredentialSpec" + } + ] + }, + "AwsSMCredentialSpecAssumeSTS": { + "required": [ + "roleArn" + ], + "type": "object", + "description": "Returns credentials for the AWS Secret Manager for the IAM role.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsSecretManagerCredentialSpec" + }, + { + "type": "object", + "properties": { + "roleArn": { + "type": "string", + "description": "Role ARN for the Delegate with STS Role." + }, + "externalId": { + "type": "string", + "description": "External Name." + }, + "assumeStsRoleDuration": { + "type": "integer", + "description": "This is the time duration for STS Role.", + "format": "int32" + } + } + } + ] + }, + "AwsSMCredentialSpecManualConfig": { + "required": [ + "secretKey" + ], + "type": "object", + "description": "Returns secret reference access key and secret key of AWS Secret Manager.", + "allOf": [ + { + "$ref": "#/components/schemas/AwsSecretManagerCredentialSpec" + }, + { + "type": "object", + "properties": { + "accessKey": { + "type": "string", + "description": "Access Key for AWS authentication." + }, + "accessKeyPlainText": { + "type": "string", + "description": "Access Key for AWS authentication as plain text." + }, + "secretKey": { + "type": "string", + "description": "Secret Key for AWS authentication." + } + } + } + ] + }, + "AwsSdkClientBackOffStrategySpec": { + "type": "object", + "description": "This contains AWS Sdk Client BackOff strategy spec" + }, + "AwsSdkClientBackoffStrategy": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "FixedDelayBackoffStrategy", + "EqualJitterBackoffStrategy", + "FullJitterBackoffStrategy" + ] + }, + "spec": { + "$ref": "#/components/schemas/AwsSdkClientBackOffStrategySpec" + } + }, + "description": "This contains details of the AWS SDK Client Backoff Strategy" + }, + "AwsSecretManager": { + "required": [ + "credential", + "region" + ], + "type": "object", + "description": "Returns AWS Secret Manager configuration details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/AwsSecretManagerCredential" + }, + "region": { + "type": "string", + "description": "Region for AWS SM." + }, + "secretNamePrefix": { + "type": "string", + "description": "Text that is prepended to the Secret name as a prefix." + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + }, + "awsOidcTokenExchangeDetailsForDelegate": { + "$ref": "#/components/schemas/AwsOidcTokenExchangeDetailsForDelegate" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "executeOnDelegate": { + "type": "boolean", + "description": "Should the secret manager execute operations on the delegate, or via Harness platform" + }, + "usePutSecret": { + "type": "boolean", + "description": "Whether to update secret value using putSecretValue action." + }, + "forceDeleteWithoutRecovery": { + "type": "boolean", + "description": "Whether to delete the secret without any recovery window." + }, + "recoveryWindowInDays": { + "type": "integer", + "description": "Number of days a Secret can be recovered after it is deleted.", + "format": "int64" + }, + "default": { + "type": "boolean" + } + } + } + ] + }, + "AwsSecretManagerCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "This indicates AWS credential types, Manual Credential, Assume IAM Role, Assume STS Role.", + "enum": [ + "AssumeIAMRole", + "AssumeSTSRole", + "ManualConfig", + "OidcAuthentication" + ] + }, + "spec": { + "$ref": "#/components/schemas/AwsSecretManagerCredentialSpec" + } + }, + "description": "This contains the credential type and configuration of the AWS Secret Manager." + }, + "AwsSecretManagerCredentialSpec": { + "type": "object", + "description": "This is interface that returns credentials specific to all roles for the AWS Secret Manager." + }, + "AzureArtifactsAuthentication": { + "required": [ + "spec" + ], + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/AzureArtifactsHttpCredentials" + } + }, + "description": "This contains details of the information needed for Azure DevOps access" + }, + "AzureArtifactsConnector": { + "required": [ + "auth", + "azureArtifactsUrl" + ], + "type": "object", + "description": "This contains details of AzureArtifacts connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "azureArtifactsUrl": { + "type": "string", + "description": "HTTP URL for Azure Artifacts Registry" + }, + "auth": { + "$ref": "#/components/schemas/AzureArtifactsAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "Selected Connectivity Modes", + "items": { + "type": "string", + "description": "Selected Connectivity Modes" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "AzureArtifactsHttpCredentials": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "PersonalAccessToken" + ] + }, + "spec": { + "$ref": "#/components/schemas/AzureArtifactsUsernameToken" + } + }, + "description": "This contains details of the AzureArtifacts credentials used via HTTP connections" + }, + "AzureArtifactsUsernameToken": { + "required": [ + "tokenRef" + ], + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + } + }, + "description": "This contains details of the AzureArtifacts credentials Specs such as references of username and token" + }, + "AzureAuth": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Secret", + "Certificate" + ] + }, + "spec": { + "$ref": "#/components/schemas/AzureAuthCredential" + } + }, + "description": "This contains azure auth details" + }, + "AzureAuthCredential": { + "type": "object", + "description": "This contains azure auth credentials" + }, + "AzureClientKeyCert": { + "required": [ + "certificateRef" + ], + "type": "object", + "description": "This contains azure client key certificate details", + "allOf": [ + { + "$ref": "#/components/schemas/AzureAuthCredential" + }, + { + "type": "object", + "properties": { + "certificateRef": { + "type": "string" + } + } + } + ] + }, + "AzureClientSecretKey": { + "required": [ + "secretRef" + ], + "type": "object", + "description": "This contains azure client secret key details", + "allOf": [ + { + "$ref": "#/components/schemas/AzureAuthCredential" + }, + { + "type": "object", + "properties": { + "secretRef": { + "type": "string" + } + } + } + ] + }, + "AzureConnector": { + "required": [ + "azureEnvironmentType", + "credential" + ], + "type": "object", + "description": "This contains details of the Azure connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/AzureCredential" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "azureEnvironmentType": { + "type": "string", + "description": "This specifies the Azure Environment type, which is AZURE by default.", + "enum": [ + "AZURE", + "AZURE_US_GOVERNMENT" + ] + }, + "executeOnDelegate": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "AzureCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "InheritFromDelegate", + "ManualConfig" + ] + }, + "spec": { + "$ref": "#/components/schemas/AzureCredentialSpec" + } + }, + "description": "This contains Azure connector credentials" + }, + "AzureCredentialSpec": { + "type": "object", + "description": "This contains Azure connector credentials spec" + }, + "AzureInheritFromDelegateDetails": { + "required": [ + "auth" + ], + "type": "object", + "description": "This contains Azure inherit from delegate credentials connector details", + "allOf": [ + { + "$ref": "#/components/schemas/AzureCredentialSpec" + }, + { + "type": "object", + "properties": { + "auth": { + "$ref": "#/components/schemas/AzureMSIAuth" + } + } + } + ] + }, + "AzureKeyVaultConnector": { + "required": [ + "subscription", + "vaultName" + ], + "type": "object", + "description": "Returns configuration details for the Azure Key Vault Secret Manager.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "Application ID of the Azure App." + }, + "secretKey": { + "type": "string", + "description": "This is the Harness text secret with the Azure authentication key as its value." + }, + "tenantId": { + "type": "string", + "description": "The Azure Active Directory (AAD) directory ID where you created your application." + }, + "vaultName": { + "type": "string", + "description": "The Azure Vault name" + }, + "subscription": { + "type": "string", + "description": "Azure Subscription ID." + }, + "vaultConfiguredManually": { + "type": "boolean" + }, + "azureEnvironmentType": { + "type": "string", + "description": "This specifies the Azure Environment type, which is AZURE by default.", + "enum": [ + "AZURE", + "AZURE_US_GOVERNMENT" + ] + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + }, + "useManagedIdentity": { + "type": "boolean", + "description": "Boolean value to indicate if managed identity is used" + }, + "azureManagedIdentityType": { + "type": "string", + "description": "Managed Identity Type", + "enum": [ + "SystemAssignedManagedIdentity", + "UserAssignedManagedIdentity" + ] + }, + "managedClientId": { + "type": "string", + "description": "Client Id of the ManagedIdentity resource" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "enablePurge": { + "type": "boolean", + "description": "Boolean value to indicate if purge is enabled" + }, + "default": { + "type": "boolean" + } + } + } + ] + }, + "AzureMSIAuth": { + "type": "object", + "description": "This contains azure MSI auth details" + }, + "AzureManualDetails": { + "required": [ + "applicationId", + "auth", + "tenantId" + ], + "type": "object", + "description": "This contains Azure manual credentials connector details", + "allOf": [ + { + "$ref": "#/components/schemas/AzureCredentialSpec" + }, + { + "type": "object", + "properties": { + "applicationId": { + "type": "string", + "description": "Application ID of the Azure App." + }, + "tenantId": { + "type": "string", + "description": "The Azure Active Directory (AAD) directory ID where you created your application." + }, + "auth": { + "$ref": "#/components/schemas/AzureAuth" + } + } + } + ] + }, + "AzureRepoApiAccess": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Token" + ] + }, + "spec": { + "$ref": "#/components/schemas/AzureRepoApiAccessSpec" + } + }, + "description": "This contains details of the information needed for Azure Repo API access" + }, + "AzureRepoApiAccessSpec": { + "type": "object", + "description": "This contains details of the information such as references of username and password needed for Azure Repo API access" + }, + "AzureRepoAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Http", + "Ssh" + ] + }, + "spec": { + "$ref": "#/components/schemas/AzureRepoCredentials" + } + }, + "description": "This contains details of the information needed for Azure DevOps access" + }, + "AzureRepoConfig": { + "required": [ + "authentication", + "type", + "url" + ], + "type": "object", + "description": "This contains details of AzureRepo connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string", + "description": "SSH | HTTP URL based on type of connection" + }, + "validationRepo": { + "type": "string", + "description": "The repo to validate AzureRepo credentials. Only valid for Account type connector" + }, + "authentication": { + "$ref": "#/components/schemas/AzureRepoAuthentication" + }, + "apiAccess": { + "$ref": "#/components/schemas/AzureRepoApiAccess" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "Selected Connectivity Modes", + "items": { + "type": "string", + "description": "Selected Connectivity Modes" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "type": { + "type": "string", + "description": "Project | Repository connector type", + "enum": [ + "Project", + "Repo" + ] + } + } + } + ] + }, + "AzureRepoCredentials": { + "type": "object", + "description": "This is a interface for details of the Azure DevOps credentials" + }, + "AzureRepoHttpCredentials": { + "required": [ + "spec", + "type" + ], + "type": "object", + "description": "This contains details of the AzureRepo credentials used via HTTP connections", + "allOf": [ + { + "$ref": "#/components/schemas/AzureRepoCredentials" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernameToken" + ] + }, + "spec": { + "$ref": "#/components/schemas/AzureRepoHttpCredentialsSpec" + } + } + } + ] + }, + "AzureRepoHttpCredentialsSpec": { + "type": "object", + "description": "This is a interface for details of the AzureRepo credentials Specs such as references of username and password" + }, + "AzureRepoSshCredentials": { + "required": [ + "sshKeyRef" + ], + "type": "object", + "description": "This contains details of the AzureRepo credentials used via SSH connections", + "allOf": [ + { + "$ref": "#/components/schemas/AzureRepoCredentials" + }, + { + "type": "object", + "properties": { + "sshKeyRef": { + "type": "string" + } + } + } + ] + }, + "AzureRepoTokenSpec": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the information such as references of token needed for AzureRepo API access", + "allOf": [ + { + "$ref": "#/components/schemas/AzureRepoApiAccessSpec" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "AzureRepoUsernameToken": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the AzureRepo credentials Specs such as references of username and token", + "allOf": [ + { + "$ref": "#/components/schemas/AzureRepoHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "AzureSystemAssignedMSIAuth": { + "type": "object", + "description": "This contains azure SystemAssigned MSI auth details", + "allOf": [ + { + "$ref": "#/components/schemas/AzureAuthCredential" + } + ] + }, + "AzureUserAssignedMSIAuth": { + "required": [ + "clientId" + ], + "type": "object", + "description": "This contains azure UserAssigned MSI auth details", + "allOf": [ + { + "$ref": "#/components/schemas/AzureAuthCredential" + }, + { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the ManagedIdentity resource" + } + } + } + ] + }, + "BambooAuthCredentialsDTO": { + "type": "object", + "description": "This contains details of credentials for Bamboo Authentication" + }, + "BambooAuthenticationDTO": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "Anonymous", + "Bearer Token(HTTP Header)" + ] + }, + "spec": { + "$ref": "#/components/schemas/BambooAuthCredentialsDTO" + } + }, + "description": "This entity contains the details for Bamboo Authentication" + }, + "BambooConnector": { + "required": [ + "bambooUrl" + ], + "type": "object", + "description": "Bamboo Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "bambooUrl": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/BambooAuthenticationDTO" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "BambooUserNamePasswordDTO": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the Bamboo Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/BambooAuthCredentialsDTO" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "BillingExportSpec": { + "required": [ + "containerName", + "directoryName", + "reportName", + "storageAccountName", + "subscriptionId" + ], + "type": "object", + "properties": { + "storageAccountName": { + "type": "string" + }, + "containerName": { + "type": "string" + }, + "directoryName": { + "type": "string" + }, + "reportName": { + "type": "string" + }, + "subscriptionId": { + "type": "string" + }, + "billingType": { + "type": "string", + "enum": [ + "ACTUAL", + "AMORTIZED" + ] + } + }, + "description": "Returns Billing details like StorageAccount's Name, container's Name, directory's Name, report Name and subscription Id" + }, + "BitbucketApiAccess": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernameToken", + "OAuth" + ] + }, + "spec": { + "$ref": "#/components/schemas/BitbucketApiAccess" + } + }, + "description": "This contains details of the information needed for Bitbucket API access" + }, + "BitbucketAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Http", + "Ssh" + ] + }, + "spec": { + "$ref": "#/components/schemas/BitbucketCredentials" + } + }, + "description": "This contains details of the information needed for Bitbucket access" + }, + "BitbucketConnector": { + "required": [ + "authentication", + "type", + "url" + ], + "type": "object", + "description": "This contains details of Bitbucket connectors", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "validationRepo": { + "type": "string" + }, + "authentication": { + "$ref": "#/components/schemas/BitbucketAuthentication" + }, + "apiAccess": { + "$ref": "#/components/schemas/BitbucketApiAccess" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "Account", + "Repo" + ] + } + } + } + ] + }, + "BitbucketCredentials": { + "type": "object", + "description": "This is a interface for details of the Bitbucket credentials" + }, + "BitbucketHttpCredentials": { + "required": [ + "spec", + "type" + ], + "type": "object", + "description": "This contains details of the Bitbucket credentials used via HTTP connections", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketCredentials" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword" + ] + }, + "spec": { + "$ref": "#/components/schemas/BitbucketHttpCredentialsSpec" + } + } + } + ] + }, + "BitbucketHttpCredentialsSpec": { + "type": "object", + "description": "This is a interface for details of the Bitbucket credentials Specs such as references of username and password" + }, + "BitbucketOauth": { + "required": [ + "refreshTokenRef", + "tokenRef" + ], + "type": "object", + "description": "This contains details of the information such as references of tokens needed for OAuth API access", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketApiAccess" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + } + } + } + ] + }, + "BitbucketSshCredentials": { + "required": [ + "sshKeyRef" + ], + "type": "object", + "description": "This contains details of the Bitbucket credentials used via SSH connections", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketCredentials" + }, + { + "type": "object", + "properties": { + "sshKeyRef": { + "type": "string" + } + } + } + ] + }, + "BitbucketUsernamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains details of the Bitbucket credentials Specs such as references of username and password", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "BitbucketUsernameTokenApiAccess": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the Bitbucket API access credentials Specs such as references of username and token", + "allOf": [ + { + "$ref": "#/components/schemas/BitbucketApiAccess" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "CEAwsConnector": { + "required": [ + "crossAccountAccess", + "featuresEnabled" + ], + "type": "object", + "description": "This contains the cost explorer of AWS connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "crossAccountAccess": { + "$ref": "#/components/schemas/CrossAccountAccess" + }, + "curAttributes": { + "$ref": "#/components/schemas/AwsCurAttributes" + }, + "awsAccountId": { + "type": "string" + }, + "isAWSGovCloudAccount": { + "type": "boolean" + }, + "featuresEnabled": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "BILLING", + "OPTIMIZATION", + "VISIBILITY", + "GOVERNANCE", + "COMMITMENT_ORCHESTRATOR", + "CLUSTER_ORCHESTRATOR" + ] + } + }, + "autostoppingFeatures": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EC2", + "SPOT", + "ASG", + "ECS", + "RDS", + "ALB", + "PROXY", + "AZURE_VM", + "AZURE_APP_GATEWAY", + "GCP_VM", + "GCP_INSTANCE_GROUP" + ] + } + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "credential": { + "$ref": "#/components/schemas/CeAwsCredential" + } + } + } + ] + }, + "CEAzureConnector": { + "required": [ + "featuresEnabled", + "subscriptionId", + "tenantId" + ], + "type": "object", + "description": "This contains the cost explorer of Azure connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "featuresEnabled": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "BILLING", + "OPTIMIZATION", + "VISIBILITY", + "GOVERNANCE", + "COMMITMENT_ORCHESTRATOR", + "CLUSTER_ORCHESTRATOR" + ] + } + }, + "autostoppingFeatures": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EC2", + "SPOT", + "ASG", + "ECS", + "RDS", + "ALB", + "PROXY", + "AZURE_VM", + "AZURE_APP_GATEWAY", + "GCP_VM", + "GCP_INSTANCE_GROUP" + ] + } + }, + "tenantId": { + "type": "string" + }, + "subscriptionId": { + "type": "string" + }, + "billingExportSpec": { + "$ref": "#/components/schemas/BillingExportSpec" + }, + "billingExportSpec2": { + "$ref": "#/components/schemas/BillingExportSpec" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "CEKubernetesClusterConfigDTO": { + "required": [ + "connectorRef", + "featuresEnabled" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "featuresEnabled": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "BILLING", + "OPTIMIZATION", + "VISIBILITY", + "GOVERNANCE", + "COMMITMENT_ORCHESTRATOR", + "CLUSTER_ORCHESTRATOR" + ] + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "CeAwsCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Default", + "OidcAuthentication" + ] + }, + "spec": { + "$ref": "#/components/schemas/CeAwsCredentialSpec" + }, + "region": { + "type": "string" + } + }, + "description": "This contains details of the CCM AWS connector credential" + }, + "CeAwsCredentialSpec": { + "type": "object", + "description": "This contains CCM AWS connector credential spec" + }, + "CeAwsOidcSpec": { + "required": [ + "iamRoleArn" + ], + "type": "object", + "description": "This contains CCM AWS OIDC credentials connector spec", + "allOf": [ + { + "$ref": "#/components/schemas/CeAwsCredentialSpec" + }, + { + "type": "object", + "properties": { + "iamRoleArn": { + "type": "string" + } + } + } + ] + }, + "ConfluenceConnector": { + "required": [ + "apiAccessType" + ], + "type": "object", + "description": "Confluence Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "apiAccessType": { + "type": "string", + "enum": [ + "TOKEN", + "OAUTH" + ] + }, + "emailId": { + "type": "string" + }, + "confluenceUrl": { + "type": "string" + }, + "apiKeyRef": { + "type": "string" + }, + "accessTokenRef": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "ConnectorActivityDetails": { + "type": "object", + "properties": { + "lastActivityTime": { + "type": "integer", + "description": "This specifies the time of the most recent activity on the Connector.", + "format": "int64" + } + }, + "description": "This contains details of any kind of activities corresponding to the Connector." + }, + "ConnectorConfig": { + "required": [ + "connectorType" + ], + "type": "object", + "properties": { + "connectorType": { + "type": "string" + } + }, + "description": "This is the view of the ConnectorConfig entity defined in Harness", + "discriminator": { + "propertyName": "connectorType" + } + }, + "ConnectorConnectivityDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "Connectivity status of a Connector.", + "enum": [ + "SUCCESS", + "FAILURE", + "PARTIAL", + "UNKNOWN", + "PENDING" + ] + }, + "errorSummary": { + "type": "string", + "description": "Summary of errors." + }, + "errors": { + "type": "array", + "description": "List of errors and their details.", + "items": { + "$ref": "#/components/schemas/ErrorDetail" + } + }, + "testedAt": { + "type": "integer", + "description": "Time at which Test Connection was completed ", + "format": "int64" + }, + "lastTestedAt": { + "type": "integer", + "format": "int64" + }, + "lastConnectedAt": { + "type": "integer", + "description": "This is the last time at which the Connector was successfully connected.", + "format": "int64" + }, + "lastAlertSent": { + "type": "integer", + "description": "Last alert sent time when connector went down", + "format": "int64" + } + }, + "description": "Details of the connectivity status of the Connector." + }, + "ConnectorInfo": { + "required": [ + "identifier", + "name", + "spec", + "type" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Connector." + }, + "identifier": { + "type": "string", + "description": "Identifier of the Connector." + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "type": { + "type": "string", + "description": "Type of the Connector.", + "enum": [ + "K8sCluster", + "Git", + "Splunk", + "AppDynamics", + "Prometheus", + "Dynatrace", + "Vault", + "AzureKeyVault", + "DockerRegistry", + "Local", + "AwsKms", + "GcpKms", + "AwsSecretManager", + "Gcp", + "Aws", + "Azure", + "Artifactory", + "Jira", + "Nexus", + "Github", + "Gitlab", + "Bitbucket", + "Codecommit", + "CEAws", + "CEAzure", + "GcpCloudCost", + "CEK8sCluster", + "HttpHelmRepo", + "NewRelic", + "Datadog", + "SumoLogic", + "PagerDuty", + "CustomHealth", + "ServiceNow", + "ErrorTracking", + "Pdc", + "AzureRepo", + "Jenkins", + "OciHelmRepo", + "CustomSecretManager", + "ElasticSearch", + "GcpSecretManager", + "AzureArtifacts", + "Tas", + "Spot", + "Bamboo", + "TerraformCloud", + "SignalFX", + "Harness", + "Rancher", + "JDBC", + "Zoom", + "MsTeams", + "Confluence", + "Slack" + ] + }, + "spec": { + "$ref": "#/components/schemas/ConnectorConfig" + } + }, + "description": "This has the Connector details defined in Harness" + }, + "ConnectorResponse1": { + "type": "object", + "properties": { + "connector": { + "$ref": "#/components/schemas/ConnectorInfo" + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which the Connector was created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "This is the time at which the Connector was last modified.", + "format": "int64" + }, + "status": { + "$ref": "#/components/schemas/ConnectorConnectivityDetails" + }, + "activityDetails": { + "$ref": "#/components/schemas/ConnectorActivityDetails" + }, + "harnessManaged": { + "type": "boolean", + "description": "This indicates if this Connector is managed by Harness or not. If True, Harness can manage and modify this Connector." + }, + "gitDetails": { + "$ref": "#/components/schemas/EntityGitDetails1" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/EntityGitDetails1" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + }, + "isFavorite": { + "type": "boolean" + } + }, + "description": "This has the Connector details along with its metadata." + }, + "CrossAccountAccess": { + "required": [ + "crossAccountRoleArn" + ], + "type": "object", + "properties": { + "crossAccountRoleArn": { + "type": "string" + }, + "externalId": { + "type": "string" + } + }, + "description": "This contains AWS connector cross account access details" + }, + "CustomHealthConnectorDTO": { + "required": [ + "baseURL", + "method" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "baseURL": { + "type": "string" + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CustomHealthKeyAndValue" + } + }, + "params": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CustomHealthKeyAndValue" + } + }, + "method": { + "type": "string", + "enum": [ + "GET", + "POST" + ] + }, + "validationBody": { + "type": "string" + }, + "validationPath": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "CustomHealthKeyAndValue": { + "required": [ + "key" + ], + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "isValueEncrypted": { + "type": "boolean", + "writeOnly": true + }, + "encryptedValueRef": { + "type": "string" + }, + "value": { + "type": "string" + }, + "valueEncrypted": { + "type": "boolean" + } + } + }, + "CustomSecretManager": { + "required": [ + "template" + ], + "type": "object", + "description": "This contains details of Custom Secret Manager connectors", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "onDelegate": { + "type": "boolean" + }, + "connectorRef": { + "type": "string", + "description": "This is the authentication token used to connect underlying secret manager." + }, + "host": { + "type": "string" + }, + "workingDirectory": { + "type": "string" + }, + "template": { + "$ref": "#/components/schemas/TemplateLinkConfigForCustomSecretManager" + }, + "timeout": { + "maximum": 3600, + "minimum": 1, + "type": "integer", + "format": "int64" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "default": { + "type": "boolean" + } + } + } + ] + }, + "DatadogConnectorDTO": { + "required": [ + "apiKeyRef", + "applicationKeyRef", + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "applicationKeyRef": { + "type": "string" + }, + "apiKeyRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "DockerAuthCredentials": { + "type": "object", + "description": "This contains details of credentials for Docker Authentication" + }, + "DockerAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "Anonymous" + ] + }, + "spec": { + "$ref": "#/components/schemas/DockerAuthCredentials" + } + }, + "description": "This entity contains the details for Docker Authentication" + }, + "DockerConnector": { + "required": [ + "dockerRegistryUrl", + "providerType" + ], + "type": "object", + "description": "Docker Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "dockerRegistryUrl": { + "type": "string" + }, + "providerType": { + "type": "string", + "description": "This entity contains the details of the Docker Registry", + "enum": [ + "DockerHub", + "Harbor", + "Quay", + "Other" + ] + }, + "auth": { + "$ref": "#/components/schemas/DockerAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "DockerUserNamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the Docker Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/DockerAuthCredentials" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "DynatraceConnectorDTO": { + "required": [ + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "apiTokenRef": { + "type": "string" + }, + "platformTokenRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "ELKConnectorDTO": { + "required": [ + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "username": { + "type": "string" + }, + "apiKeyId": { + "type": "string" + }, + "passwordRef": { + "type": "string" + }, + "apiKeyRef": { + "type": "string" + }, + "authType": { + "type": "string", + "enum": [ + "UsernamePassword", + "ApiClientToken", + "None", + "Bearer Token(HTTP Header)" + ] + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "ErrorDetail": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "integer", + "format": "int32" + } + }, + "description": "Host error details" + }, + "ErrorTrackingConnectorDTO": { + "required": [ + "apiKeyRef", + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "apiKeyRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "GcpBillingExportSpecDTO": { + "required": [ + "datasetId", + "tableId" + ], + "type": "object", + "properties": { + "datasetId": { + "type": "string" + }, + "tableId": { + "type": "string" + } + } + }, + "GcpCcmConnectorCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Default", + "OidcAuthentication" + ] + }, + "spec": { + "$ref": "#/components/schemas/GcpCcmCredentialSpec" + } + }, + "description": "This contains CCM GCP connector credentials" + }, + "GcpCcmCredentialSpec": { + "type": "object", + "description": "This contains CCM GCP connector credentials spec" + }, + "GcpCcmOidcDetails": { + "required": [ + "gcpProjectId", + "providerId", + "serviceAccountEmail", + "workloadPoolId" + ], + "type": "object", + "description": "This contains CCM GCP OIDC details", + "allOf": [ + { + "$ref": "#/components/schemas/GcpCcmCredentialSpec" + }, + { + "type": "object", + "properties": { + "workloadPoolId": { + "type": "string" + }, + "providerId": { + "type": "string" + }, + "gcpProjectId": { + "type": "string" + }, + "serviceAccountEmail": { + "type": "string" + } + } + } + ] + }, + "GcpCloudCostConnectorDTO": { + "required": [ + "featuresEnabled", + "projectId", + "serviceAccountEmail" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "featuresEnabled": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "BILLING", + "OPTIMIZATION", + "VISIBILITY", + "GOVERNANCE", + "COMMITMENT_ORCHESTRATOR", + "CLUSTER_ORCHESTRATOR" + ] + } + }, + "projectId": { + "type": "string" + }, + "serviceAccountEmail": { + "type": "string" + }, + "billingExportSpec": { + "$ref": "#/components/schemas/GcpBillingExportSpecDTO" + }, + "autostoppingFeatures": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EC2", + "SPOT", + "ASG", + "ECS", + "RDS", + "ALB", + "PROXY", + "AZURE_VM", + "AZURE_APP_GATEWAY", + "GCP_VM", + "GCP_INSTANCE_GROUP" + ] + } + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "credential": { + "$ref": "#/components/schemas/GcpCcmConnectorCredential" + } + } + } + ] + }, + "GcpConnector": { + "required": [ + "credential" + ], + "type": "object", + "description": "This contains GCP connector details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/GcpConnectorCredential" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "GcpConnectorCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "InheritFromDelegate", + "ManualConfig", + "OidcAuthentication" + ] + }, + "spec": { + "$ref": "#/components/schemas/GcpCredentialSpec" + } + }, + "description": "This contains GCP connector credentials" + }, + "GcpCredentialSpec": { + "type": "object", + "description": "This contains GCP connector credentials spec" + }, + "GcpDelegateDetails": { + "required": [ + "delegateSelectors" + ], + "type": "object", + "description": "This contains GCP connector delegate details", + "allOf": [ + { + "$ref": "#/components/schemas/GcpCredentialSpec" + }, + { + "type": "object", + "properties": { + "delegateSelectors": { + "maxItems": 2147483647, + "minItems": 1, + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + } + ] + }, + "GcpKmsConnector": { + "required": [ + "keyName", + "keyRing", + "projectId", + "region" + ], + "type": "object", + "description": "This contains GCP KMS SecretManager configuration.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "projectId": { + "type": "string", + "description": "ID of the project on GCP." + }, + "region": { + "type": "string", + "description": "Region for GCP KMS" + }, + "keyRing": { + "type": "string", + "description": "Name of the Key Ring where Google Cloud Symmetric Key is created." + }, + "keyName": { + "type": "string", + "description": "Name of the Google Cloud Symmetric Key." + }, + "credentials": { + "type": "string", + "description": "File Secret which is Service Account Key." + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + }, + "oidcDetails": { + "$ref": "#/components/schemas/GcpOidcDetails" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "executeOnDelegate": { + "type": "boolean", + "description": "Should the secret manager execute operations on the delegate, or via Harness platform" + }, + "default": { + "type": "boolean" + } + } + } + ] + }, + "GcpManualDetails": { + "required": [ + "secretKeyRef" + ], + "type": "object", + "description": "This contains GCP manual credentials details", + "allOf": [ + { + "$ref": "#/components/schemas/GcpCredentialSpec" + }, + { + "type": "object", + "properties": { + "secretKeyRef": { + "type": "string" + } + } + } + ] + }, + "GcpOidcDetails": { + "required": [ + "gcpProjectId", + "providerId", + "serviceAccountEmail", + "workloadPoolId" + ], + "type": "object", + "description": "This contains GCP OIDC details", + "allOf": [ + { + "$ref": "#/components/schemas/GcpCredentialSpec" + }, + { + "type": "object", + "properties": { + "workloadPoolId": { + "type": "string" + }, + "providerId": { + "type": "string" + }, + "gcpProjectId": { + "type": "string" + }, + "serviceAccountEmail": { + "type": "string" + } + } + } + ] + }, + "GcpOidcTokenExchangeDetailsForDelegate": { + "type": "object", + "properties": { + "oidcIdToken": { + "type": "string" + }, + "oidcAccessTokenStsEndpoint": { + "type": "string" + }, + "oidcAccessTokenIamSaEndpoint": { + "type": "string" + }, + "gcpServiceAccountEmail": { + "type": "string" + }, + "oidcWorkloadAccessTokenRequestStructure": { + "$ref": "#/components/schemas/OidcWorkloadAccessTokenRequest" + }, + "oidcChartmuseumGcpConfigStructure": { + "$ref": "#/components/schemas/OidcChartmuseumGcpConfig" + }, + "idTokenExpiryTime": { + "type": "integer", + "format": "int64" + } + } + }, + "GcpSecretManager": { + "type": "object", + "description": "This contains details of GCP Secret Manager", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credentialsRef": { + "type": "string", + "description": "Reference to the secret containing credentials of IAM service account for Google Secret Manager" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + }, + "executeOnDelegate": { + "type": "boolean", + "description": "Should the secret manager execute operations on the delegate, or via Harness platform" + }, + "assumeCredentialsOnDelegate": { + "type": "boolean", + "description": "Boolean value to indicate that Credentials are taken from the Delegate." + }, + "credential": { + "$ref": "#/components/schemas/GcpConnectorCredential" + }, + "gcpOidcTokenExchangeDetailsForDelegate": { + "$ref": "#/components/schemas/GcpOidcTokenExchangeDetailsForDelegate" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "default": { + "type": "boolean" + } + } + } + ] + }, + "GitAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This is a interface for details of the Generic Git authentication information", + "discriminator": { + "propertyName": "type" + } + }, + "GitConfig": { + "required": [ + "connectionType", + "spec", + "type", + "url" + ], + "type": "object", + "description": "This contains details of the Generic Git connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "validationRepo": { + "type": "string" + }, + "branchName": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "isAnonymous": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "Http", + "Ssh" + ] + }, + "connectionType": { + "type": "string", + "enum": [ + "Account", + "Repo", + "Project" + ] + }, + "spec": { + "$ref": "#/components/schemas/GitAuthentication" + } + } + } + ] + }, + "GitHTTPAuthenticationDTO": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains details of the Generic Git authentication information used via HTTP connections", + "allOf": [ + { + "$ref": "#/components/schemas/GitAuthentication" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "GitSSHAuthentication": { + "required": [ + "sshKeyRef" + ], + "type": "object", + "description": "This contains details of the Generic Git authentication information used via SSH connections", + "allOf": [ + { + "$ref": "#/components/schemas/GitAuthentication" + }, + { + "type": "object", + "properties": { + "sshKeyRef": { + "type": "string" + } + } + } + ] + }, + "GithubApiAccess": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "GithubApp", + "Token", + "OAuth" + ] + }, + "spec": { + "$ref": "#/components/schemas/GithubApiAccessSpec" + } + }, + "description": "This contains details of the information needed for Github API access" + }, + "GithubApiAccessSpec": { + "type": "object", + "description": "This contains details of the information such as references of username and password needed for Github API access" + }, + "GithubApp": { + "required": [ + "privateKeyRef" + ], + "type": "object", + "description": "This contains details of the Github App credentials Specs such as references of private key", + "allOf": [ + { + "$ref": "#/components/schemas/GithubHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "installationId": { + "type": "string" + }, + "applicationId": { + "type": "string" + }, + "installationIdRef": { + "type": "string" + }, + "applicationIdRef": { + "type": "string" + }, + "privateKeyRef": { + "type": "string" + } + } + } + ] + }, + "GithubAppSpec": { + "required": [ + "privateKeyRef" + ], + "type": "object", + "description": "This contains details of the Github API access credentials Specs such as references of private key", + "allOf": [ + { + "$ref": "#/components/schemas/GithubApiAccessSpec" + }, + { + "type": "object", + "properties": { + "installationId": { + "type": "string" + }, + "applicationId": { + "type": "string" + }, + "installationIdRef": { + "type": "string" + }, + "applicationIdRef": { + "type": "string" + }, + "privateKeyRef": { + "type": "string" + } + } + } + ] + }, + "GithubAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Http", + "Ssh" + ] + }, + "spec": { + "$ref": "#/components/schemas/GithubCredentials" + } + }, + "description": "This contains details of the information needed for Github access" + }, + "GithubConnector": { + "required": [ + "authentication", + "type", + "url" + ], + "type": "object", + "description": "This contains details of Github connectors", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "validationRepo": { + "type": "string" + }, + "authentication": { + "$ref": "#/components/schemas/GithubAuthentication" + }, + "apiAccess": { + "$ref": "#/components/schemas/GithubApiAccess" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "Account", + "Repo" + ] + } + } + } + ] + }, + "GithubCredentials": { + "type": "object", + "description": "This is a interface for details of the Github credentials" + }, + "GithubHttpCredentials": { + "required": [ + "type" + ], + "type": "object", + "description": "This contains details of the Github credentials used via HTTP connections", + "allOf": [ + { + "$ref": "#/components/schemas/GithubCredentials" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "UsernameToken", + "OAuth", + "GithubApp", + "Anonymous" + ] + }, + "spec": { + "$ref": "#/components/schemas/GithubHttpCredentialsSpec" + } + } + } + ] + }, + "GithubHttpCredentialsSpec": { + "type": "object", + "description": "This is a interface for details of the Github credentials Specs such as references of username and password" + }, + "GithubOauth": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the Github credentials Specs for oauth", + "allOf": [ + { + "$ref": "#/components/schemas/GithubHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + } + } + }, + { + "$ref": "#/components/schemas/GithubApiAccessSpec" + } + ] + }, + "GithubSshCredentials": { + "required": [ + "sshKeyRef" + ], + "type": "object", + "description": "This contains details of the Github credentials used via SSH connections", + "allOf": [ + { + "$ref": "#/components/schemas/GithubCredentials" + }, + { + "type": "object", + "properties": { + "sshKeyRef": { + "type": "string" + } + } + } + ] + }, + "GithubTokenSpec": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the information such as references of token needed for Github API access", + "allOf": [ + { + "$ref": "#/components/schemas/GithubApiAccessSpec" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "GithubUsernamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains details of the Github credentials Specs such as references of username and password", + "allOf": [ + { + "$ref": "#/components/schemas/GithubHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "GithubUsernameToken": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the Github credentials Specs such as references of username and token", + "allOf": [ + { + "$ref": "#/components/schemas/GithubHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "GitlabApiAccess": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Token", + "OAuth" + ] + }, + "spec": { + "$ref": "#/components/schemas/GitlabApiAccessSpec" + } + }, + "description": "This contains details of the information needed for Gitlab API access" + }, + "GitlabApiAccessSpec": { + "type": "object", + "description": "This contains details of the information such as references of username and password needed for Gitlab API access" + }, + "GitlabAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Http", + "Ssh" + ] + }, + "spec": { + "$ref": "#/components/schemas/GitlabCredentials" + } + }, + "description": "This contains details of the information needed for Gitlab access" + }, + "GitlabConnector": { + "required": [ + "authentication", + "type", + "url" + ], + "type": "object", + "description": "This contains details of Gitlab connectors", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "validationRepo": { + "type": "string" + }, + "authentication": { + "$ref": "#/components/schemas/GitlabAuthentication" + }, + "apiAccess": { + "$ref": "#/components/schemas/GitlabApiAccess" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "proxy": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "Account", + "Repo", + "Project" + ] + } + } + } + ] + }, + "GitlabCredentials": { + "type": "object", + "description": "This is a interface for details of the Gitlab credentials" + }, + "GitlabHttpCredentials": { + "required": [ + "spec", + "type" + ], + "type": "object", + "description": "This contains details of the Gitlab credentials used via HTTP connections", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabCredentials" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "UsernameToken", + "Kerberos", + "OAuth" + ] + }, + "spec": { + "$ref": "#/components/schemas/GitlabHttpCredentialsSpec" + } + } + } + ] + }, + "GitlabHttpCredentialsSpec": { + "type": "object", + "description": "This is a interface for details of the Gitlab credentials Specs such as references of username and password" + }, + "GitlabKerberos": { + "required": [ + "kerberosKeyRef" + ], + "type": "object", + "description": "This contains details of the Gitlab credentials Specs such as references of Keberos key", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "kerberosKeyRef": { + "type": "string" + } + } + } + ] + }, + "GitlabOauth": { + "required": [ + "refreshTokenRef", + "tokenRef" + ], + "type": "object", + "description": "This contains details of the information such as references of tokens needed for Gitlab API access", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + } + } + }, + { + "$ref": "#/components/schemas/GitlabApiAccessSpec" + } + ] + }, + "GitlabSshCredentials": { + "required": [ + "sshKeyRef" + ], + "type": "object", + "description": "This contains details of the Gitlab credentials used via SSH connections", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabCredentials" + }, + { + "type": "object", + "properties": { + "sshKeyRef": { + "type": "string" + } + } + } + ] + }, + "GitlabTokenSpec": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the information such as references of token needed for Gitlab API access", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabApiAccessSpec" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + }, + "apiUrl": { + "type": "string" + } + } + } + ] + }, + "GitlabUsernamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains details of the Gitlab credentials Specs such as references of username and password", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "GitlabUsernameToken": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the Gitlab credentials Specs such as references of username and token", + "allOf": [ + { + "$ref": "#/components/schemas/GitlabHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "HarnessApiAccess": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Token", + "Jwt_Token" + ] + }, + "spec": { + "$ref": "#/components/schemas/HarnessApiAccessSpec" + } + }, + "description": "This contains details of the information needed for Harness API access" + }, + "HarnessApiAccessSpec": { + "type": "object", + "description": "This contains details of the information such as references of username and password needed for Harness API access" + }, + "HarnessAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Http", + "Ssh" + ] + }, + "spec": { + "$ref": "#/components/schemas/HarnessHttpCredentials" + } + }, + "description": "This contains details of the information needed for Harness access" + }, + "HarnessConnector": { + "required": [ + "authentication", + "type", + "url" + ], + "type": "object", + "description": "This contains details of Harness connectors", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "validationRepo": { + "type": "string" + }, + "authentication": { + "$ref": "#/components/schemas/HarnessAuthentication" + }, + "apiAccess": { + "$ref": "#/components/schemas/HarnessApiAccess" + }, + "executeOnDelegate": { + "type": "boolean" + }, + "apiUrl": { + "type": "string" + }, + "gitBaseUrl": { + "type": "string" + }, + "vanityGitBaseUrl": { + "type": "string" + }, + "repoUiUrl": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "projectId": { + "type": "string" + }, + "orgId": { + "type": "string" + }, + "apiExternalUrl": { + "type": "string" + }, + "scopedRepoIdentifier": { + "type": "string" + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "type": { + "type": "string", + "enum": [ + "Account", + "Repo" + ] + } + } + } + ] + }, + "HarnessHttpCredentials": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernameToken" + ] + }, + "spec": { + "$ref": "#/components/schemas/HarnessHttpCredentialsSpec" + } + }, + "description": "This contains details of the Harness credentials used via HTTP connections" + }, + "HarnessHttpCredentialsSpec": { + "type": "object", + "description": "This is a interface for details of the Harness credentials Specs such as references of username and password" + }, + "HarnessJWTTokenSpec": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the information such as references of token needed for Harness API access", + "allOf": [ + { + "$ref": "#/components/schemas/HarnessApiAccessSpec" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "HarnessTokenSpec": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the information such as references of token needed for Harness API access", + "allOf": [ + { + "$ref": "#/components/schemas/HarnessApiAccessSpec" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "HarnessUsernameToken": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This contains details of the Harness credentials Specs such as references of username and token", + "allOf": [ + { + "$ref": "#/components/schemas/HarnessHttpCredentialsSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "HostDTO": { + "required": [ + "hostname" + ], + "type": "object", + "properties": { + "hostname": { + "type": "string" + }, + "hostAttributes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "This entity contains the Host details" + }, + "HttpHelmAuthCredentials": { + "type": "object", + "description": "This contains http helm auth credentials" + }, + "HttpHelmAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "Anonymous" + ] + }, + "spec": { + "$ref": "#/components/schemas/HttpHelmAuthCredentials" + } + }, + "description": "This contains http helm authentication details" + }, + "HttpHelmConnector": { + "required": [ + "helmRepoUrl" + ], + "type": "object", + "description": "This contains http helm connector details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "helmRepoUrl": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/HttpHelmAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "HttpHelmUsernamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains http helm username password details", + "allOf": [ + { + "$ref": "#/components/schemas/HttpHelmAuthCredentials" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "JDBCAuthCredentialsDTO": { + "type": "object", + "description": "This contains details of credentials for JDBC Authentication" + }, + "JDBCAuthenticationDTO": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "ServiceAccount" + ] + }, + "spec": { + "$ref": "#/components/schemas/JDBCAuthCredentialsDTO" + } + }, + "description": "This entity contains the details for JDBC Authentication" + }, + "JDBCConnector": { + "required": [ + "url" + ], + "type": "object", + "description": "This contains details of the JDBC connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/JDBCAuthenticationDTO" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "JDBCServiceAccountDTO": { + "required": [ + "serviceAccountTokenRef" + ], + "type": "object", + "description": "This entity contains kubernetes service account details", + "allOf": [ + { + "$ref": "#/components/schemas/JDBCAuthCredentialsDTO" + }, + { + "type": "object", + "properties": { + "serviceAccountTokenRef": { + "type": "string" + } + } + } + ] + }, + "JDBCUserNamePasswordDTO": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the JDBC Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/JDBCAuthCredentialsDTO" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "JenkinsAuthCredentialsDTO": { + "type": "object", + "description": "This contains details of credentials for Docker Authentication" + }, + "JenkinsAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "Anonymous", + "Bearer Token(HTTP Header)" + ] + }, + "spec": { + "$ref": "#/components/schemas/JenkinsAuthCredentialsDTO" + } + }, + "description": "This entity contains the details for Jenkins Authentication" + }, + "JenkinsBearerTokenDTO": { + "required": [ + "tokenRef" + ], + "type": "object", + "description": "This entity contains the details of the Jenkins Bearer token", + "allOf": [ + { + "$ref": "#/components/schemas/JenkinsAuthCredentialsDTO" + }, + { + "type": "object", + "properties": { + "tokenRef": { + "type": "string" + } + } + } + ] + }, + "JenkinsConnector": { + "required": [ + "jenkinsUrl" + ], + "type": "object", + "description": "Jenkins Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "jenkinsUrl": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/JenkinsAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "JenkinsUserNamePasswordDTO": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the Jenkins Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/JenkinsAuthCredentialsDTO" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "JiraAuthCredentials": { + "type": "object", + "description": "This contains details of credentials for Jira Authentication" + }, + "JiraAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "PersonalAccessToken" + ] + }, + "spec": { + "$ref": "#/components/schemas/JiraAuthCredentials" + } + }, + "description": "This entity contains the details for Jira Authentication" + }, + "JiraConnector": { + "required": [ + "auth", + "jiraUrl" + ], + "type": "object", + "description": "JIRA Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "jiraUrl": { + "type": "string" + }, + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "auth": { + "$ref": "#/components/schemas/JiraAuthentication" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "JiraPATPassword": { + "required": [ + "patRef" + ], + "type": "object", + "description": "This entity contains the details of the Jira PAT", + "allOf": [ + { + "$ref": "#/components/schemas/JiraAuthCredentials" + }, + { + "type": "object", + "properties": { + "patRef": { + "type": "string" + } + } + } + ] + }, + "JiraUserNamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the Jira Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/JiraAuthCredentials" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "KubernetesAuth": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "ClientKeyCert", + "ServiceAccount", + "OpenIdConnect" + ] + }, + "spec": { + "$ref": "#/components/schemas/KubernetesAuthCredential" + } + }, + "description": "This contains kubernetes auth details" + }, + "KubernetesAuthCredential": { + "type": "object", + "description": "This contains kubernetes auth credentials" + }, + "KubernetesClientKeyCert": { + "required": [ + "clientCertRef", + "clientKeyRef" + ], + "type": "object", + "description": "This contains kubernetes client key certificate details", + "allOf": [ + { + "$ref": "#/components/schemas/KubernetesAuthCredential" + }, + { + "type": "object", + "properties": { + "caCertRef": { + "type": "string" + }, + "clientCertRef": { + "type": "string" + }, + "clientKeyRef": { + "type": "string" + }, + "clientKeyPassphraseRef": { + "type": "string" + }, + "clientKeyAlgo": { + "type": "string" + } + } + } + ] + }, + "KubernetesClusterConfig": { + "required": [ + "credential" + ], + "type": "object", + "description": "This contains kubernetes cluster config details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/KubernetesCredential" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "KubernetesClusterDetails": { + "required": [ + "auth", + "masterUrl" + ], + "type": "object", + "description": "This contains kubernetes cluster details", + "allOf": [ + { + "$ref": "#/components/schemas/KubernetesCredentialSpec" + }, + { + "type": "object", + "properties": { + "masterUrl": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/KubernetesAuth" + } + } + } + ] + }, + "KubernetesCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "InheritFromDelegate", + "ManualConfig" + ] + }, + "spec": { + "$ref": "#/components/schemas/KubernetesCredentialSpec" + } + }, + "description": "This contains kubernetes credentials details" + }, + "KubernetesCredentialSpec": { + "type": "object", + "description": "This contains kubernetes credentials spec details" + }, + "KubernetesOpenIdConnect": { + "required": [ + "oidcClientIdRef", + "oidcIssuerUrl", + "oidcPasswordRef" + ], + "type": "object", + "description": "This contains kubernetes open id connect details", + "allOf": [ + { + "$ref": "#/components/schemas/KubernetesAuthCredential" + }, + { + "type": "object", + "properties": { + "oidcIssuerUrl": { + "type": "string" + }, + "oidcUsername": { + "type": "string" + }, + "oidcUsernameRef": { + "type": "string" + }, + "oidcClientIdRef": { + "type": "string" + }, + "oidcPasswordRef": { + "type": "string" + }, + "oidcSecretRef": { + "type": "string" + }, + "oidcScopes": { + "type": "string" + } + } + } + ] + }, + "KubernetesServiceAccount": { + "required": [ + "serviceAccountTokenRef" + ], + "type": "object", + "description": "This contains kubernetes service account details", + "allOf": [ + { + "$ref": "#/components/schemas/KubernetesAuthCredential" + }, + { + "type": "object", + "properties": { + "serviceAccountTokenRef": { + "type": "string" + }, + "caCertRef": { + "type": "string" + } + } + } + ] + }, + "KubernetesUserNamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains kubernetes username password details", + "allOf": [ + { + "$ref": "#/components/schemas/KubernetesAuthCredential" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "LocalConnector": { + "type": "object", + "description": "This contains the local connector information.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "ignoreTestConnection": { + "type": "boolean" + }, + "default": { + "type": "boolean" + } + } + } + ] + }, + "MsTeamsConnector": { + "required": [ + "apiAccessType" + ], + "type": "object", + "description": "MsTeams Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "tenantId": { + "type": "string" + }, + "clientId": { + "type": "string" + }, + "apiAccessType": { + "type": "string", + "enum": [ + "TOKEN", + "OAUTH" + ] + }, + "clientSecretRef": { + "type": "string" + }, + "accessTokenRef": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "NameValuePairWithDefault": { + "required": [ + "name", + "type", + "value" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + }, + "type": { + "type": "string" + }, + "useAsDefault": { + "type": "boolean" + } + } + }, + "NewRelicConnectorDTO": { + "required": [ + "apiKeyRef", + "newRelicAccountId", + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "newRelicAccountId": { + "type": "string" + }, + "url": { + "type": "string" + }, + "apiKeyRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "NexusAuthCredentials": { + "type": "object", + "description": "This entity contains the details of credentials for Nexus Authentication" + }, + "NexusAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "This entity contains the details of Nexus Authentication Type", + "enum": [ + "UsernamePassword", + "Anonymous" + ] + }, + "spec": { + "$ref": "#/components/schemas/NexusAuthCredentials" + } + }, + "description": "This entity contains the details for Nexus Authentication" + }, + "NexusConnector": { + "required": [ + "nexusServerUrl", + "version" + ], + "type": "object", + "description": "Nexus Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "nexusServerUrl": { + "type": "string" + }, + "version": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/NexusAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "NexusUsernamePasswordAuth": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the Nexus Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/NexusAuthCredentials" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "OciHelmAuthCredentials": { + "type": "object", + "description": "This contains oci helm auth credentials" + }, + "OciHelmAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "Anonymous" + ] + }, + "spec": { + "$ref": "#/components/schemas/OciHelmAuthCredentials" + } + }, + "description": "This contains oci helm authentication details" + }, + "OciHelmConnector": { + "required": [ + "helmRepoUrl" + ], + "type": "object", + "description": "This contains Oci helm connector details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "helmRepoUrl": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/OciHelmAuthentication" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "OciHelmUsernamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains oci helm username password details", + "allOf": [ + { + "$ref": "#/components/schemas/OciHelmAuthCredentials" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "OidcAccessTokenOptions": { + "type": "object", + "properties": { + "userProject": { + "type": "string" + } + } + }, + "OidcChartmuseumGcpConfig": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "audience": { + "type": "string" + }, + "subject_token_type": { + "type": "string" + }, + "token_url": { + "type": "string" + }, + "service_account_impersonation_url": { + "type": "string" + } + } + }, + "OidcWorkloadAccessTokenRequest": { + "type": "object", + "properties": { + "audience": { + "type": "string" + }, + "grant_type": { + "type": "string" + }, + "requested_token_type": { + "type": "string" + }, + "scope": { + "type": "string" + }, + "subject_token_type": { + "type": "string" + }, + "subject_token": { + "type": "string" + }, + "options": { + "$ref": "#/components/schemas/OidcAccessTokenOptions" + } + } + }, + "PageResponseCcmK8sConnectorResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ccmK8sConnectorResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "PagerDutyConnectorDTO": { + "required": [ + "apiTokenRef" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "apiTokenRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "PhysicalDataCenterConnectorDTO": { + "type": "object", + "description": "This contains Physical Data Center connector details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "hosts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HostDTO" + } + } + } + } + ] + }, + "PrometheusConnectorDTO": { + "required": [ + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "username": { + "type": "string" + }, + "passwordRef": { + "type": "string" + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CustomHealthKeyAndValue" + } + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "RancherAuthentication": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "BearerToken" + ] + }, + "spec": { + "$ref": "#/components/schemas/RancherConnectorConfigAuthentication" + } + }, + "description": "This contains rancher authentication details" + }, + "RancherConnector": { + "type": "object", + "description": "This contains Rancher connector details", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "credential": { + "$ref": "#/components/schemas/RancherConnectorConfig" + } + } + } + ] + }, + "RancherConnectorBearerTokenAuthentication": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This contains rancher bearer token auth details", + "allOf": [ + { + "$ref": "#/components/schemas/RancherConnectorConfigAuthentication" + }, + { + "type": "object", + "properties": { + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "RancherConnectorConfig": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "ManualConfig" + ] + }, + "spec": { + "$ref": "#/components/schemas/RancherConnectorConfigAuth" + } + }, + "description": "This contains rancher connector config details" + }, + "RancherConnectorConfigAuth": { + "required": [ + "auth", + "rancherUrl" + ], + "type": "object", + "properties": { + "rancherUrl": { + "type": "string" + }, + "auth": { + "$ref": "#/components/schemas/RancherAuthentication" + } + }, + "description": "This contains rancher connector authentication details" + }, + "RancherConnectorConfigAuthentication": { + "type": "object", + "description": "This contains rancher auth credentials" + }, + "ResponseDTOPageResponseCcmK8sConnectorResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseCcmK8sConnectorResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceNowADFS": { + "required": [ + "adfsUrl", + "certificateRef", + "clientIdRef", + "privateKeyRef", + "resourceIdRef" + ], + "type": "object", + "description": "This entity contains the details of the Service Now ADFS", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceNowAuthCredentials" + }, + { + "type": "object", + "properties": { + "certificateRef": { + "type": "string" + }, + "privateKeyRef": { + "type": "string" + }, + "clientIdRef": { + "type": "string" + }, + "resourceIdRef": { + "type": "string" + }, + "adfsUrl": { + "type": "string" + } + } + } + ] + }, + "ServiceNowAuthCredentials": { + "type": "object", + "description": "This contains details of credentials for Service Now Authentication" + }, + "ServiceNowAuthentication": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "AdfsClientCredentialsWithCertificate", + "RefreshTokenGrantType" + ] + }, + "spec": { + "$ref": "#/components/schemas/ServiceNowAuthCredentials" + } + }, + "description": "This entity contains the details for Service Now Authentication" + }, + "ServiceNowConnector": { + "required": [ + "auth", + "serviceNowUrl" + ], + "type": "object", + "description": "ServiceNow Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "serviceNowUrl": { + "type": "string" + }, + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "auth": { + "$ref": "#/components/schemas/ServiceNowAuthentication" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "ServiceNowRefreshToken": { + "required": [ + "clientIdRef", + "refreshTokenRef", + "tokenUrl" + ], + "type": "object", + "description": "This entity contains the details of the Service Now Refresh Token", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceNowAuthCredentials" + }, + { + "type": "object", + "properties": { + "tokenUrl": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + }, + "clientIdRef": { + "type": "string" + }, + "clientSecretRef": { + "type": "string" + }, + "scope": { + "type": "string" + } + } + } + ] + }, + "ServiceNowUserNamePassword": { + "required": [ + "passwordRef" + ], + "type": "object", + "description": "This entity contains the details of the Service Now Username and Password", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceNowAuthCredentials" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + } + } + } + ] + }, + "SignalFXConnectorDTO": { + "required": [ + "apiTokenRef", + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "apiTokenRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "SlackConnector": { + "required": [ + "apiAccessType" + ], + "type": "object", + "description": "Slack Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "apiAccessType": { + "type": "string", + "enum": [ + "TOKEN", + "OAUTH" + ] + }, + "botUserTokenRef": { + "type": "string" + }, + "accessTokenRef": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "SplunkConnector": { + "required": [ + "accountId", + "splunkUrl" + ], + "type": "object", + "description": "This contains the Splunk Connector configuration", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "splunkUrl": { + "type": "string" + }, + "username": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "passwordRef": { + "type": "string" + }, + "tokenRef": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "UsernamePassword", + "Anonymous", + "Bearer Token(HTTP Header)", + "HEC Token" + ] + } + } + } + ] + }, + "SpotConnector": { + "required": [ + "credential" + ], + "type": "object", + "description": "This contains details of the Spot connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/SpotCredential" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "SpotCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "PermanentTokenConfig" + ] + }, + "spec": { + "$ref": "#/components/schemas/SpotCredentialSpec" + } + }, + "description": "This contains details of the Spot connector credential" + }, + "SpotCredentialSpec": { + "type": "object", + "description": "This contains Spot connector credential spec" + }, + "SpotPermanentTokenConfigSpec": { + "required": [ + "apiTokenRef" + ], + "type": "object", + "description": "This contains Spot permanent token connector spec", + "allOf": [ + { + "$ref": "#/components/schemas/SpotCredentialSpec" + }, + { + "type": "object", + "properties": { + "spotAccountId": { + "type": "string" + }, + "spotAccountIdRef": { + "type": "string" + }, + "apiTokenRef": { + "type": "string" + } + } + } + ] + }, + "SumoLogicConnectorDTO": { + "required": [ + "accessIdRef", + "accessKeyRef", + "url" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "accessIdRef": { + "type": "string" + }, + "accessKeyRef": { + "type": "string" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "TasConnector": { + "required": [ + "credential" + ], + "type": "object", + "description": "This contains details of the Tas connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "credential": { + "$ref": "#/components/schemas/TasCredential" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "TasCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "ManualConfig" + ] + }, + "spec": { + "$ref": "#/components/schemas/TasCredentialSpec" + } + }, + "description": "This contains Tas connector credentials" + }, + "TasCredentialSpec": { + "type": "object", + "description": "This contains Tas connector credentials spec" + }, + "TasManualDetails": { + "required": [ + "endpointUrl", + "passwordRef" + ], + "type": "object", + "description": "This contains Tas manual credentials connector details", + "allOf": [ + { + "$ref": "#/components/schemas/TasCredentialSpec" + }, + { + "type": "object", + "properties": { + "username": { + "type": "string" + }, + "endpointUrl": { + "type": "string", + "description": "Endpoint URL of the TAS Cluster." + }, + "usernameRef": { + "type": "string" + }, + "passwordRef": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + } + } + } + ] + }, + "TemplateLinkConfigForCustomSecretManager": { + "required": [ + "templateRef", + "versionLabel" + ], + "type": "object", + "properties": { + "templateRef": { + "type": "string" + }, + "versionLabel": { + "pattern": "^[0-9a-zA-Z][^\\s/&]{0,63}$", + "type": "string" + }, + "templateInputs": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NameValuePairWithDefault" + } + } + } + } + }, + "TerraformCloudConnector": { + "required": [ + "credential", + "terraformCloudUrl" + ], + "type": "object", + "description": "This contains details of the Terraform Cloud connector", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "terraformCloudUrl": { + "type": "string" + }, + "credential": { + "$ref": "#/components/schemas/TerraformCloudCredential" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executeOnDelegate": { + "type": "boolean" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "TerraformCloudCredential": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "ApiToken" + ] + }, + "spec": { + "$ref": "#/components/schemas/TerraformCloudCredentialSpec" + } + }, + "description": "This contains Terraform Cloud connector credentials" + }, + "TerraformCloudCredentialSpec": { + "type": "object", + "description": "This contains Terraform Cloud connector credentials spec" + }, + "TerraformCloudTokenCredentials": { + "required": [ + "apiToken" + ], + "type": "object", + "description": "This contains Terraform Cloud API TOKEN credentials connector details", + "allOf": [ + { + "$ref": "#/components/schemas/TerraformCloudCredentialSpec" + }, + { + "type": "object", + "properties": { + "apiToken": { + "type": "string" + } + } + } + ] + }, + "VaultConnector": { + "required": [ + "renewalIntervalMinutes", + "vaultUrl" + ], + "type": "object", + "description": "This contains the Vault Connector configuration.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "authToken": { + "type": "string", + "description": "This is the authentication token for Vault." + }, + "basePath": { + "type": "string", + "description": "This is the location of the Vault directory where Secret will be stored." + }, + "vaultUrl": { + "type": "string", + "description": "URL of the HashiCorp Vault." + }, + "renewalIntervalMinutes": { + "type": "integer", + "description": "This is the time interval for token renewal.", + "format": "int64" + }, + "secretEngineManuallyConfigured": { + "type": "boolean", + "description": "Manually entered Secret Engine." + }, + "secretEngineName": { + "type": "string", + "description": "Name of the Secret Engine." + }, + "appRoleId": { + "type": "string", + "description": "ID of App Role." + }, + "appRolePath": { + "type": "string", + "description": "Custom Path to the App Role" + }, + "secretId": { + "type": "string", + "description": "ID of the Secret." + }, + "secretEngineVersion": { + "type": "integer", + "description": "Version of Secret Engine.", + "format": "int32" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager.", + "items": { + "type": "string", + "description": "List of Delegate Selectors that belong to the same Delegate and are used to connect to the Secret Manager." + } + }, + "namespace": { + "type": "string", + "description": "This is the Vault namespace where Secret will be created." + }, + "sinkPath": { + "type": "string", + "description": "This is the location at which auth token is to be read from." + }, + "useVaultAgent": { + "type": "boolean", + "description": "Boolean value to indicate if Vault Agent is used for authentication." + }, + "useAwsIam": { + "type": "boolean", + "description": "Boolean value to indicate if Aws Iam is used for authentication." + }, + "awsRegion": { + "type": "string", + "description": "This is the Aws region where aws iam auth will happen." + }, + "vaultAwsIamRole": { + "type": "string", + "description": "This is the Vault role defined to bind to aws iam account/role being accessed." + }, + "useK8sAuth": { + "type": "boolean", + "description": "Boolean value to indicate if K8s Auth is used for authentication." + }, + "vaultK8sAuthRole": { + "type": "string", + "description": "This is the role where K8s auth will happen." + }, + "serviceAccountTokenPath": { + "type": "string", + "description": "This is the SA token path where the token is mounted in the K8s Pod." + }, + "k8sAuthEndpoint": { + "type": "string", + "description": "This is the path where kubernetes auth is enabled in Vault." + }, + "renewAppRoleToken": { + "type": "boolean", + "description": "Boolean value to indicate if appRole token renewal is enabled or not." + }, + "enableCache": { + "type": "boolean", + "description": "Boolean value to indicate if cache is enabled for App Role Token." + }, + "ignoreTestConnection": { + "type": "boolean" + }, + "useJwtAuth": { + "type": "boolean", + "description": "Boolean value to indicate if JWT Auth is used for authentication." + }, + "jwtAuthRole": { + "type": "string", + "description": "This is the role name which is created to perform JWT auth method." + }, + "jwtAuthPath": { + "type": "string", + "description": "This specifies mount path where JWT auth method is enabled." + }, + "executeOnDelegate": { + "type": "boolean", + "description": "Should the secret manager execute operations on the delegate, or via Harness platform" + }, + "proxy": { + "type": "boolean", + "description": "Whether to use proxy for connecting to Vault server" + }, + "accessType": { + "type": "string", + "enum": [ + "APP_ROLE", + "TOKEN", + "VAULT_AGENT", + "AWS_IAM", + "K8s_AUTH", + "JWT" + ] + }, + "readOnly": { + "type": "boolean" + }, + "default": { + "type": "boolean" + }, + "ngCertificateRef": { + "type": "string" + }, + "xvaultAwsIamServerId": { + "type": "string", + "description": "This is the Aws Iam Header Server ID that has been configured for this Aws Iam instance." + } + } + } + ] + }, + "ZoomConnector": { + "required": [ + "apiAccessType" + ], + "type": "object", + "description": "Zoom Connector details.", + "allOf": [ + { + "$ref": "#/components/schemas/ConnectorConfig" + }, + { + "type": "object", + "properties": { + "zoomAccountId": { + "type": "string" + }, + "clientId": { + "type": "string" + }, + "zoomUserId": { + "type": "string" + }, + "apiAccessType": { + "type": "string", + "enum": [ + "TOKEN", + "OAUTH" + ] + }, + "clientSecretRef": { + "type": "string" + }, + "accessTokenRef": { + "type": "string" + }, + "refreshTokenRef": { + "type": "string" + }, + "ignoreTestConnection": { + "type": "boolean" + } + } + } + ] + }, + "ccmK8sConnectorResponse": { + "type": "object", + "properties": { + "k8sConnector": { + "$ref": "#/components/schemas/ConnectorResponse1" + }, + "ccmk8sConnector": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectorResponse1" + } + } + }, + "description": "This has the CCM K8s Connector details along with its metadata." + }, + "ConnectorFilterProperties": { + "type": "object", + "properties": { + "connectorNames": { + "type": "array", + "description": "This is the list of the Connector names on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Connector names on which the filter will be applied." + } + }, + "connectorIdentifiers": { + "type": "array", + "description": "This is the list of the Connector identifiers on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Connector identifiers on which the filter will be applied." + } + }, + "description": { + "type": "string", + "description": "Description of filter created." + }, + "types": { + "type": "array", + "description": "This is the list of the Connector types on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Connector types on which the filter will be applied.", + "enum": [ + "K8sCluster", + "Git", + "Splunk", + "AppDynamics", + "Prometheus", + "Dynatrace", + "Vault", + "AzureKeyVault", + "DockerRegistry", + "Local", + "AwsKms", + "GcpKms", + "AwsSecretManager", + "Gcp", + "Aws", + "Azure", + "Artifactory", + "Jira", + "Nexus", + "Github", + "Gitlab", + "Bitbucket", + "Codecommit", + "CEAws", + "CEAzure", + "GcpCloudCost", + "CEK8sCluster", + "HttpHelmRepo", + "NewRelic", + "Datadog", + "SumoLogic", + "PagerDuty", + "CustomHealth", + "ServiceNow", + "ErrorTracking", + "Pdc", + "AzureRepo", + "Jenkins", + "OciHelmRepo", + "CustomSecretManager", + "ElasticSearch", + "GcpSecretManager", + "AzureArtifacts", + "Tas", + "Spot", + "Bamboo", + "TerraformCloud", + "SignalFX", + "Harness", + "Rancher", + "JDBC", + "Zoom", + "MsTeams", + "Confluence", + "Slack" + ] + } + }, + "categories": { + "type": "array", + "description": "This is the list of the Connector category on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Connector category on which the filter will be applied.", + "enum": [ + "CLOUD_PROVIDER", + "SECRET_MANAGER", + "CLOUD_COST", + "ARTIFACTORY", + "CODE_REPO", + "MONITORING", + "TICKETING", + "DATABASE", + "COMMUNICATION", + "DOCUMENTATION" + ] + } + }, + "connectivityStatuses": { + "type": "array", + "description": "This is the list of the Connector status on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Connector status on which the filter will be applied.", + "enum": [ + "SUCCESS", + "FAILURE", + "PARTIAL", + "UNKNOWN", + "PENDING" + ] + } + }, + "inheritingCredentialsFromDelegate": { + "type": "boolean", + "description": "Boolean value to indicate if the Connector is using credentials from the Delegate to connect." + }, + "connectorConnectivityModes": { + "type": "array", + "description": "Connector connectivity mode on which the filter is applied", + "items": { + "type": "string", + "description": "Connector connectivity mode on which the filter is applied", + "enum": [ + "DELEGATE", + "MANAGER" + ] + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "enum": [ + "Connector" + ] + } + }, + "description": "Properties of the Connector Filter defined in Harness" + }, + "SortOrder": { + "type": "object", + "properties": { + "fieldName": { + "type": "string" + }, + "orderType": { + "type": "string", + "enum": [ + "ASC", + "DESC" + ] + } + } + }, + "ResponseDTOConnectorResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ConnectorResponse1" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Connector2": { + "type": "object", + "properties": { + "connector": { + "$ref": "#/components/schemas/ConnectorInfo" + } + }, + "description": "This is the view of Connector entity as defined in Harness." + }, + "FieldValues": { + "type": "object", + "properties": { + "fieldValues": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "ResponseDTOFieldValues": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/FieldValues" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOString": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "string" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ConnectorCatalogueItem": { + "type": "object", + "properties": { + "category": { + "type": "string", + "description": "Category of this Connector.", + "enum": [ + "CLOUD_PROVIDER", + "SECRET_MANAGER", + "CLOUD_COST", + "ARTIFACTORY", + "CODE_REPO", + "MONITORING", + "TICKETING", + "DATABASE", + "COMMUNICATION", + "DOCUMENTATION" + ] + }, + "connectors": { + "uniqueItems": true, + "type": "array", + "description": "List of Connector types corresponding to a specific category.", + "items": { + "type": "string", + "description": "List of Connector types corresponding to a specific category.", + "enum": [ + "K8sCluster", + "Git", + "Splunk", + "AppDynamics", + "Prometheus", + "Dynatrace", + "Vault", + "AzureKeyVault", + "DockerRegistry", + "Local", + "AwsKms", + "GcpKms", + "AwsSecretManager", + "Gcp", + "Aws", + "Azure", + "Artifactory", + "Jira", + "Nexus", + "Github", + "Gitlab", + "Bitbucket", + "Codecommit", + "CEAws", + "CEAzure", + "GcpCloudCost", + "CEK8sCluster", + "HttpHelmRepo", + "NewRelic", + "Datadog", + "SumoLogic", + "PagerDuty", + "CustomHealth", + "ServiceNow", + "ErrorTracking", + "Pdc", + "AzureRepo", + "Jenkins", + "OciHelmRepo", + "CustomSecretManager", + "ElasticSearch", + "GcpSecretManager", + "AzureArtifacts", + "Tas", + "Spot", + "Bamboo", + "TerraformCloud", + "SignalFX", + "Harness", + "Rancher", + "JDBC", + "Zoom", + "MsTeams", + "Confluence", + "Slack" + ] + } + } + }, + "description": "This has details of the Connector Catalogue in Harness." + }, + "ConnectorCatalogueResponse": { + "type": "object", + "properties": { + "catalogue": { + "type": "array", + "description": "List of Connector category and Connector types corresponding to a specific category.", + "items": { + "$ref": "#/components/schemas/ConnectorCatalogueItem" + } + } + }, + "description": "This has details of the retrieved Connector Catalogue." + }, + "ResponseDTOConnectorCatalogueResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ConnectorCatalogueResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ConnectorStatistics": { + "type": "object", + "properties": { + "typeStats": { + "type": "array", + "description": "Count of Connectors grouped by type.", + "items": { + "$ref": "#/components/schemas/ConnectorTypeStats" + } + }, + "statusStats": { + "type": "array", + "description": "Count of Connectors grouped by status.", + "items": { + "$ref": "#/components/schemas/ConnectorStatusStats" + } + } + }, + "description": "This has the count for all Connector Types and Status defined in Harness" + }, + "ConnectorStatusStats": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "PARTIAL", + "UNKNOWN", + "PENDING" + ] + }, + "count": { + "type": "integer", + "format": "int32" + } + }, + "description": "Count of Connectors grouped by status." + }, + "ConnectorTypeStats": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "K8sCluster", + "Git", + "Splunk", + "AppDynamics", + "Prometheus", + "Dynatrace", + "Vault", + "AzureKeyVault", + "DockerRegistry", + "Local", + "AwsKms", + "GcpKms", + "AwsSecretManager", + "Gcp", + "Aws", + "Azure", + "Artifactory", + "Jira", + "Nexus", + "Github", + "Gitlab", + "Bitbucket", + "Codecommit", + "CEAws", + "CEAzure", + "GcpCloudCost", + "CEK8sCluster", + "HttpHelmRepo", + "NewRelic", + "Datadog", + "SumoLogic", + "PagerDuty", + "CustomHealth", + "ServiceNow", + "ErrorTracking", + "Pdc", + "AzureRepo", + "Jenkins", + "OciHelmRepo", + "CustomSecretManager", + "ElasticSearch", + "GcpSecretManager", + "AzureArtifacts", + "Tas", + "Spot", + "Bamboo", + "TerraformCloud", + "SignalFX", + "Harness", + "Rancher", + "JDBC", + "Zoom", + "MsTeams", + "Confluence", + "Slack" + ] + }, + "count": { + "type": "integer", + "format": "int32" + } + }, + "description": "Count of Connectors grouped by type." + }, + "ResponseDTOConnectorStatistics": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ConnectorStatistics" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseConnectorResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectorResponse1" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseConnectorResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseConnectorResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListConnectorResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectorResponse1" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ConnectorValidationResult": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "Connectivity status of a Connector.", + "enum": [ + "SUCCESS", + "FAILURE", + "PARTIAL", + "UNKNOWN", + "PENDING" + ] + }, + "errors": { + "type": "array", + "description": "List of errors and their details.", + "items": { + "$ref": "#/components/schemas/ErrorDetail" + } + }, + "errorSummary": { + "type": "string", + "description": "Summary of errors." + }, + "testedAt": { + "type": "integer", + "description": "Time at which Test Connection was completed ", + "format": "int64" + }, + "delegateId": { + "type": "string", + "description": "ID of Delegate on which Test Connection is executed." + }, + "taskId": { + "type": "string", + "description": "ID of Delegate Task." + } + }, + "description": "This has validation details for the Connector defined in Harness." + }, + "ResponseDTOConnectorValidationResult": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ConnectorValidationResult" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListString": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "type": "string" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EmbeddedUserDetailsDTO": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "email": { + "type": "string" + } + }, + "description": "Updated by user details" + }, + "File": { + "required": [ + "name", + "parentIdentifier", + "type" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the File or Folder" + }, + "name": { + "type": "string", + "description": "Name of the File or Folder" + }, + "fileUsage": { + "type": "string", + "description": "This specifies the file usage" + }, + "type": { + "type": "string", + "description": "This specifies the type of the File", + "enum": [ + "FILE", + "FOLDER" + ] + }, + "parentIdentifier": { + "type": "string", + "description": "This specifies parent directory identifier. The value of Root directory identifier is Root." + }, + "description": { + "type": "string", + "description": "Description of the File or Folder" + }, + "tags": { + "type": "array", + "description": "Tags", + "items": { + "$ref": "#/components/schemas/NGTag" + } + }, + "mimeType": { + "type": "string", + "description": "Mime type of the File" + }, + "path": { + "type": "string", + "description": "The path of the File or Folder", + "readOnly": true + }, + "draft": { + "type": "boolean", + "description": "Whether File is draft or not", + "readOnly": true + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "lastModifiedBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Last modified time for the File or Folder", + "format": "int64", + "readOnly": true + } + }, + "description": "This is details of the File or Folder entity defined in Harness." + }, + "NGTag": { + "required": [ + "key" + ], + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Tag key" + }, + "value": { + "type": "string", + "description": "Tag value" + } + }, + "description": "This is the view of the tags of the entity." + }, + "ResponseDTOFile": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/File" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "FileStoreRequest": { + "required": [ + "file" + ], + "type": "object", + "properties": { + "file": { + "$ref": "#/components/schemas/File" + } + } + }, + "ResponseDTOSetEmbeddedUserDetailsDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EntityDetail": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "CreatePR", + "MergePR", + "Projects", + "Pipelines", + "PipelineSteps", + "Http", + "Email", + "JiraCreate", + "JiraUpdate", + "JiraApproval", + "HarnessApproval", + "CustomApproval", + "Barrier", + "Queue", + "FlagConfiguration", + "ShellScript", + "K8sCanaryDeploy", + "K8sApply", + "K8sBlueGreenDeploy", + "K8sRollingDeploy", + "K8sRollingRollback", + "K8sScale", + "K8sDelete", + "K8sBGSwapServices", + "K8sCanaryDelete", + "TerraformApply", + "TerraformPlan", + "TerraformDestroy", + "TerraformRollback", + "HelmDeploy", + "HelmRollback", + "Connectors", + "Secrets", + "Files", + "Service", + "Environment", + "EnvironmentGroup", + "InputSets", + "CvConfig", + "Verify", + "Delegates", + "DelegateConfigurations", + "CvVerificationJob", + "IntegrationStage", + "IntegrationSteps", + "SecurityStage", + "SecuritySteps", + "CvKubernetesActivitySource", + "DeploymentSteps", + "DeploymentStage", + "ApprovalStage", + "PipelineStage", + "FeatureFlagStage", + "Template", + "TemplateStage", + "CustomDeployment", + "Triggers", + "MonitoredService", + "GitRepositories", + "FeatureFlags", + "ServiceNowApproval", + "ServiceNowCreate", + "ServiceNowUpdate", + "ServiceNowImportSet", + "GovernancePolicies", + "Policy", + "Run", + "RunTests", + "Plugin", + "RestoreCacheGCS", + "RestoreCacheS3", + "SaveCacheGCS", + "SaveCacheS3", + "Security", + "AquaTrivy", + "AWSECR", + "Bandit", + "BlackDuck", + "Brakeman", + "Burp", + "Checkmarx", + "Clair", + "DataTheorem", + "DockerContentTrust", + "External", + "FortifyOnDemand", + "Grype", + "JfrogXray", + "Mend", + "Metasploit", + "Nessus", + "NexusIQ", + "Nikto", + "Nmap", + "Openvas", + "Owasp", + "PrismaCloud", + "Prowler", + "Qualys", + "Reapsaw", + "ShiftLeft", + "Sniper", + "Snyk", + "Sonarqube", + "Sysdig", + "Tenable", + "Veracode", + "Zap", + "GitClone", + "ArtifactoryUpload", + "GCSUpload", + "S3Upload", + "BuildAndPushGCR", + "BuildAndPushGAR", + "BuildAndPushECR", + "BuildAndPushDockerRegistry", + "CreateStack", + "DeleteStack", + "ServerlessAwsLambdaDeploy", + "ServerlessAwsLambdaRollback", + "CustomStage", + "RollbackStack", + "Infrastructure", + "Command", + "StrategyNode", + "AzureSlotDeployment", + "AzureTrafficShift", + "FetchInstanceScript", + "AzureSwapSlot", + "AzureWebAppRollback", + "JenkinsBuild", + "EcsRollingDeploy", + "EcsRollingRollback", + "EcsCanaryDeploy", + "EcsCanaryDelete", + "AzureCreateARMResource", + "BuildAndPushACR", + "AzureCreateBPResource", + "AzureARMRollback", + "Background", + "Wait", + "ArtifactSource", + "EcsBlueGreenCreateService", + "EcsBlueGreenSwapTargetGroups", + "EcsBlueGreenRollback", + "ShellScriptProvision", + "Freeze", + "GitOpsUpdateReleaseRepo", + "GitOpsFetchLinkedApps", + "EcsRunTask", + "Chaos", + "ElastigroupDeploy", + "ElastigroupRollback", + "Action", + "ElastigroupSetup", + "Bitrise", + "TerragruntPlan", + "TerragruntApply", + "TerragruntDestroy", + "TerragruntRollback", + "IACMStage", + "IACMStep", + "IACM", + "Container", + "IACMTerraformPlugin", + "IACMApproval", + "ElastigroupBGStageSetup", + "ElastigroupSwapRoute", + "AsgCanaryDeploy", + "AsgCanaryDelete", + "SwapRoutes", + "SwapRollback", + "AppResize", + "AppRollback", + "CanaryAppSetup", + "BGAppSetup", + "BasicAppSetup", + "TanzuCommand", + "AsgRollingDeploy", + "AsgRollingRollback", + "GovernanceRuleAWS", + "TasRollingDeploy", + "TasRollingRollback", + "K8sDryRun", + "AsgBlueGreenSwapService", + "AsgBlueGreenDeploy", + "AsgBlueGreenRollback", + "TerraformCloudRun", + "TerraformCloudRollback", + "DeployCloudFunction", + "DeployCloudFunctionWithNoTraffic", + "CloudFunctionTrafficShift", + "CloudFunctionRollback", + "AwsLambdaDeploy", + "AwsSamDeploy", + "AwsSamRollback", + "SscaOrchestration", + "AwsLambdaRollback", + "GitOpsSync", + "BambooBuild", + "CdSscaOrchestration", + "RouteMapping", + "AWSSecurityHub", + "CustomIngest", + "BackstageEnvironmentVariable", + "Fossa", + "CodeQL", + "Gitleaks", + "DeployCloudFunctionGenOne", + "RollbackCloudFunctionGenOne", + "K8sBlueGreenStageScaleDown", + "AwsSamBuild", + "Semgrep", + "SscaEnforcement", + "IdpConnector", + "CdSscaEnforcement", + "DownloadManifests", + "ServerlessAwsLambdaPrepareRollbackV2", + "ServerlessAwsLambdaRollbackV2", + "Coverity", + "ServerlessAwsLambdaDeployV2", + "AnalyzeDeploymentImpact", + "ServerlessAwsLambdaPackageV2", + "RevertPR", + "AwsCdkBootstrap", + "AwsCdkSynth", + "AwsCdkDiff", + "AwsCdkDeploy", + "AwsCdkDestroy", + "IdpScorecard", + "IdpCheck", + "AwsCdkRollback", + "SlsaVerification", + "UpdateGitOpsApp", + "EcsServiceSetup", + "EcsUpgradeContainer", + "EcsBasicRollback", + "ChaosInfrastructure", + "Anchore", + "Overrides", + "AsgShiftTraffic", + "AquaSecurity", + "IDPStage", + "ChaosHub", + "CookieCutter", + "CreateRepo", + "DownloadAwsS3", + "DirectPush", + "RegisterCatalog", + "K8sTrafficRouting", + "DownloadHarnessStore", + "CreateCatalog", + "SlackNotify", + "OsvScaner", + "IACMOpenTofuPlugin", + "AsgPhasedDeploy", + "AsgSetup", + "AsgRollback", + "Test", + "Wiz", + "Certificates", + "IACMCheckov", + "IACMTFCompliance", + "IACMTFLint", + "IACMTFSec", + "NotificationRule", + "NotificationChannel", + "K8sPatch", + "CreateOrganisation", + "CreateProject", + "DBSchemaApply", + "IACMPrepareExecution", + "DBSchemaRollback", + "K8sRollout", + "CreateResource", + "Checkov", + "ServiceDiscoveryAgent", + "ChaosInfrastructureV2", + "Traceable", + "AzureFunctionDeploy", + "AzureFunctionRollback", + "GoogleCloudRunDeploy", + "GoogleCloudRunPrepareRollbackData", + "GoogleCloudRunTrafficShift", + "GoogleCloudRunRollback", + "GoogleCloudRunJob", + "UpdateCatalogProperty", + "IACMWorkspace", + "IACMModuleTestPlugin", + "CheckmarxOne", + "AsgSteadyState", + "SscaArtifactVerification", + "GitOpsApplication", + "HelmDelete", + "EcsBlueGreenTrafficShift", + "StandAloneTrafficShiftRollback", + "ElastigroupBlueGreenTrafficShift", + "IdpCatalog", + "IACMTerragruntPlugin" + ] + }, + "entityRef": { + "$ref": "#/components/schemas/EntityReference" + }, + "name": { + "type": "string" + }, + "entityGitMetadata": { + "$ref": "#/components/schemas/EntityGitMetadata" + } + } + }, + "EntityGitMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "repo": { + "type": "string" + }, + "repoBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "branchBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EntityGitMetadata" + }, + "branch": { + "type": "string" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEntityGitMetadata" + }, + "initialized": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EntityReference": { + "type": "object", + "properties": { + "parentUniqueId": { + "type": "string" + }, + "branch": { + "type": "string" + }, + "repoIdentifier": { + "type": "string" + }, + "isDefault": { + "type": "boolean", + "writeOnly": true + }, + "default": { + "type": "boolean" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "scope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + }, + "identifier": { + "type": "string" + }, + "accountIdentifier": { + "type": "string" + } + } + }, + "EntityReferredByInfraSetupUsageDetail": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SetupUsageDetail" + }, + { + "type": "object", + "properties": { + "environmentIdentifier": { + "type": "string" + }, + "environmentName": { + "type": "string" + } + } + } + ] + }, + "EntityReferredByOverridesSetupUsageDetail": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SetupUsageDetail" + }, + { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "overrideType": { + "type": "string" + } + } + } + ] + }, + "EntityReferredByPipelineSetupUsageDetail": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SetupUsageDetail" + }, + { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "referenceType": { + "type": "string" + } + } + } + ] + }, + "EntitySetupUsage": { + "required": [ + "referredByEntity" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "referredEntity": { + "$ref": "#/components/schemas/EntityDetail" + }, + "referredByEntity": { + "$ref": "#/components/schemas/EntityDetail" + }, + "detail": { + "$ref": "#/components/schemas/SetupUsageDetail" + }, + "createdAt": { + "type": "integer", + "format": "int64" + } + }, + "description": "This is the view of the Entity Setup Usage defined in Harness" + }, + "PageResponseEntitySetupUsage": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntitySetupUsage" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseEntitySetupUsage": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseEntitySetupUsage" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SecretReferredByConnectorSetupUsageDetail": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SetupUsageDetail" + }, + { + "type": "object", + "properties": { + "fieldName": { + "type": "string" + } + } + } + ] + }, + "SetupUsageDetail": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "ResponseDTOListEntityType": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "CreatePR", + "MergePR", + "Projects", + "Pipelines", + "PipelineSteps", + "Http", + "Email", + "JiraCreate", + "JiraUpdate", + "JiraApproval", + "HarnessApproval", + "CustomApproval", + "Barrier", + "Queue", + "FlagConfiguration", + "ShellScript", + "K8sCanaryDeploy", + "K8sApply", + "K8sBlueGreenDeploy", + "K8sRollingDeploy", + "K8sRollingRollback", + "K8sScale", + "K8sDelete", + "K8sBGSwapServices", + "K8sCanaryDelete", + "TerraformApply", + "TerraformPlan", + "TerraformDestroy", + "TerraformRollback", + "HelmDeploy", + "HelmRollback", + "Connectors", + "Secrets", + "Files", + "Service", + "Environment", + "EnvironmentGroup", + "InputSets", + "CvConfig", + "Verify", + "Delegates", + "DelegateConfigurations", + "CvVerificationJob", + "IntegrationStage", + "IntegrationSteps", + "SecurityStage", + "SecuritySteps", + "CvKubernetesActivitySource", + "DeploymentSteps", + "DeploymentStage", + "ApprovalStage", + "PipelineStage", + "FeatureFlagStage", + "Template", + "TemplateStage", + "CustomDeployment", + "Triggers", + "MonitoredService", + "GitRepositories", + "FeatureFlags", + "ServiceNowApproval", + "ServiceNowCreate", + "ServiceNowUpdate", + "ServiceNowImportSet", + "GovernancePolicies", + "Policy", + "Run", + "RunTests", + "Plugin", + "RestoreCacheGCS", + "RestoreCacheS3", + "SaveCacheGCS", + "SaveCacheS3", + "Security", + "AquaTrivy", + "AWSECR", + "Bandit", + "BlackDuck", + "Brakeman", + "Burp", + "Checkmarx", + "Clair", + "DataTheorem", + "DockerContentTrust", + "External", + "FortifyOnDemand", + "Grype", + "JfrogXray", + "Mend", + "Metasploit", + "Nessus", + "NexusIQ", + "Nikto", + "Nmap", + "Openvas", + "Owasp", + "PrismaCloud", + "Prowler", + "Qualys", + "Reapsaw", + "ShiftLeft", + "Sniper", + "Snyk", + "Sonarqube", + "Sysdig", + "Tenable", + "Veracode", + "Zap", + "GitClone", + "ArtifactoryUpload", + "GCSUpload", + "S3Upload", + "BuildAndPushGCR", + "BuildAndPushGAR", + "BuildAndPushECR", + "BuildAndPushDockerRegistry", + "CreateStack", + "DeleteStack", + "ServerlessAwsLambdaDeploy", + "ServerlessAwsLambdaRollback", + "CustomStage", + "RollbackStack", + "Infrastructure", + "Command", + "StrategyNode", + "AzureSlotDeployment", + "AzureTrafficShift", + "FetchInstanceScript", + "AzureSwapSlot", + "AzureWebAppRollback", + "JenkinsBuild", + "EcsRollingDeploy", + "EcsRollingRollback", + "EcsCanaryDeploy", + "EcsCanaryDelete", + "AzureCreateARMResource", + "BuildAndPushACR", + "AzureCreateBPResource", + "AzureARMRollback", + "Background", + "Wait", + "ArtifactSource", + "EcsBlueGreenCreateService", + "EcsBlueGreenSwapTargetGroups", + "EcsBlueGreenRollback", + "ShellScriptProvision", + "Freeze", + "GitOpsUpdateReleaseRepo", + "GitOpsFetchLinkedApps", + "EcsRunTask", + "Chaos", + "ElastigroupDeploy", + "ElastigroupRollback", + "Action", + "ElastigroupSetup", + "Bitrise", + "TerragruntPlan", + "TerragruntApply", + "TerragruntDestroy", + "TerragruntRollback", + "IACMStage", + "IACMStep", + "IACM", + "Container", + "IACMTerraformPlugin", + "IACMApproval", + "ElastigroupBGStageSetup", + "ElastigroupSwapRoute", + "AsgCanaryDeploy", + "AsgCanaryDelete", + "SwapRoutes", + "SwapRollback", + "AppResize", + "AppRollback", + "CanaryAppSetup", + "BGAppSetup", + "BasicAppSetup", + "TanzuCommand", + "AsgRollingDeploy", + "AsgRollingRollback", + "GovernanceRuleAWS", + "TasRollingDeploy", + "TasRollingRollback", + "K8sDryRun", + "AsgBlueGreenSwapService", + "AsgBlueGreenDeploy", + "AsgBlueGreenRollback", + "TerraformCloudRun", + "TerraformCloudRollback", + "DeployCloudFunction", + "DeployCloudFunctionWithNoTraffic", + "CloudFunctionTrafficShift", + "CloudFunctionRollback", + "AwsLambdaDeploy", + "AwsSamDeploy", + "AwsSamRollback", + "SscaOrchestration", + "AwsLambdaRollback", + "GitOpsSync", + "BambooBuild", + "CdSscaOrchestration", + "RouteMapping", + "AWSSecurityHub", + "CustomIngest", + "BackstageEnvironmentVariable", + "Fossa", + "CodeQL", + "Gitleaks", + "DeployCloudFunctionGenOne", + "RollbackCloudFunctionGenOne", + "K8sBlueGreenStageScaleDown", + "AwsSamBuild", + "Semgrep", + "SscaEnforcement", + "IdpConnector", + "CdSscaEnforcement", + "DownloadManifests", + "ServerlessAwsLambdaPrepareRollbackV2", + "ServerlessAwsLambdaRollbackV2", + "Coverity", + "ServerlessAwsLambdaDeployV2", + "AnalyzeDeploymentImpact", + "ServerlessAwsLambdaPackageV2", + "RevertPR", + "AwsCdkBootstrap", + "AwsCdkSynth", + "AwsCdkDiff", + "AwsCdkDeploy", + "AwsCdkDestroy", + "IdpScorecard", + "IdpCheck", + "AwsCdkRollback", + "SlsaVerification", + "UpdateGitOpsApp", + "EcsServiceSetup", + "EcsUpgradeContainer", + "EcsBasicRollback", + "ChaosInfrastructure", + "Anchore", + "Overrides", + "AsgShiftTraffic", + "AquaSecurity", + "IDPStage", + "ChaosHub", + "CookieCutter", + "CreateRepo", + "DownloadAwsS3", + "DirectPush", + "RegisterCatalog", + "K8sTrafficRouting", + "DownloadHarnessStore", + "CreateCatalog", + "SlackNotify", + "OsvScaner", + "IACMOpenTofuPlugin", + "AsgPhasedDeploy", + "AsgSetup", + "AsgRollback", + "Test", + "Wiz", + "Certificates", + "IACMCheckov", + "IACMTFCompliance", + "IACMTFLint", + "IACMTFSec", + "NotificationRule", + "NotificationChannel", + "K8sPatch", + "CreateOrganisation", + "CreateProject", + "DBSchemaApply", + "IACMPrepareExecution", + "DBSchemaRollback", + "K8sRollout", + "CreateResource", + "Checkov", + "ServiceDiscoveryAgent", + "ChaosInfrastructureV2", + "Traceable", + "AzureFunctionDeploy", + "AzureFunctionRollback", + "GoogleCloudRunDeploy", + "GoogleCloudRunPrepareRollbackData", + "GoogleCloudRunTrafficShift", + "GoogleCloudRunRollback", + "GoogleCloudRunJob", + "UpdateCatalogProperty", + "IACMWorkspace", + "IACMModuleTestPlugin", + "CheckmarxOne", + "AsgSteadyState", + "SscaArtifactVerification", + "GitOpsApplication", + "HelmDelete", + "EcsBlueGreenTrafficShift", + "StandAloneTrafficShiftRollback", + "ElastigroupBlueGreenTrafficShift", + "IdpCatalog", + "IACMTerragruntPlugin" + ] + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageFile": { + "type": "object", + "properties": { + "totalElements": { + "type": "integer", + "format": "int64" + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "last": { + "type": "boolean" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/File" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "Pageable": { + "type": "object", + "properties": { + "paged": { + "type": "boolean" + }, + "unpaged": { + "type": "boolean" + }, + "offset": { + "type": "integer", + "format": "int64" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageNumber": { + "type": "integer", + "format": "int32" + } + } + }, + "ResponseDTOPageFile": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageFile" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Sort": { + "type": "object", + "properties": { + "unsorted": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + }, + "sorted": { + "type": "boolean" + } + } + }, + "FilesFilterPropertiesDTO": { + "required": [ + "filterType" + ], + "type": "object", + "properties": { + "fileUsage": { + "type": "string", + "description": "This specifies the file usage", + "enum": [ + "MANIFEST_FILE", + "CONFIG", + "SCRIPT" + ] + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "referencedBy": { + "$ref": "#/components/schemas/ReferencedByDTO" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "description": "This specifies the corresponding Entity of the filter.", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + "description": "Properties of the Files Filter defined in Harness" + }, + "ReferencedByDTO": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "CreatePR", + "MergePR", + "Projects", + "Pipelines", + "PipelineSteps", + "Http", + "Email", + "JiraCreate", + "JiraUpdate", + "JiraApproval", + "HarnessApproval", + "CustomApproval", + "Barrier", + "Queue", + "FlagConfiguration", + "ShellScript", + "K8sCanaryDeploy", + "K8sApply", + "K8sBlueGreenDeploy", + "K8sRollingDeploy", + "K8sRollingRollback", + "K8sScale", + "K8sDelete", + "K8sBGSwapServices", + "K8sCanaryDelete", + "TerraformApply", + "TerraformPlan", + "TerraformDestroy", + "TerraformRollback", + "HelmDeploy", + "HelmRollback", + "Connectors", + "Secrets", + "Files", + "Service", + "Environment", + "EnvironmentGroup", + "InputSets", + "CvConfig", + "Verify", + "Delegates", + "DelegateConfigurations", + "CvVerificationJob", + "IntegrationStage", + "IntegrationSteps", + "SecurityStage", + "SecuritySteps", + "CvKubernetesActivitySource", + "DeploymentSteps", + "DeploymentStage", + "ApprovalStage", + "PipelineStage", + "FeatureFlagStage", + "Template", + "TemplateStage", + "CustomDeployment", + "Triggers", + "MonitoredService", + "GitRepositories", + "FeatureFlags", + "ServiceNowApproval", + "ServiceNowCreate", + "ServiceNowUpdate", + "ServiceNowImportSet", + "GovernancePolicies", + "Policy", + "Run", + "RunTests", + "Plugin", + "RestoreCacheGCS", + "RestoreCacheS3", + "SaveCacheGCS", + "SaveCacheS3", + "Security", + "AquaTrivy", + "AWSECR", + "Bandit", + "BlackDuck", + "Brakeman", + "Burp", + "Checkmarx", + "Clair", + "DataTheorem", + "DockerContentTrust", + "External", + "FortifyOnDemand", + "Grype", + "JfrogXray", + "Mend", + "Metasploit", + "Nessus", + "NexusIQ", + "Nikto", + "Nmap", + "Openvas", + "Owasp", + "PrismaCloud", + "Prowler", + "Qualys", + "Reapsaw", + "ShiftLeft", + "Sniper", + "Snyk", + "Sonarqube", + "Sysdig", + "Tenable", + "Veracode", + "Zap", + "GitClone", + "ArtifactoryUpload", + "GCSUpload", + "S3Upload", + "BuildAndPushGCR", + "BuildAndPushGAR", + "BuildAndPushECR", + "BuildAndPushDockerRegistry", + "CreateStack", + "DeleteStack", + "ServerlessAwsLambdaDeploy", + "ServerlessAwsLambdaRollback", + "CustomStage", + "RollbackStack", + "Infrastructure", + "Command", + "StrategyNode", + "AzureSlotDeployment", + "AzureTrafficShift", + "FetchInstanceScript", + "AzureSwapSlot", + "AzureWebAppRollback", + "JenkinsBuild", + "EcsRollingDeploy", + "EcsRollingRollback", + "EcsCanaryDeploy", + "EcsCanaryDelete", + "AzureCreateARMResource", + "BuildAndPushACR", + "AzureCreateBPResource", + "AzureARMRollback", + "Background", + "Wait", + "ArtifactSource", + "EcsBlueGreenCreateService", + "EcsBlueGreenSwapTargetGroups", + "EcsBlueGreenRollback", + "ShellScriptProvision", + "Freeze", + "GitOpsUpdateReleaseRepo", + "GitOpsFetchLinkedApps", + "EcsRunTask", + "Chaos", + "ElastigroupDeploy", + "ElastigroupRollback", + "Action", + "ElastigroupSetup", + "Bitrise", + "TerragruntPlan", + "TerragruntApply", + "TerragruntDestroy", + "TerragruntRollback", + "IACMStage", + "IACMStep", + "IACM", + "Container", + "IACMTerraformPlugin", + "IACMApproval", + "ElastigroupBGStageSetup", + "ElastigroupSwapRoute", + "AsgCanaryDeploy", + "AsgCanaryDelete", + "SwapRoutes", + "SwapRollback", + "AppResize", + "AppRollback", + "CanaryAppSetup", + "BGAppSetup", + "BasicAppSetup", + "TanzuCommand", + "AsgRollingDeploy", + "AsgRollingRollback", + "GovernanceRuleAWS", + "TasRollingDeploy", + "TasRollingRollback", + "K8sDryRun", + "AsgBlueGreenSwapService", + "AsgBlueGreenDeploy", + "AsgBlueGreenRollback", + "TerraformCloudRun", + "TerraformCloudRollback", + "DeployCloudFunction", + "DeployCloudFunctionWithNoTraffic", + "CloudFunctionTrafficShift", + "CloudFunctionRollback", + "AwsLambdaDeploy", + "AwsSamDeploy", + "AwsSamRollback", + "SscaOrchestration", + "AwsLambdaRollback", + "GitOpsSync", + "BambooBuild", + "CdSscaOrchestration", + "RouteMapping", + "AWSSecurityHub", + "CustomIngest", + "BackstageEnvironmentVariable", + "Fossa", + "CodeQL", + "Gitleaks", + "DeployCloudFunctionGenOne", + "RollbackCloudFunctionGenOne", + "K8sBlueGreenStageScaleDown", + "AwsSamBuild", + "Semgrep", + "SscaEnforcement", + "IdpConnector", + "CdSscaEnforcement", + "DownloadManifests", + "ServerlessAwsLambdaPrepareRollbackV2", + "ServerlessAwsLambdaRollbackV2", + "Coverity", + "ServerlessAwsLambdaDeployV2", + "AnalyzeDeploymentImpact", + "ServerlessAwsLambdaPackageV2", + "RevertPR", + "AwsCdkBootstrap", + "AwsCdkSynth", + "AwsCdkDiff", + "AwsCdkDeploy", + "AwsCdkDestroy", + "IdpScorecard", + "IdpCheck", + "AwsCdkRollback", + "SlsaVerification", + "UpdateGitOpsApp", + "EcsServiceSetup", + "EcsUpgradeContainer", + "EcsBasicRollback", + "ChaosInfrastructure", + "Anchore", + "Overrides", + "AsgShiftTraffic", + "AquaSecurity", + "IDPStage", + "ChaosHub", + "CookieCutter", + "CreateRepo", + "DownloadAwsS3", + "DirectPush", + "RegisterCatalog", + "K8sTrafficRouting", + "DownloadHarnessStore", + "CreateCatalog", + "SlackNotify", + "OsvScaner", + "IACMOpenTofuPlugin", + "AsgPhasedDeploy", + "AsgSetup", + "AsgRollback", + "Test", + "Wiz", + "Certificates", + "IACMCheckov", + "IACMTFCompliance", + "IACMTFLint", + "IACMTFSec", + "NotificationRule", + "NotificationChannel", + "K8sPatch", + "CreateOrganisation", + "CreateProject", + "DBSchemaApply", + "IACMPrepareExecution", + "DBSchemaRollback", + "K8sRollout", + "CreateResource", + "Checkov", + "ServiceDiscoveryAgent", + "ChaosInfrastructureV2", + "Traceable", + "AzureFunctionDeploy", + "AzureFunctionRollback", + "GoogleCloudRunDeploy", + "GoogleCloudRunPrepareRollbackData", + "GoogleCloudRunTrafficShift", + "GoogleCloudRunRollback", + "GoogleCloudRunJob", + "UpdateCatalogProperty", + "IACMWorkspace", + "IACMModuleTestPlugin", + "CheckmarxOne", + "AsgSteadyState", + "SscaArtifactVerification", + "GitOpsApplication", + "HelmDelete", + "EcsBlueGreenTrafficShift", + "StandAloneTrafficShiftRollback", + "ElastigroupBlueGreenTrafficShift", + "IdpCatalog", + "IACMTerragruntPlugin" + ] + }, + "name": { + "type": "string" + } + }, + "description": "File referenced by other entity" + }, + "FileNode": { + "required": [ + "fileUsage", + "identifier", + "name", + "type" + ], + "type": "object", + "description": "This contains file details", + "allOf": [ + { + "$ref": "#/components/schemas/FileStoreNode" + }, + { + "type": "object", + "properties": { + "fileUsage": { + "type": "string", + "description": "File usage of the File Store Node", + "enum": [ + "MANIFEST_FILE", + "CONFIG", + "SCRIPT" + ] + }, + "description": { + "type": "string", + "description": "Description of the File Store Node" + }, + "tags": { + "type": "array", + "description": "Tags of the File Store Node", + "items": { + "$ref": "#/components/schemas/NGTag" + } + }, + "mimeType": { + "type": "string", + "description": "Mime type of the File Store Node" + }, + "content": { + "type": "string", + "description": "Content of the file" + }, + "size": { + "type": "integer", + "description": "The size of the file", + "format": "int64" + } + } + } + ] + }, + "FileStoreNode": { + "required": [ + "identifier", + "name", + "type" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the File Store Node" + }, + "parentIdentifier": { + "type": "string", + "description": "Parent identifier of the File Store Node" + }, + "name": { + "type": "string", + "description": "Name of the File Store Node" + }, + "type": { + "type": "string", + "description": "Type of the File Store Node", + "enum": [ + "FILE", + "FOLDER" + ] + }, + "path": { + "type": "string", + "description": "Path of the file or folder", + "readOnly": true + }, + "lastModifiedAt": { + "type": "integer", + "description": "Last modified time for the File Store Node", + "format": "int64", + "readOnly": true + }, + "lastModifiedBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + } + }, + "description": "This is the view of the file store node entity defined in Harness" + }, + "FolderNode": { + "required": [ + "identifier", + "name", + "type" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the File Store Node" + }, + "parentIdentifier": { + "type": "string", + "description": "Parent identifier of the File Store Node" + }, + "name": { + "type": "string", + "description": "Name of the File Store Node" + }, + "type": { + "type": "string", + "description": "Type of the File Store Node", + "enum": [ + "FILE", + "FOLDER" + ] + }, + "path": { + "type": "string", + "description": "Path of the file or folder", + "readOnly": true + }, + "lastModifiedAt": { + "type": "integer", + "description": "Last modified time for the File Store Node", + "format": "int64", + "readOnly": true + }, + "lastModifiedBy": { + "$ref": "#/components/schemas/EmbeddedUserDetailsDTO" + }, + "children": { + "type": "array", + "description": "Node children", + "items": { + "$ref": "#/components/schemas/FileStoreNode" + } + } + }, + "description": "This contains folder details" + }, + "ResponseDTOFolderNode": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/FolderNode" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Filter": { + "required": [ + "filterProperties", + "identifier", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Filter." + }, + "identifier": { + "type": "string", + "description": "Identifier of the Filter." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "filterProperties": { + "$ref": "#/components/schemas/FilterProperties" + }, + "filterVisibility": { + "type": "string", + "description": "This indicates visibility of Filter, by default it is Everyone.", + "enum": [ + "EveryOne", + "OnlyCreator" + ] + } + }, + "description": "This has details of the Filter entity defined in Harness" + }, + "ResponseDTOFilter": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/Filter" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseFilter": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Filter" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseFilter": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseFilter" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GitBranch": { + "required": [ + "branchName", + "branchSyncStatus" + ], + "type": "object", + "properties": { + "branchName": { + "type": "string", + "description": "Name of the branch." + }, + "branchSyncStatus": { + "type": "string", + "description": "Sync Status of the Branch", + "enum": [ + "SYNCED", + "SYNCING", + "UNSYNCED" + ] + } + }, + "description": "This contains details of the Git branch" + }, + "GitBranchList": { + "type": "object", + "properties": { + "defaultBranch": { + "$ref": "#/components/schemas/GitBranch" + }, + "branches": { + "$ref": "#/components/schemas/PageResponseGitBranch" + } + }, + "description": "This contains details of the default and other branch" + }, + "PageResponseGitBranch": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitBranch" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + }, + "description": "This contains details of all the branches of given repo" + }, + "ResponseDTOGitBranchList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GitBranchList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GitFullSyncConfig": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "baseBranch": { + "type": "string", + "description": "Name of the branch from which the new branch will be forked out." + }, + "branch": { + "type": "string", + "description": "Name of the branch. Entities were pushed to this branch, and a pull request was made from it." + }, + "prTitle": { + "type": "string", + "description": "Title of the pull request." + }, + "createPullRequest": { + "type": "boolean", + "description": "Determines if pull request was created." + }, + "repoIdentifier": { + "type": "string", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]" + }, + "isNewBranch": { + "type": "boolean", + "writeOnly": true + }, + "targetBranch": { + "type": "string", + "description": "Name of the target branch of the pull request." + }, + "rootFolder": { + "type": "string", + "description": "Path of the root folder inside which entities were pushed." + }, + "newBranch": { + "type": "boolean" + } + }, + "description": "This has config details specific to Git Full Sync with Harness." + }, + "ResponseDTOGitFullSyncConfig": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GitFullSyncConfig" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GitFullSyncConfigRequest": { + "required": [ + "branch", + "repoIdentifier", + "rootFolder" + ], + "type": "object", + "properties": { + "branch": { + "type": "string", + "description": "Name of the branch to which the entities will be pushed and from which pull request will be created." + }, + "repoIdentifier": { + "type": "string", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]" + }, + "rootFolder": { + "type": "string", + "description": "Path of the root folder inside which the entities will be pushed." + }, + "isNewBranch": { + "type": "boolean", + "writeOnly": true + }, + "baseBranch": { + "type": "string", + "description": "Name of the branch from which new branch will be forked out." + }, + "createPullRequest": { + "type": "boolean", + "description": "If true a pull request will be created from branch to target branch.Default: false." + }, + "targetBranch": { + "type": "string", + "description": "Name of the branch to which pull request will be merged." + }, + "prTitle": { + "type": "string", + "description": "Title of the pull request." + }, + "newBranch": { + "type": "boolean" + } + }, + "description": "Details required to trigger Git Full Sync." + }, + "GitFullSyncEntityInfo": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "filePath": { + "type": "string", + "description": "File Path of the Entity." + }, + "entityType": { + "type": "string", + "description": "Entity Type.", + "enum": [ + "CreatePR", + "MergePR", + "Projects", + "Pipelines", + "PipelineSteps", + "Http", + "Email", + "JiraCreate", + "JiraUpdate", + "JiraApproval", + "HarnessApproval", + "CustomApproval", + "Barrier", + "Queue", + "FlagConfiguration", + "ShellScript", + "K8sCanaryDeploy", + "K8sApply", + "K8sBlueGreenDeploy", + "K8sRollingDeploy", + "K8sRollingRollback", + "K8sScale", + "K8sDelete", + "K8sBGSwapServices", + "K8sCanaryDelete", + "TerraformApply", + "TerraformPlan", + "TerraformDestroy", + "TerraformRollback", + "HelmDeploy", + "HelmRollback", + "Connectors", + "Secrets", + "Files", + "Service", + "Environment", + "EnvironmentGroup", + "InputSets", + "CvConfig", + "Verify", + "Delegates", + "DelegateConfigurations", + "CvVerificationJob", + "IntegrationStage", + "IntegrationSteps", + "SecurityStage", + "SecuritySteps", + "CvKubernetesActivitySource", + "DeploymentSteps", + "DeploymentStage", + "ApprovalStage", + "PipelineStage", + "FeatureFlagStage", + "Template", + "TemplateStage", + "CustomDeployment", + "Triggers", + "MonitoredService", + "GitRepositories", + "FeatureFlags", + "ServiceNowApproval", + "ServiceNowCreate", + "ServiceNowUpdate", + "ServiceNowImportSet", + "GovernancePolicies", + "Policy", + "Run", + "RunTests", + "Plugin", + "RestoreCacheGCS", + "RestoreCacheS3", + "SaveCacheGCS", + "SaveCacheS3", + "Security", + "AquaTrivy", + "AWSECR", + "Bandit", + "BlackDuck", + "Brakeman", + "Burp", + "Checkmarx", + "Clair", + "DataTheorem", + "DockerContentTrust", + "External", + "FortifyOnDemand", + "Grype", + "JfrogXray", + "Mend", + "Metasploit", + "Nessus", + "NexusIQ", + "Nikto", + "Nmap", + "Openvas", + "Owasp", + "PrismaCloud", + "Prowler", + "Qualys", + "Reapsaw", + "ShiftLeft", + "Sniper", + "Snyk", + "Sonarqube", + "Sysdig", + "Tenable", + "Veracode", + "Zap", + "GitClone", + "ArtifactoryUpload", + "GCSUpload", + "S3Upload", + "BuildAndPushGCR", + "BuildAndPushGAR", + "BuildAndPushECR", + "BuildAndPushDockerRegistry", + "CreateStack", + "DeleteStack", + "ServerlessAwsLambdaDeploy", + "ServerlessAwsLambdaRollback", + "CustomStage", + "RollbackStack", + "Infrastructure", + "Command", + "StrategyNode", + "AzureSlotDeployment", + "AzureTrafficShift", + "FetchInstanceScript", + "AzureSwapSlot", + "AzureWebAppRollback", + "JenkinsBuild", + "EcsRollingDeploy", + "EcsRollingRollback", + "EcsCanaryDeploy", + "EcsCanaryDelete", + "AzureCreateARMResource", + "BuildAndPushACR", + "AzureCreateBPResource", + "AzureARMRollback", + "Background", + "Wait", + "ArtifactSource", + "EcsBlueGreenCreateService", + "EcsBlueGreenSwapTargetGroups", + "EcsBlueGreenRollback", + "ShellScriptProvision", + "Freeze", + "GitOpsUpdateReleaseRepo", + "GitOpsFetchLinkedApps", + "EcsRunTask", + "Chaos", + "ElastigroupDeploy", + "ElastigroupRollback", + "Action", + "ElastigroupSetup", + "Bitrise", + "TerragruntPlan", + "TerragruntApply", + "TerragruntDestroy", + "TerragruntRollback", + "IACMStage", + "IACMStep", + "IACM", + "Container", + "IACMTerraformPlugin", + "IACMApproval", + "ElastigroupBGStageSetup", + "ElastigroupSwapRoute", + "AsgCanaryDeploy", + "AsgCanaryDelete", + "SwapRoutes", + "SwapRollback", + "AppResize", + "AppRollback", + "CanaryAppSetup", + "BGAppSetup", + "BasicAppSetup", + "TanzuCommand", + "AsgRollingDeploy", + "AsgRollingRollback", + "GovernanceRuleAWS", + "TasRollingDeploy", + "TasRollingRollback", + "K8sDryRun", + "AsgBlueGreenSwapService", + "AsgBlueGreenDeploy", + "AsgBlueGreenRollback", + "TerraformCloudRun", + "TerraformCloudRollback", + "DeployCloudFunction", + "DeployCloudFunctionWithNoTraffic", + "CloudFunctionTrafficShift", + "CloudFunctionRollback", + "AwsLambdaDeploy", + "AwsSamDeploy", + "AwsSamRollback", + "SscaOrchestration", + "AwsLambdaRollback", + "GitOpsSync", + "BambooBuild", + "CdSscaOrchestration", + "RouteMapping", + "AWSSecurityHub", + "CustomIngest", + "BackstageEnvironmentVariable", + "Fossa", + "CodeQL", + "Gitleaks", + "DeployCloudFunctionGenOne", + "RollbackCloudFunctionGenOne", + "K8sBlueGreenStageScaleDown", + "AwsSamBuild", + "Semgrep", + "SscaEnforcement", + "IdpConnector", + "CdSscaEnforcement", + "DownloadManifests", + "ServerlessAwsLambdaPrepareRollbackV2", + "ServerlessAwsLambdaRollbackV2", + "Coverity", + "ServerlessAwsLambdaDeployV2", + "AnalyzeDeploymentImpact", + "ServerlessAwsLambdaPackageV2", + "RevertPR", + "AwsCdkBootstrap", + "AwsCdkSynth", + "AwsCdkDiff", + "AwsCdkDeploy", + "AwsCdkDestroy", + "IdpScorecard", + "IdpCheck", + "AwsCdkRollback", + "SlsaVerification", + "UpdateGitOpsApp", + "EcsServiceSetup", + "EcsUpgradeContainer", + "EcsBasicRollback", + "ChaosInfrastructure", + "Anchore", + "Overrides", + "AsgShiftTraffic", + "AquaSecurity", + "IDPStage", + "ChaosHub", + "CookieCutter", + "CreateRepo", + "DownloadAwsS3", + "DirectPush", + "RegisterCatalog", + "K8sTrafficRouting", + "DownloadHarnessStore", + "CreateCatalog", + "SlackNotify", + "OsvScaner", + "IACMOpenTofuPlugin", + "AsgPhasedDeploy", + "AsgSetup", + "AsgRollback", + "Test", + "Wiz", + "Certificates", + "IACMCheckov", + "IACMTFCompliance", + "IACMTFLint", + "IACMTFSec", + "NotificationRule", + "NotificationChannel", + "K8sPatch", + "CreateOrganisation", + "CreateProject", + "DBSchemaApply", + "IACMPrepareExecution", + "DBSchemaRollback", + "K8sRollout", + "CreateResource", + "Checkov", + "ServiceDiscoveryAgent", + "ChaosInfrastructureV2", + "Traceable", + "AzureFunctionDeploy", + "AzureFunctionRollback", + "GoogleCloudRunDeploy", + "GoogleCloudRunPrepareRollbackData", + "GoogleCloudRunTrafficShift", + "GoogleCloudRunRollback", + "GoogleCloudRunJob", + "UpdateCatalogProperty", + "IACMWorkspace", + "IACMModuleTestPlugin", + "CheckmarxOne", + "AsgSteadyState", + "SscaArtifactVerification", + "GitOpsApplication", + "HelmDelete", + "EcsBlueGreenTrafficShift", + "StandAloneTrafficShiftRollback", + "ElastigroupBlueGreenTrafficShift", + "IdpCatalog", + "IACMTerragruntPlugin" + ] + }, + "syncStatus": { + "type": "string", + "description": "Sync Status of the Entity that may be QUEUED, SUCCESS or FAILED.", + "enum": [ + "QUEUED", + "SUCCESS", + "FAILED", + "OVERRIDDEN" + ] + }, + "name": { + "type": "string", + "description": "Name of the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the Entity." + }, + "branch": { + "type": "string", + "description": "Name of the branch." + }, + "repoName": { + "type": "string", + "description": "Name of the repository." + }, + "repoUrl": { + "type": "string", + "description": "URL of the repository." + }, + "rootFolder": { + "type": "string", + "description": "Path to the root folder of the Entity. [Applicable for Old Git Sync only]" + }, + "retryCount": { + "type": "integer", + "description": "This is the number of full sync retry attempts.", + "format": "int64" + }, + "errorMessage": { + "type": "string", + "description": "Contains the error details while syncing the entity to Git." + } + }, + "description": "This contains the details of a Git Full Sync Entity with its Sync status" + }, + "PageResponseGitFullSyncEntityInfo": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitFullSyncEntityInfo" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseGitFullSyncEntityInfo": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseGitFullSyncEntityInfo" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GitFullSyncEntityInfoFilter": { + "type": "object", + "properties": { + "entityTypes": { + "type": "array", + "description": "List of entity Types to filter on the entities.", + "items": { + "type": "string", + "description": "List of entity Types to filter on the entities.", + "enum": [ + "CreatePR", + "MergePR", + "Projects", + "Pipelines", + "PipelineSteps", + "Http", + "Email", + "JiraCreate", + "JiraUpdate", + "JiraApproval", + "HarnessApproval", + "CustomApproval", + "Barrier", + "Queue", + "FlagConfiguration", + "ShellScript", + "K8sCanaryDeploy", + "K8sApply", + "K8sBlueGreenDeploy", + "K8sRollingDeploy", + "K8sRollingRollback", + "K8sScale", + "K8sDelete", + "K8sBGSwapServices", + "K8sCanaryDelete", + "TerraformApply", + "TerraformPlan", + "TerraformDestroy", + "TerraformRollback", + "HelmDeploy", + "HelmRollback", + "Connectors", + "Secrets", + "Files", + "Service", + "Environment", + "EnvironmentGroup", + "InputSets", + "CvConfig", + "Verify", + "Delegates", + "DelegateConfigurations", + "CvVerificationJob", + "IntegrationStage", + "IntegrationSteps", + "SecurityStage", + "SecuritySteps", + "CvKubernetesActivitySource", + "DeploymentSteps", + "DeploymentStage", + "ApprovalStage", + "PipelineStage", + "FeatureFlagStage", + "Template", + "TemplateStage", + "CustomDeployment", + "Triggers", + "MonitoredService", + "GitRepositories", + "FeatureFlags", + "ServiceNowApproval", + "ServiceNowCreate", + "ServiceNowUpdate", + "ServiceNowImportSet", + "GovernancePolicies", + "Policy", + "Run", + "RunTests", + "Plugin", + "RestoreCacheGCS", + "RestoreCacheS3", + "SaveCacheGCS", + "SaveCacheS3", + "Security", + "AquaTrivy", + "AWSECR", + "Bandit", + "BlackDuck", + "Brakeman", + "Burp", + "Checkmarx", + "Clair", + "DataTheorem", + "DockerContentTrust", + "External", + "FortifyOnDemand", + "Grype", + "JfrogXray", + "Mend", + "Metasploit", + "Nessus", + "NexusIQ", + "Nikto", + "Nmap", + "Openvas", + "Owasp", + "PrismaCloud", + "Prowler", + "Qualys", + "Reapsaw", + "ShiftLeft", + "Sniper", + "Snyk", + "Sonarqube", + "Sysdig", + "Tenable", + "Veracode", + "Zap", + "GitClone", + "ArtifactoryUpload", + "GCSUpload", + "S3Upload", + "BuildAndPushGCR", + "BuildAndPushGAR", + "BuildAndPushECR", + "BuildAndPushDockerRegistry", + "CreateStack", + "DeleteStack", + "ServerlessAwsLambdaDeploy", + "ServerlessAwsLambdaRollback", + "CustomStage", + "RollbackStack", + "Infrastructure", + "Command", + "StrategyNode", + "AzureSlotDeployment", + "AzureTrafficShift", + "FetchInstanceScript", + "AzureSwapSlot", + "AzureWebAppRollback", + "JenkinsBuild", + "EcsRollingDeploy", + "EcsRollingRollback", + "EcsCanaryDeploy", + "EcsCanaryDelete", + "AzureCreateARMResource", + "BuildAndPushACR", + "AzureCreateBPResource", + "AzureARMRollback", + "Background", + "Wait", + "ArtifactSource", + "EcsBlueGreenCreateService", + "EcsBlueGreenSwapTargetGroups", + "EcsBlueGreenRollback", + "ShellScriptProvision", + "Freeze", + "GitOpsUpdateReleaseRepo", + "GitOpsFetchLinkedApps", + "EcsRunTask", + "Chaos", + "ElastigroupDeploy", + "ElastigroupRollback", + "Action", + "ElastigroupSetup", + "Bitrise", + "TerragruntPlan", + "TerragruntApply", + "TerragruntDestroy", + "TerragruntRollback", + "IACMStage", + "IACMStep", + "IACM", + "Container", + "IACMTerraformPlugin", + "IACMApproval", + "ElastigroupBGStageSetup", + "ElastigroupSwapRoute", + "AsgCanaryDeploy", + "AsgCanaryDelete", + "SwapRoutes", + "SwapRollback", + "AppResize", + "AppRollback", + "CanaryAppSetup", + "BGAppSetup", + "BasicAppSetup", + "TanzuCommand", + "AsgRollingDeploy", + "AsgRollingRollback", + "GovernanceRuleAWS", + "TasRollingDeploy", + "TasRollingRollback", + "K8sDryRun", + "AsgBlueGreenSwapService", + "AsgBlueGreenDeploy", + "AsgBlueGreenRollback", + "TerraformCloudRun", + "TerraformCloudRollback", + "DeployCloudFunction", + "DeployCloudFunctionWithNoTraffic", + "CloudFunctionTrafficShift", + "CloudFunctionRollback", + "AwsLambdaDeploy", + "AwsSamDeploy", + "AwsSamRollback", + "SscaOrchestration", + "AwsLambdaRollback", + "GitOpsSync", + "BambooBuild", + "CdSscaOrchestration", + "RouteMapping", + "AWSSecurityHub", + "CustomIngest", + "BackstageEnvironmentVariable", + "Fossa", + "CodeQL", + "Gitleaks", + "DeployCloudFunctionGenOne", + "RollbackCloudFunctionGenOne", + "K8sBlueGreenStageScaleDown", + "AwsSamBuild", + "Semgrep", + "SscaEnforcement", + "IdpConnector", + "CdSscaEnforcement", + "DownloadManifests", + "ServerlessAwsLambdaPrepareRollbackV2", + "ServerlessAwsLambdaRollbackV2", + "Coverity", + "ServerlessAwsLambdaDeployV2", + "AnalyzeDeploymentImpact", + "ServerlessAwsLambdaPackageV2", + "RevertPR", + "AwsCdkBootstrap", + "AwsCdkSynth", + "AwsCdkDiff", + "AwsCdkDeploy", + "AwsCdkDestroy", + "IdpScorecard", + "IdpCheck", + "AwsCdkRollback", + "SlsaVerification", + "UpdateGitOpsApp", + "EcsServiceSetup", + "EcsUpgradeContainer", + "EcsBasicRollback", + "ChaosInfrastructure", + "Anchore", + "Overrides", + "AsgShiftTraffic", + "AquaSecurity", + "IDPStage", + "ChaosHub", + "CookieCutter", + "CreateRepo", + "DownloadAwsS3", + "DirectPush", + "RegisterCatalog", + "K8sTrafficRouting", + "DownloadHarnessStore", + "CreateCatalog", + "SlackNotify", + "OsvScaner", + "IACMOpenTofuPlugin", + "AsgPhasedDeploy", + "AsgSetup", + "AsgRollback", + "Test", + "Wiz", + "Certificates", + "IACMCheckov", + "IACMTFCompliance", + "IACMTFLint", + "IACMTFSec", + "NotificationRule", + "NotificationChannel", + "K8sPatch", + "CreateOrganisation", + "CreateProject", + "DBSchemaApply", + "IACMPrepareExecution", + "DBSchemaRollback", + "K8sRollout", + "CreateResource", + "Checkov", + "ServiceDiscoveryAgent", + "ChaosInfrastructureV2", + "Traceable", + "AzureFunctionDeploy", + "AzureFunctionRollback", + "GoogleCloudRunDeploy", + "GoogleCloudRunPrepareRollbackData", + "GoogleCloudRunTrafficShift", + "GoogleCloudRunRollback", + "GoogleCloudRunJob", + "UpdateCatalogProperty", + "IACMWorkspace", + "IACMModuleTestPlugin", + "CheckmarxOne", + "AsgSteadyState", + "SscaArtifactVerification", + "GitOpsApplication", + "HelmDelete", + "EcsBlueGreenTrafficShift", + "StandAloneTrafficShiftRollback", + "ElastigroupBlueGreenTrafficShift", + "IdpCatalog", + "IACMTerragruntPlugin" + ] + } + }, + "syncStatus": { + "type": "string", + "description": "Sync Status of the Entity that may be QUEUED, SUCCESS or FAILED.", + "enum": [ + "QUEUED", + "SUCCESS", + "FAILED", + "OVERRIDDEN" + ] + } + }, + "description": "Filter details for Git Full Sync." + }, + "ResponseDTOTriggerGitFullSyncResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TriggerGitFullSyncResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TriggerGitFullSyncResponse": { + "type": "object", + "properties": { + "isFullSyncTriggered": { + "type": "boolean", + "description": "Determines if Full Sync is triggered." + } + }, + "description": "This has details to trigger Git Full Sync." + }, + "GitSyncSettings": { + "required": [ + "executeOnDelegate", + "orgIdentifier", + "projectIdentifier" + ], + "type": "object", + "properties": { + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "executeOnDelegate": { + "type": "boolean", + "description": "Specifies Connectivity Mode for Git Sync. If True, executes through Delegate, else executes through Platform. The default value is True" + }, + "isGitSimplificationEnabled": { + "type": "boolean", + "writeOnly": true + }, + "isEnabledOnlyForFF": { + "type": "boolean", + "writeOnly": true + }, + "gitSimplificationEnabled": { + "type": "boolean" + }, + "enabledOnlyForFF": { + "type": "boolean" + } + }, + "description": "This contains details of Git Sync Settings" + }, + "ResponseDTOGitSyncSettings": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GitSyncSettings" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GitSyncConfig": { + "required": [ + "branch", + "gitConnectorRef", + "gitConnectorType", + "identifier", + "name", + "repo" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]" + }, + "name": { + "type": "string", + "description": "Name of the repository. Any leading/trailing spaces will be removed." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "gitConnectorRef": { + "type": "string", + "description": "Id of the Connector referenced in Git" + }, + "repo": { + "type": "string", + "description": "URL of the repository. Any leading/trailing spaces will be removed." + }, + "branch": { + "type": "string", + "description": "Name of the branch. Any leading/trailing spaces will be removed." + }, + "gitConnectorType": { + "type": "string", + "description": "Connector Type", + "enum": [ + "K8sCluster", + "Git", + "Splunk", + "AppDynamics", + "Prometheus", + "Dynatrace", + "Vault", + "AzureKeyVault", + "DockerRegistry", + "Local", + "AwsKms", + "GcpKms", + "AwsSecretManager", + "Gcp", + "Aws", + "Azure", + "Artifactory", + "Jira", + "Nexus", + "Github", + "Gitlab", + "Bitbucket", + "Codecommit", + "CEAws", + "CEAzure", + "GcpCloudCost", + "CEK8sCluster", + "HttpHelmRepo", + "NewRelic", + "Datadog", + "SumoLogic", + "PagerDuty", + "CustomHealth", + "ServiceNow", + "ErrorTracking", + "Pdc", + "AzureRepo", + "Jenkins", + "OciHelmRepo", + "CustomSecretManager", + "ElasticSearch", + "GcpSecretManager", + "AzureArtifacts", + "Tas", + "Spot", + "Bamboo", + "TerraformCloud", + "SignalFX", + "Harness", + "Rancher", + "JDBC", + "Zoom", + "MsTeams", + "Confluence", + "Slack" + ] + }, + "gitSyncFolderConfigDTOs": { + "type": "array", + "description": "List of all Root Folder Details", + "items": { + "$ref": "#/components/schemas/GitSyncFolderConfig" + } + } + }, + "description": "This contains details of Git Sync Config" + }, + "GitSyncFolderConfig": { + "required": [ + "rootFolder" + ], + "type": "object", + "properties": { + "rootFolder": { + "type": "string", + "description": "Root Folder Name" + }, + "isDefault": { + "type": "boolean", + "description": "This checks if the folder is the default folder" + } + }, + "description": "This contains details of Root Folder" + }, + "GitEnabled": { + "type": "object", + "properties": { + "isGitSyncEnabled": { + "type": "boolean", + "writeOnly": true + }, + "connectivityMode": { + "type": "string", + "description": "This is the Git Sync connectivity mode", + "enum": [ + "MANAGER", + "DELEGATE" + ] + }, + "isGitSimplificationEnabled": { + "type": "boolean", + "writeOnly": true + }, + "isGitSyncEnabledOnlyForFF": { + "type": "boolean", + "writeOnly": true + }, + "gitSyncEnabledOnlyForFF": { + "type": "boolean" + }, + "gitSyncEnabled": { + "type": "boolean" + }, + "gitSimplificationEnabled": { + "type": "boolean" + } + }, + "description": "This contains details of connectivity mode and whether Git Sync is enabled" + }, + "GitSyncErrorCount": { + "type": "object", + "properties": { + "gitToHarnessErrorCount": { + "type": "integer", + "description": "This is the number of Git to Harness errors", + "format": "int64" + }, + "connectivityErrorCount": { + "type": "integer", + "description": "This is the number of connectivity errors", + "format": "int64" + } + }, + "description": "This is the total number of Git sync and connectivity errors" + }, + "ResponseDTOGitSyncErrorCount": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GitSyncErrorCount" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GitSyncError": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "repoUrl": { + "type": "string", + "description": "URL of the repository." + }, + "repoId": { + "type": "string", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]" + }, + "branchName": { + "type": "string", + "description": "Name of the branch." + }, + "scopes": { + "type": "array", + "description": "List of scope of the Git Sync Error", + "items": { + "$ref": "#/components/schemas/Scope1" + } + }, + "changeType": { + "type": "string", + "description": "Type of operation done in file", + "enum": [ + "ADD", + "RENAME", + "MODIFY", + "DELETE", + "NONE", + "ADD_V2", + "UPDATE_V2" + ] + }, + "completeFilePath": { + "type": "string", + "description": "Complete File Path of the Entity" + }, + "entityType": { + "type": "string", + "description": "Entity Type.", + "enum": [ + "CreatePR", + "MergePR", + "Projects", + "Pipelines", + "PipelineSteps", + "Http", + "Email", + "JiraCreate", + "JiraUpdate", + "JiraApproval", + "HarnessApproval", + "CustomApproval", + "Barrier", + "Queue", + "FlagConfiguration", + "ShellScript", + "K8sCanaryDeploy", + "K8sApply", + "K8sBlueGreenDeploy", + "K8sRollingDeploy", + "K8sRollingRollback", + "K8sScale", + "K8sDelete", + "K8sBGSwapServices", + "K8sCanaryDelete", + "TerraformApply", + "TerraformPlan", + "TerraformDestroy", + "TerraformRollback", + "HelmDeploy", + "HelmRollback", + "Connectors", + "Secrets", + "Files", + "Service", + "Environment", + "EnvironmentGroup", + "InputSets", + "CvConfig", + "Verify", + "Delegates", + "DelegateConfigurations", + "CvVerificationJob", + "IntegrationStage", + "IntegrationSteps", + "SecurityStage", + "SecuritySteps", + "CvKubernetesActivitySource", + "DeploymentSteps", + "DeploymentStage", + "ApprovalStage", + "PipelineStage", + "FeatureFlagStage", + "Template", + "TemplateStage", + "CustomDeployment", + "Triggers", + "MonitoredService", + "GitRepositories", + "FeatureFlags", + "ServiceNowApproval", + "ServiceNowCreate", + "ServiceNowUpdate", + "ServiceNowImportSet", + "GovernancePolicies", + "Policy", + "Run", + "RunTests", + "Plugin", + "RestoreCacheGCS", + "RestoreCacheS3", + "SaveCacheGCS", + "SaveCacheS3", + "Security", + "AquaTrivy", + "AWSECR", + "Bandit", + "BlackDuck", + "Brakeman", + "Burp", + "Checkmarx", + "Clair", + "DataTheorem", + "DockerContentTrust", + "External", + "FortifyOnDemand", + "Grype", + "JfrogXray", + "Mend", + "Metasploit", + "Nessus", + "NexusIQ", + "Nikto", + "Nmap", + "Openvas", + "Owasp", + "PrismaCloud", + "Prowler", + "Qualys", + "Reapsaw", + "ShiftLeft", + "Sniper", + "Snyk", + "Sonarqube", + "Sysdig", + "Tenable", + "Veracode", + "Zap", + "GitClone", + "ArtifactoryUpload", + "GCSUpload", + "S3Upload", + "BuildAndPushGCR", + "BuildAndPushGAR", + "BuildAndPushECR", + "BuildAndPushDockerRegistry", + "CreateStack", + "DeleteStack", + "ServerlessAwsLambdaDeploy", + "ServerlessAwsLambdaRollback", + "CustomStage", + "RollbackStack", + "Infrastructure", + "Command", + "StrategyNode", + "AzureSlotDeployment", + "AzureTrafficShift", + "FetchInstanceScript", + "AzureSwapSlot", + "AzureWebAppRollback", + "JenkinsBuild", + "EcsRollingDeploy", + "EcsRollingRollback", + "EcsCanaryDeploy", + "EcsCanaryDelete", + "AzureCreateARMResource", + "BuildAndPushACR", + "AzureCreateBPResource", + "AzureARMRollback", + "Background", + "Wait", + "ArtifactSource", + "EcsBlueGreenCreateService", + "EcsBlueGreenSwapTargetGroups", + "EcsBlueGreenRollback", + "ShellScriptProvision", + "Freeze", + "GitOpsUpdateReleaseRepo", + "GitOpsFetchLinkedApps", + "EcsRunTask", + "Chaos", + "ElastigroupDeploy", + "ElastigroupRollback", + "Action", + "ElastigroupSetup", + "Bitrise", + "TerragruntPlan", + "TerragruntApply", + "TerragruntDestroy", + "TerragruntRollback", + "IACMStage", + "IACMStep", + "IACM", + "Container", + "IACMTerraformPlugin", + "IACMApproval", + "ElastigroupBGStageSetup", + "ElastigroupSwapRoute", + "AsgCanaryDeploy", + "AsgCanaryDelete", + "SwapRoutes", + "SwapRollback", + "AppResize", + "AppRollback", + "CanaryAppSetup", + "BGAppSetup", + "BasicAppSetup", + "TanzuCommand", + "AsgRollingDeploy", + "AsgRollingRollback", + "GovernanceRuleAWS", + "TasRollingDeploy", + "TasRollingRollback", + "K8sDryRun", + "AsgBlueGreenSwapService", + "AsgBlueGreenDeploy", + "AsgBlueGreenRollback", + "TerraformCloudRun", + "TerraformCloudRollback", + "DeployCloudFunction", + "DeployCloudFunctionWithNoTraffic", + "CloudFunctionTrafficShift", + "CloudFunctionRollback", + "AwsLambdaDeploy", + "AwsSamDeploy", + "AwsSamRollback", + "SscaOrchestration", + "AwsLambdaRollback", + "GitOpsSync", + "BambooBuild", + "CdSscaOrchestration", + "RouteMapping", + "AWSSecurityHub", + "CustomIngest", + "BackstageEnvironmentVariable", + "Fossa", + "CodeQL", + "Gitleaks", + "DeployCloudFunctionGenOne", + "RollbackCloudFunctionGenOne", + "K8sBlueGreenStageScaleDown", + "AwsSamBuild", + "Semgrep", + "SscaEnforcement", + "IdpConnector", + "CdSscaEnforcement", + "DownloadManifests", + "ServerlessAwsLambdaPrepareRollbackV2", + "ServerlessAwsLambdaRollbackV2", + "Coverity", + "ServerlessAwsLambdaDeployV2", + "AnalyzeDeploymentImpact", + "ServerlessAwsLambdaPackageV2", + "RevertPR", + "AwsCdkBootstrap", + "AwsCdkSynth", + "AwsCdkDiff", + "AwsCdkDeploy", + "AwsCdkDestroy", + "IdpScorecard", + "IdpCheck", + "AwsCdkRollback", + "SlsaVerification", + "UpdateGitOpsApp", + "EcsServiceSetup", + "EcsUpgradeContainer", + "EcsBasicRollback", + "ChaosInfrastructure", + "Anchore", + "Overrides", + "AsgShiftTraffic", + "AquaSecurity", + "IDPStage", + "ChaosHub", + "CookieCutter", + "CreateRepo", + "DownloadAwsS3", + "DirectPush", + "RegisterCatalog", + "K8sTrafficRouting", + "DownloadHarnessStore", + "CreateCatalog", + "SlackNotify", + "OsvScaner", + "IACMOpenTofuPlugin", + "AsgPhasedDeploy", + "AsgSetup", + "AsgRollback", + "Test", + "Wiz", + "Certificates", + "IACMCheckov", + "IACMTFCompliance", + "IACMTFLint", + "IACMTFSec", + "NotificationRule", + "NotificationChannel", + "K8sPatch", + "CreateOrganisation", + "CreateProject", + "DBSchemaApply", + "IACMPrepareExecution", + "DBSchemaRollback", + "K8sRollout", + "CreateResource", + "Checkov", + "ServiceDiscoveryAgent", + "ChaosInfrastructureV2", + "Traceable", + "AzureFunctionDeploy", + "AzureFunctionRollback", + "GoogleCloudRunDeploy", + "GoogleCloudRunPrepareRollbackData", + "GoogleCloudRunTrafficShift", + "GoogleCloudRunRollback", + "GoogleCloudRunJob", + "UpdateCatalogProperty", + "IACMWorkspace", + "IACMModuleTestPlugin", + "CheckmarxOne", + "AsgSteadyState", + "SscaArtifactVerification", + "GitOpsApplication", + "HelmDelete", + "EcsBlueGreenTrafficShift", + "StandAloneTrafficShiftRollback", + "ElastigroupBlueGreenTrafficShift", + "IdpCatalog", + "IACMTerragruntPlugin" + ] + }, + "failureReason": { + "type": "string", + "description": "Error Message" + }, + "status": { + "type": "string", + "description": "Status of Git Sync Error", + "enum": [ + "ACTIVE", + "DISCARDED", + "EXPIRED", + "RESOLVED", + "OVERRIDDEN" + ] + }, + "errorType": { + "type": "string", + "description": "Type of Git Sync Error", + "enum": [ + "GIT_TO_HARNESS", + "CONNECTIVITY_ISSUE", + "FULL_SYNC" + ] + }, + "additionalErrorDetails": { + "$ref": "#/components/schemas/GitSyncErrorDetails" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the Git Sync error was logged", + "format": "int64" + } + }, + "description": "This contains Git Sync Error Details" + }, + "GitSyncErrorDetails": { + "type": "object", + "description": "This contains Git Sync error details specific to Error Type" + }, + "PageResponseGitSyncError": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitSyncError" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseGitSyncError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseGitSyncError" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Scope1": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + } + } + }, + "GitSyncErrorAggregateByCommit": { + "type": "object", + "properties": { + "gitCommitId": { + "type": "string", + "description": "Commit Id" + }, + "failedCount": { + "type": "integer", + "description": "The number of active errors in a commit", + "format": "int32" + }, + "repoId": { + "type": "string", + "description": "Git Sync Config Id. [Applicable for Old Git Sync only]" + }, + "branchName": { + "type": "string", + "description": "Name of the branch." + }, + "commitMessage": { + "type": "string", + "description": "Commit Message to use for the merge commit." + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which the Git Sync error was logged", + "format": "int64" + }, + "errorsForSummaryView": { + "type": "array", + "description": "This has the list of Git Sync errors corresponding to a specific Commit Id", + "items": { + "$ref": "#/components/schemas/GitSyncError" + } + } + }, + "description": "This contains a list of Git Sync Error details for a given Commit Id" + }, + "PageResponseGitSyncErrorAggregateByCommit": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitSyncErrorAggregateByCommit" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseGitSyncErrorAggregateByCommit": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseGitSyncErrorAggregateByCommit" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AdditionalMetadata": { + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "description": "Additional metadata for the secret" + }, + "EncryptedDataDetail": { + "type": "object", + "properties": { + "encryptedData": { + "$ref": "#/components/schemas/EncryptedRecordData" + }, + "encryptionConfig": { + "$ref": "#/components/schemas/EncryptionConfig" + }, + "fieldName": { + "type": "string" + }, + "identifier": { + "$ref": "#/components/schemas/SecretUniqueIdentifier" + } + } + }, + "EncryptedDataParams": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "EncryptedRecordData": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "parameters": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/EncryptedDataParams" + } + }, + "encryptionKey": { + "type": "string" + }, + "encryptedValue": { + "type": "array", + "items": { + "type": "string" + } + }, + "kmsId": { + "type": "string" + }, + "encryptionType": { + "type": "string", + "enum": [ + "LOCAL", + "KMS", + "GCP_KMS", + "AWS_SECRETS_MANAGER", + "AZURE_VAULT", + "VAULT", + "GCP_SECRETS_MANAGER", + "CUSTOM", + "VAULT_SSH", + "CUSTOM_NG" + ] + }, + "backupEncryptedValue": { + "type": "array", + "items": { + "type": "string" + } + }, + "backupEncryptionKey": { + "type": "string" + }, + "backupKmsId": { + "type": "string" + }, + "backupEncryptionType": { + "type": "string", + "enum": [ + "LOCAL", + "KMS", + "GCP_KMS", + "AWS_SECRETS_MANAGER", + "AZURE_VAULT", + "VAULT", + "GCP_SECRETS_MANAGER", + "CUSTOM", + "VAULT_SSH", + "CUSTOM_NG" + ] + }, + "base64Encoded": { + "type": "boolean" + }, + "additionalMetadata": { + "$ref": "#/components/schemas/AdditionalMetadata" + } + } + }, + "EncryptionConfig": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "globalKms": { + "type": "boolean" + }, + "encryptionType": { + "type": "string", + "enum": [ + "LOCAL", + "KMS", + "GCP_KMS", + "AWS_SECRETS_MANAGER", + "AZURE_VAULT", + "VAULT", + "GCP_SECRETS_MANAGER", + "CUSTOM", + "VAULT_SSH", + "CUSTOM_NG" + ] + }, + "numOfEncryptedValue": { + "type": "integer", + "format": "int32" + }, + "encryptionServiceUrl": { + "type": "string" + }, + "validationCriteria": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "KMS", + "VAULT", + "CUSTOM", + "SSH" + ] + }, + "default": { + "type": "boolean" + }, + "uuid": { + "type": "string" + } + } + }, + "LdapConnectionSettingsDTO1": { + "type": "object", + "properties": { + "host": { + "type": "string" + }, + "port": { + "type": "integer", + "format": "int32" + }, + "ssl_enabled": { + "type": "boolean" + }, + "referrals_enabled": { + "type": "boolean" + }, + "secret_ref_path": { + "type": "string" + }, + "max_referral_hops": { + "type": "integer", + "format": "int32" + }, + "connection_timeout": { + "type": "integer", + "format": "int32" + }, + "response_timeout": { + "type": "integer", + "format": "int32" + }, + "use_recursive_group_membership_search": { + "type": "boolean" + }, + "bind_d_n": { + "type": "string" + }, + "delegate_selectors": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "description": "Ldap Connection Settings DTO" + }, + "LdapGroupSettingsDTO1": { + "type": "object", + "properties": { + "base_d_n": { + "type": "string" + }, + "search_filter": { + "type": "string" + }, + "name_attr": { + "type": "string" + }, + "description_attr": { + "type": "string" + }, + "user_membership_attr": { + "type": "string" + }, + "referenced_user_attr": { + "type": "string" + } + }, + "description": "Ldap Group Settings DTO" + }, + "LdapSettingsDTO1": { + "required": [ + "account_identifier", + "identifier", + "name" + ], + "type": "object", + "properties": { + "account_identifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "url": { + "type": "string" + }, + "disabled": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "cron_expression": { + "type": "string" + }, + "ldap_connection_settings": { + "$ref": "#/components/schemas/LdapConnectionSettingsDTO1" + }, + "ldap_user_settings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LdapUserSettingsDTO1" + } + }, + "ldap_group_settings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LdapGroupSettingsDTO1" + } + }, + "sso_type": { + "type": "string" + } + }, + "description": "Ldap Settings DTO" + }, + "LdapUserSettingsDTO1": { + "type": "object", + "properties": { + "base_d_n": { + "type": "string" + }, + "search_filter": { + "type": "string" + }, + "uid_attr": { + "type": "string" + }, + "sam_account_name_attr": { + "type": "string" + }, + "email_attr": { + "type": "string" + }, + "display_name_attr": { + "type": "string" + }, + "group_membership_attr": { + "type": "string" + } + }, + "description": "Ldap User Settings DTO" + }, + "NGLdapSettingsWithEncryptedDataDetails": { + "required": [ + "encryptedDataDetail", + "ldapSettings" + ], + "type": "object", + "properties": { + "ldapSettings": { + "$ref": "#/components/schemas/LdapSettingsDTO1" + }, + "encryptedDataDetail": { + "$ref": "#/components/schemas/EncryptedDataDetail" + } + } + }, + "ResponseDTONGLdapSettingsWithEncryptedDataDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NGLdapSettingsWithEncryptedDataDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SecretUniqueIdentifier": { + "type": "object", + "properties": { + "kmsId": { + "type": "string" + } + } + }, + "LdapResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE" + ] + }, + "message": { + "type": "string" + } + } + }, + "RestResponseLdapResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/LdapResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "LdapGroupResponse": { + "required": [ + "dn", + "name" + ], + "type": "object", + "properties": { + "dn": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "totalMembers": { + "type": "integer", + "format": "int32" + }, + "selectable": { + "type": "boolean" + }, + "message": { + "type": "string" + }, + "users": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LdapUserResponse" + } + } + } + }, + "LdapUserResponse": { + "required": [ + "dn", + "email", + "name" + ], + "type": "object", + "properties": { + "dn": { + "type": "string" + }, + "email": { + "type": "string" + }, + "name": { + "type": "string" + }, + "userId": { + "type": "string" + } + } + }, + "RestResponseCollectionLdapGroupResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LdapGroupResponse" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "ReferenceDTO": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "accountIdentifier": { + "type": "string" + }, + "count": { + "type": "integer", + "format": "int64" + } + } + }, + "ResponseDTOServiceInstanceUsageDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceInstanceUsageDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceInstanceUsageDTO": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "module": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "activeServices": { + "$ref": "#/components/schemas/UsageDataDTO" + }, + "activeServiceInstances": { + "$ref": "#/components/schemas/UsageDataDTO" + }, + "cdLicenseType": { + "type": "string", + "enum": [ + "SERVICES", + "SERVICE_INSTANCES", + "LEGACY_USER", + "DEVELOPER_360", + "CUSTOM", + "NAMED_USER" + ] + } + } + }, + "UsageDataDTO": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int64" + }, + "displayName": { + "type": "string" + }, + "references": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ReferenceDTO" + } + } + } + }, + "ResponseDTOServiceUsageDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceUsageDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceUsageDTO": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "module": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "activeServices": { + "$ref": "#/components/schemas/UsageDataDTO" + }, + "activeServiceInstances": { + "$ref": "#/components/schemas/UsageDataDTO" + }, + "cdLicenseType": { + "type": "string", + "enum": [ + "SERVICES", + "SERVICE_INSTANCES", + "LEGACY_USER", + "DEVELOPER_360", + "CUSTOM", + "NAMED_USER" + ] + }, + "serviceLicenses": { + "$ref": "#/components/schemas/UsageDataDTO" + } + } + }, + "LicenseUsage": { + "required": [ + "className" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "module": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "className": { + "type": "string" + } + }, + "description": "This is the view of a License Usage object defined in Harness", + "discriminator": { + "propertyName": "className" + } + }, + "ResponseDTOLicenseUsage": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/LicenseUsage" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "LDAPSettings": { + "required": [ + "connectionSettings", + "displayName", + "identifier" + ], + "type": "object", + "properties": { + "connectionSettings": { + "$ref": "#/components/schemas/LdapConnectionSettings" + }, + "identifier": { + "type": "string", + "description": "This is the LDAP setting identifier." + }, + "userSettingsList": { + "type": "array", + "description": "This is the user settings list in LDAP setting.", + "items": { + "$ref": "#/components/schemas/LdapUserSettings" + } + }, + "groupSettingsList": { + "type": "array", + "description": "This is the group settings list in LDAP setting.", + "items": { + "$ref": "#/components/schemas/LdapGroupSettings" + } + }, + "displayName": { + "type": "string", + "description": "This is the LDAP setting display name." + }, + "cronExpression": { + "type": "string", + "description": "This is the cron expression in LDAP Settings." + }, + "nextIterations": { + "type": "array", + "description": "This is the list of iterations for next LDAP sync job.", + "items": { + "type": "integer", + "description": "This is the list of iterations for next LDAP sync job.", + "format": "int64" + } + }, + "disabled": { + "type": "boolean", + "description": "This tells if LDAP Settings is disabled or not, LDAP sync won't happen in disabled state." + }, + "settingsType": { + "type": "string", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + } + }, + "description": "This has the details of LDAP Settings supported in NG." + }, + "LdapConnectionSettings": { + "required": [ + "host" + ], + "type": "object", + "properties": { + "host": { + "type": "string" + }, + "port": { + "type": "integer", + "format": "int32" + }, + "sslEnabled": { + "type": "boolean" + }, + "referralsEnabled": { + "type": "boolean" + }, + "maxReferralHops": { + "minimum": 1, + "type": "integer", + "format": "int32" + }, + "bindDN": { + "type": "string" + }, + "bindPassword": { + "type": "string" + }, + "passwordType": { + "type": "string" + }, + "bindSecret": { + "type": "array", + "items": { + "type": "string" + } + }, + "connectTimeout": { + "type": "integer", + "format": "int32" + }, + "responseTimeout": { + "type": "integer", + "format": "int32" + }, + "useRecursiveGroupMembershipSearch": { + "type": "boolean" + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "accountId": { + "type": "string" + }, + "settingType": { + "type": "string", + "enum": [ + "HOST_CONNECTION_ATTRIBUTES", + "BASTION_HOST_CONNECTION_ATTRIBUTES", + "SMTP", + "SFTP", + "JENKINS", + "BAMBOO", + "STRING", + "SPLUNK", + "ELK", + "LOGZ", + "SUMO", + "DATA_DOG", + "APM_VERIFICATION", + "BUG_SNAG", + "LOG_VERIFICATION", + "APP_DYNAMICS", + "NEW_RELIC", + "DYNA_TRACE", + "INSTANA", + "DATA_DOG_LOG", + "CLOUD_WATCH", + "SCALYR", + "ELB", + "SLACK", + "AWS", + "GCS", + "GCP", + "AZURE", + "PCF", + "RANCHER", + "DIRECT", + "KUBERNETES_CLUSTER", + "DOCKER", + "ECR", + "GCR", + "ACR", + "PHYSICAL_DATA_CENTER", + "KUBERNETES", + "NEXUS", + "ARTIFACTORY", + "SMB", + "AMAZON_S3", + "GIT", + "SSH_SESSION_CONFIG", + "SERVICE_VARIABLE", + "CONFIG_FILE", + "KMS", + "GCP_KMS", + "JIRA", + "SERVICENOW", + "SECRET_TEXT", + "SECRET_FILE", + "YAML_GIT_SYNC", + "VAULT", + "VAULT_SSH", + "AWS_SECRETS_MANAGER", + "WINRM_CONNECTION_ATTRIBUTES", + "WINRM_SESSION_CONFIG", + "PROMETHEUS", + "INFRASTRUCTURE_MAPPING", + "HTTP_HELM_REPO", + "AMAZON_S3_HELM_REPO", + "GCS_HELM_REPO", + "SPOT_INST", + "AZURE_ARTIFACTS_PAT", + "CUSTOM", + "CE_AWS", + "CE_GCP", + "CE_AZURE", + "AZURE_VAULT", + "KUBERNETES_CLUSTER_NG", + "GIT_NG", + "SSO_SAML", + "LDAP", + "GCP_SECRETS_MANAGER", + "TRIGGER", + "OCI_HELM_REPO" + ] + } + }, + "description": "This is the LDAP connection setting." + }, + "LdapGroupSettings": { + "required": [ + "baseDN", + "descriptionAttr", + "nameAttr", + "referencedUserAttr", + "searchFilter", + "userMembershipAttr" + ], + "type": "object", + "properties": { + "baseDN": { + "type": "string" + }, + "searchFilter": { + "type": "string" + }, + "nameAttr": { + "type": "string" + }, + "descriptionAttr": { + "type": "string" + }, + "userMembershipAttr": { + "type": "string" + }, + "referencedUserAttr": { + "type": "string" + } + }, + "description": "This is the group settings list in LDAP setting." + }, + "LdapUserSettings": { + "required": [ + "baseDN", + "displayNameAttr", + "emailAttr", + "groupMembershipAttr", + "samAccountNameAttr", + "searchFilter", + "uidAttr" + ], + "type": "object", + "properties": { + "baseDN": { + "type": "string" + }, + "searchFilter": { + "type": "string" + }, + "uidAttr": { + "type": "string" + }, + "samAccountNameAttr": { + "type": "string" + }, + "emailAttr": { + "type": "string" + }, + "displayNameAttr": { + "type": "string" + }, + "groupMembershipAttr": { + "type": "string" + } + }, + "description": "This is the user settings list in LDAP setting." + }, + "RestResponseLDAPSettings": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/LDAPSettings" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "RestResponseBoolean": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "boolean" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "RestResponseSSOConfig": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/SSOConfig" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "SSOConfig": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "ssoSettings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SSOSettingsDTO" + } + }, + "authenticationMechanism": { + "type": "string", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + } + } + }, + "SSOSettingsDTO": { + "required": [ + "displayName", + "type", + "url" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + }, + "displayName": { + "type": "string" + }, + "url": { + "type": "string" + }, + "uuid": { + "type": "string" + }, + "nextIterations": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + } + }, + "accountId": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "AuthenticationSettingsResponse": { + "type": "object", + "properties": { + "ngAuthSettings": { + "type": "array", + "description": "List of Auth Settings configured for an Account.", + "items": { + "$ref": "#/components/schemas/NGAuthSettings" + } + }, + "whitelistedDomains": { + "uniqueItems": true, + "type": "array", + "description": "List of the whitelisted domains.", + "items": { + "type": "string", + "description": "List of the whitelisted domains." + } + }, + "authenticationMechanism": { + "type": "string", + "description": "Indicates if the Authentication Mechanism is SSO or NON-SSO.", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + }, + "twoFactorEnabled": { + "type": "boolean", + "description": "If Two Factor Authentication is enabled, this value is true. Otherwise, it is false." + }, + "sessionTimeoutInMinutes": { + "type": "integer", + "description": "Any user of this account will be logged out if there is no activity for this number of minutes", + "format": "int32" + }, + "publicAccessEnabled": { + "type": "boolean", + "description": "If public access is enabled, this value is true. Otherwise, it is false." + }, + "oauthEnabled": { + "type": "boolean", + "description": "If OAUTH is enabled" + }, + "absoluteSessionTimeoutInMinutes": { + "type": "integer", + "description": "Any user of this account will be logged out after this number of minutes", + "format": "int32" + } + }, + "description": "This contains information on the Authentication Settings defined in Harness." + }, + "NGAuthSettings": { + "type": "object", + "properties": { + "settingsType": { + "type": "string", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + } + }, + "description": "This has the details of Authentication Settings supported in NG.", + "discriminator": { + "propertyName": "settingsType" + } + }, + "RestResponseAuthenticationSettingsResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/AuthenticationSettingsResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "PasswordStrengthPolicy": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "This value is true if the password strength policy is enabled. Otherwise, it is false." + }, + "minNumberOfCharacters": { + "type": "integer", + "description": "Minimum number of characters required in a password.", + "format": "int32" + }, + "minNumberOfUppercaseCharacters": { + "type": "integer", + "description": "Minimum number of uppercase characters required in a password.", + "format": "int32" + }, + "minNumberOfLowercaseCharacters": { + "type": "integer", + "description": "Minimum number of lower characters required in a password.", + "format": "int32" + }, + "minNumberOfSpecialCharacters": { + "type": "integer", + "description": "Minimum number of special characters required in a password.", + "format": "int32" + }, + "minNumberOfDigits": { + "type": "integer", + "description": "Minimum number of digits required in a password.", + "format": "int32" + } + }, + "description": "This has information about the password strength policy in Harness." + }, + "RestResponsePasswordStrengthPolicy": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/PasswordStrengthPolicy" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "LoginTypeResponse": { + "type": "object", + "properties": { + "authenticationMechanism": { + "type": "string", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + }, + "showCaptcha": { + "type": "boolean" + }, + "defaultExperience": { + "type": "string", + "enum": [ + "NG", + "CG" + ] + }, + "ssorequest": { + "$ref": "#/components/schemas/SSORequest" + }, + "oauthEnabled": { + "type": "boolean" + } + } + }, + "RestResponseLoginTypeResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/LoginTypeResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "SSORequest": { + "type": "object", + "properties": { + "oauthProviderType": { + "type": "string", + "enum": [ + "AZURE", + "BITBUCKET", + "GITHUB", + "GITLAB", + "GOOGLE", + "LINKEDIN" + ] + }, + "idpRedirectUrl": { + "type": "string" + }, + "oauthProviderTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "AZURE", + "BITBUCKET", + "GITHUB", + "GITLAB", + "GOOGLE", + "LINKEDIN" + ] + } + }, + "ssoId": { + "type": "string" + }, + "friendlySamlName": { + "type": "string" + }, + "samlProviderType": { + "type": "string", + "enum": [ + "AZURE", + "OKTA", + "ONELOGIN", + "OTHER" + ] + } + } + }, + "SessionTimeoutSettings": { + "required": [ + "sessionTimeOutInMinutes" + ], + "type": "object", + "properties": { + "sessionTimeOutInMinutes": { + "maximum": 4320, + "minimum": 30, + "type": "integer", + "description": "Any user of this account will be logged out if there is no activity for this number of minutes", + "format": "int32" + }, + "absoluteSessionTimeOutInMinutes": { + "maximum": 4320, + "type": "integer", + "description": "Any user of this account will be logged out after this number of minutes", + "format": "int32" + } + }, + "description": "This contains the information about the session timeout for this account in Harness." + }, + "TwoFactorAdminOverrideSettings": { + "type": "object", + "properties": { + "adminOverrideTwoFactorEnabled": { + "type": "boolean", + "description": "This value is true if Admin Override for Two Factor Authentication is enabled. Otherwise, it is false." + } + }, + "description": "This contains the information about the Two Factor Admin Override in Harness." + }, + "OAuthSettings": { + "type": "object", + "properties": { + "filter": { + "type": "string", + "description": "Filter out the available OAuth providers." + }, + "allowedProviders": { + "uniqueItems": true, + "type": "array", + "description": "This is the list of OAuth Providers that are supported.", + "items": { + "type": "string", + "description": "This is the list of OAuth Providers that are supported.", + "enum": [ + "AZURE", + "BITBUCKET", + "GITHUB", + "GITLAB", + "GOOGLE", + "LINKEDIN" + ] + } + }, + "settingsType": { + "type": "string", + "enum": [ + "USER_PASSWORD", + "SAML", + "LDAP", + "OAUTH", + "OIDC" + ] + } + }, + "description": "This contains the information about OAuth settings defined in Harness." + }, + "FormDataContentDisposition": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "parameters": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "fileName": { + "type": "string" + }, + "creationDate": { + "type": "string", + "format": "date-time" + }, + "modificationDate": { + "type": "string", + "format": "date-time" + }, + "readDate": { + "type": "string", + "format": "date-time" + }, + "size": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + }, + "AccountSettingConfig": { + "type": "object", + "description": "Configuration of the Account Settings." + }, + "AccountSettingResponse": { + "type": "object", + "properties": { + "accountSettings": { + "$ref": "#/components/schemas/AccountSettings" + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which account setting was created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "This is the time at which account setting was last modified.", + "format": "int64" + } + }, + "description": "This has the Account Setting details along with its metadata." + }, + "AccountSettings": { + "required": [ + "accountIdentifier", + "config", + "type" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "config": { + "$ref": "#/components/schemas/AccountSettingConfig" + }, + "type": { + "type": "string", + "description": "This is the type of resource for which Account Setting is created.", + "enum": [ + "Connector" + ] + } + }, + "description": "This is the view of Account Settings in Harness." + }, + "ConnectorSettings": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AccountSettingConfig" + }, + { + "type": "object", + "properties": { + "builtInSMDisabled": { + "type": "boolean" + } + } + } + ] + }, + "ResponseDTOAccountSettingResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AccountSettingResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListAccountSettings": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AccountSettings" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AgentMtlsEndpointDetails": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "fqdn": { + "type": "string" + }, + "caCertificates": { + "type": "string" + }, + "mode": { + "type": "string", + "enum": [ + "LOOSE", + "STRICT" + ] + } + } + }, + "RestResponseAgentMtlsEndpointDetails": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/AgentMtlsEndpointDetails" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "AgentMtlsEndpointRequest": { + "type": "object", + "properties": { + "domainPrefix": { + "type": "string" + }, + "caCertificates": { + "type": "string" + }, + "mode": { + "type": "string", + "enum": [ + "LOOSE", + "STRICT" + ] + } + } + }, + "EntityDetailProtoDTO": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "identifierRef": { + "$ref": "#/components/schemas/IdentifierRefProtoDTO" + }, + "identifierRefOrBuilder": { + "$ref": "#/components/schemas/IdentifierRefProtoDTOOrBuilder" + }, + "inputSetRefOrBuilder": { + "$ref": "#/components/schemas/InputSetReferenceProtoDTOOrBuilder" + }, + "templateRefOrBuilder": { + "$ref": "#/components/schemas/TemplateReferenceProtoDTOOrBuilder" + }, + "typeValue": { + "type": "integer", + "format": "int32" + }, + "infraDefRefOrBuilder": { + "$ref": "#/components/schemas/InfraDefinitionReferenceProtoDTOOrBuilder" + }, + "triggerRefOrBuilder": { + "$ref": "#/components/schemas/TriggerReferenceProtoDTOOrBuilder" + }, + "entityGitMetadataOrBuilder": { + "$ref": "#/components/schemas/EntityGitMetadataOrBuilder" + }, + "entityRefCase": { + "type": "string", + "enum": [ + "IDENTIFIERREF", + "INPUTSETREF", + "TEMPLATEREF", + "INFRADEFREF", + "TRIGGERREF", + "ENTITYREF_NOT_SET" + ] + }, + "entityGitMetadata": { + "$ref": "#/components/schemas/EntityGitMetadata" + }, + "infraDefRef": { + "$ref": "#/components/schemas/InfraDefinitionReferenceProtoDTO" + }, + "triggerRef": { + "$ref": "#/components/schemas/TriggerReferenceProtoDTO" + }, + "inputSetRef": { + "$ref": "#/components/schemas/InputSetReferenceProtoDTO" + }, + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "PROJECTS", + "PIPELINES", + "CONNECTORS", + "SECRETS", + "SERVICE", + "ENVIRONMENT", + "INPUT_SETS", + "CV_CONFIG", + "DELEGATES", + "DELEGATE_CONFIGURATIONS", + "CV_VERIFICATION_JOB", + "CV_KUBERNETES_ACTIVITY_SOURCE", + "INTEGRATION_STEPS", + "INTEGRATION_STAGE", + "DEPLOYMENT_STAGE", + "DEPLOYMENT_STEPS", + "PIPELINE_STEPS", + "APPROVAL_STAGE", + "TRIGGERS", + "FEATURE_FLAG_STAGE", + "MONITORED_SERVICE", + "TEMPLATE", + "GIT_REPOSITORIES", + "FEATURE_FLAGS", + "HTTP_STEP", + "SHELL_SCRIPT_STEP", + "K8S_CANARY_DEPLOY_STEP", + "JIRA_CREATE_STEP", + "SERVICENOW_APPROVAL_STEP", + "JIRA_UPDATE_STEP", + "JIRA_APPROVAL_STEP", + "HARNESS_APPROVAL_STEP", + "BARRIER_STEP", + "VERIFY_STEP", + "OPAPOLICIES", + "POLICY_STEP", + "ARTIFACTORY_UPLOAD", + "GCS_UPLOAD", + "S3_UPLOAD", + "BUILD_AND_PUSH_GCR", + "BUILD_AND_PUSH_ECR", + "BUILD_AND_PUSH_DOCKER_REGISTRY", + "RUN_STEP", + "RUN_TEST", + "PLUGIN", + "RESTORE_CACHE_GCS", + "RESTORE_CACHE_S3", + "SAVE_CACHE_GCS", + "SAVE_CACHE_S3", + "FLAG_CONFIGURATION", + "SECURITY", + "K8S_APPLY_STEP", + "K8S_BLUE_GREEN_DEPLOY_STEP", + "K8S_ROLLING_DEPLOY_STEP", + "K8S_ROLLING_ROLLBACK_STEP", + "K8S_SCALE_STEP", + "K8S_DELETE_STEP", + "K8S_BG_SWAP_SERVICES_STEP", + "K8S_CANARY_DELETE_STEP", + "TERRAFORM_APPLY_STEP", + "TERRAFORM_PLAN_STEP", + "TERRAFORM_DESTROY_STEP", + "TERRAFORM_ROLLBACK_STEP", + "HELM_DEPLOY_STEP", + "HELM_ROLLBACK_STEP", + "SERVICENOW_CREATE_STEP", + "SERVICENOW_UPDATE_STEP", + "ENVIRONMENT_GROUP", + "SECURITY_STAGE", + "SECURITY_STEPS", + "FILES", + "SERVERLESS_AWS_LAMBDA_DEPLOY_STEP", + "SERVERLESS_AWS_LAMBDA_ROLLBACK_STEP", + "CUSTOM_STAGE", + "CLOUDFORMATION_CREATE_STACK_STEP", + "CLOUDFORMATION_DELETE_STACK_STEP", + "CLOUDFORMATION_ROLLBACK_STACK_STEP", + "INFRASTRUCTURE", + "GITOPS_CREATE_PR", + "COMMAND_STEP", + "STRATEGY_NODE", + "AZURE_SLOT_DEPLOYMENT_STEP", + "AZURE_TRAFFIC_SHIFT_STEP", + "AZURE_SWAP_SLOT_STEP", + "AZURE_WEBAPP_ROLLBACK_STEP", + "GITOPS_MERGE_PR", + "QUEUE_STEP", + "CUSTOM_APPROVAL_STEP", + "JENKINS_BUILD", + "TEMPLATE_STAGE", + "EMAIL_STEP", + "BUILD_AND_PUSH_ACR", + "AZURE_CREATE_ARM_RESOURCE_STEP", + "GIT_CLONE", + "AZURE_CREATE_BP_RESOURCE_STEP", + "AZURE_ROLLBACK_ARM_RESOURCE_STEP", + "BACKGROUND_STEP", + "ECS_ROLLING_DEPLOY_STEP", + "ECS_ROLLING_ROLLBACK_STEP", + "ECS_CANARY_DEPLOY_STEP", + "ECS_CANARY_DELETE_STEP", + "TEMPLATE_CUSTOM_DEPLOYMENT", + "WAIT_STEP", + "ARTIFACT_SOURCE_TEMPLATE", + "ECS_BLUE_GREEN_CREATE_SERVICE_STEP", + "ECS_BLUE_GREEN_SWAP_TARGET_GROUPS_STEP", + "ECS_BLUE_GREEN_ROLLBACK_STEP", + "FETCH_INSTANCE_SCRIPT_STEP", + "PIPELINE_STAGE", + "SHELL_SCRIPT_PROVISION_STEP", + "SERVICENOW_IMPORT_SET_STEP", + "GITOPS_UPDATE_RELEASE_REPO", + "FREEZE", + "ECS_RUN_TASK_STEP", + "CHAOS_STEP", + "ELASTIGROUP_DEPLOY_STEP", + "ELASTIGROUP_ROLLBACK_STEP", + "ACTION_STEP", + "AWS_ECR", + "BANDIT", + "BLACKDUCK", + "BRAKEMAN", + "BURP", + "CHECKMARX", + "CLAIR", + "DATA_THEOREM", + "DOCKER_CONTENT_TRUST", + "EXTERNAL", + "FORTIFY_ON_DEMAND", + "GRYPE", + "JFROG_XRAY", + "MEND", + "METASPLOIT", + "NESSUS", + "NEXUS_IQ", + "NIKTO", + "NMAP", + "OPENVAS", + "OWASP", + "PRISMA_CLOUD", + "PROWLER", + "QUALYS", + "REAPSAW", + "SHIFT_LEFT", + "SNIPER", + "SNYK", + "SONARQUBE", + "SYSDIG", + "TENABLE", + "VERACODE", + "ZAP", + "AQUA_TRIVY", + "ELASTIGROUP_SETUP_STEP", + "BITRISE_STEP", + "GITOPS_FETCH_LINKED_APPS", + "TERRAGRUNT_PLAN_STEP", + "TERRAGRUNT_APPLY_STEP", + "TERRAGRUNT_DESTROY_STEP", + "TERRAGRUNT_ROLLBACK_STEP", + "IACM", + "IACM_STAGE", + "IACM_STEPS", + "CONTAINER_STEP", + "ASG_CANARY_DEPLOY_STEP", + "ELASTIGROUP_BG_STAGE_SETUP_STEP", + "ELASTIGROUP_SWAP_ROUTE_STEP", + "ASG_CANARY_DELETE_STEP", + "TAS_CANARY_APP_SETUP_STEP", + "TAS_BG_APP_SETUP_STEP", + "TAS_BASIC_APP_SETUP_STEP", + "TANZU_COMMAND_STEP", + "IACM_TERRAFORM_PLUGIN", + "TAS_APP_RESIZE_STEP", + "TAS_ROLLBACK_STEP", + "TAS_SWAP_ROUTES_STEP", + "TAS_SWAP_ROLLBACK_STEP", + "ASG_ROLLING_DEPLOY_STEP", + "ASG_ROLLING_ROLLBACK_STEP", + "IACM_APPROVAL", + "CCM_GOVERNANCE_RULE_AWS", + "TAS_ROLLING_DEPLOY", + "TAS_ROLLING_ROLLBACK", + "K8S_DRY_RUN_MANIFEST_STEP", + "ASG_BLUE_GREEN_SWAP_SERVICE_STEP", + "ASG_BLUE_GREEN_DEPLOY_STEP", + "ASG_BLUE_GREEN_ROLLBACK_STEP", + "TERRAFORM_CLOUD_RUN", + "GOOGLE_CLOUD_FUNCTIONS_DEPLOY", + "GOOGLE_CLOUD_FUNCTIONS_DEPLOY_WITHOUT_TRAFFIC", + "GOOGLE_CLOUD_FUNCTIONS_TRAFFIC_SHIFT", + "GOOGLE_CLOUD_FUNCTIONS_ROLLBACK", + "AWS_LAMBDA_DEPLOY", + "TERRAFORM_CLOUD_ROLLBACK", + "AWS_SAM_DEPLOY", + "AWS_SAM_ROLLBACK", + "SSCA_ORCHESTRATION", + "AWS_LAMBDA_ROLLBACK", + "GITOPS_SYNC", + "BAMBOO_BUILD", + "CD_SSCA_ORCHESTRATION", + "TAS_ROUTE_MAPPING", + "AWS_SECURITY_HUB", + "CUSTOM_INGEST", + "BACKSTAGE_ENVIRONMENT_VARIABLE", + "CODEQL", + "FOSSA", + "GIT_LEAKS", + "GOOGLE_CLOUD_FUNCTIONS_GEN_ONE_DEPLOY", + "GOOGLE_CLOUD_FUNCTIONS_GEN_ONE_ROLLBACK", + "K8S_BLUE_GREEN_STAGE_SCALE_DOWN", + "AWS_SAM_BUILD", + "SEMGREP", + "SSCA_ENFORCEMENT", + "IDP_CONNECTOR", + "CD_SSCA_ENFORCEMENT", + "DOWNLOAD_MANIFESTS", + "SERVERLESS_AWS_LAMBDA_PREPARE_ROLLBACK_V2", + "SERVERLESS_AWS_LAMBDA_ROLLBACK_V2", + "COVERITY", + "SERVERLESS_AWS_LAMBDA_DEPLOY_V2", + "ANALYZE_DEPLOYMENT_IMPACT_STEP", + "SERVERLESS_AWS_LAMBDA_PACKAGE_V2", + "GITOPS_REVERT_PR", + "AWS_CDK_BOOTSTRAP", + "AWS_CDK_SYNTH", + "AWS_CDK_DIFF", + "AWS_CDK_DEPLOY", + "AWS_CDK_DESTROY", + "IDP_SCORECARD", + "IDP_CHECK", + "AWS_CDK_ROLLBACK", + "SLSA_VERIFICATION", + "UPDATE_GITOPS_APP", + "ECS_SERVICE_SETUP_STEP", + "ECS_UPGRADE_CONTAINER_STEP", + "ECS_BASIC_ROLLBACK_STEP", + "CHAOS_INFRASTRUCTURE", + "BUILD_AND_PUSH_GAR", + "ANCHORE", + "OVERRIDES", + "ASG_SHIFT_TRAFFIC_STEP", + "AQUA_SECURITY", + "IDP_STAGE", + "CHAOS_HUB", + "COOKIECUTTER", + "CREATE_REPO", + "DOWNLOAD_AWS_S3", + "DIRECT_PUSH", + "REGISTER_CATALOG", + "K8S_TRAFFIC_ROUTING_STEP", + "DOWNLOAD_HARNESS_STORE", + "CREATE_CATALOG", + "SLACK_NOTIFY", + "OSV_SCANNER", + "IACM_OPEN_TOFU_PLUGIN", + "ASG_PHASED_DEPLOY_STEP", + "ASG_SETUP_STEP", + "ASG_ROLLBACK_STEP", + "RUN_TEST_V2", + "WIZ", + "CERTIFICATES", + "IACM_CHECKOV_PLUGIN", + "IACM_TF_COMPLIANCE_PLUGIN", + "IACM_TF_LINT_PLUGIN", + "IACM_TF_SEC_PLUGIN", + "NOTIFICATION_RULE", + "NOTIFICATION_CHANNEL", + "K8S_PATCH_STEP", + "CREATE_ORGANISATION", + "CREATE_PROJECT", + "DB_DEVOPS_APPLY_SCHEMA", + "IACM_PREPARE_EXECUTION", + "DB_DEVOPS_ROLLBACK_SCHEMA", + "K8S_ROLLOUT_STEP", + "CREATE_RESOURCE", + "CHECKOV", + "SERVICE_DISCOVERY_AGENT", + "CHAOS_INFRASTRUCTURE_V2", + "TRACEABLE", + "AZURE_FUNCTION_DEPLOY", + "AZURE_FUNCTION_ROLLBACK", + "GOOGLE_CLOUD_RUN_DEPLOY", + "GOOGLE_CLOUD_RUN_PREPARE_ROLLBACK_DATA", + "GOOGLE_CLOUD_RUN_TRAFFIC_SHIFT", + "GOOGLE_CLOUD_RUN_ROLLBACK", + "GOOGLE_CLOUD_RUN_JOB", + "UPDATE_CATALOG_PROPERTY", + "IACM_WORKSPACE", + "IACM_MODULE_TEST", + "CHECKMARX_ONE", + "ASG_STEADY_STATE_STEP", + "SSCA_ARTIFACT_VERIFICATION", + "GITOPS_APPLICATION", + "HELM_DELETE_STEP", + "ECS_BLUE_GREEN_TRAFFIC_SHIFT_STEP", + "STAND_ALONE_TRAFFIC_SHIFT_ROLLBACK_STEP", + "ELASTIGROUP_BLUE_GREEN_TRAFFIC_SHIFT_STEP", + "IDP_CATALOG", + "IACM_TERRAGRUNT_PLUGIN", + "UNRECOGNIZED" + ] + }, + "templateRef": { + "$ref": "#/components/schemas/TemplateReferenceProtoDTO" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/EntityDetailProtoDTO" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserEntityDetailProtoDTO" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "EntityGitMetadataOrBuilder": { + "type": "object", + "properties": { + "repo": { + "type": "string" + }, + "repoBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "branchBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "branch": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "IdentifierRefProtoDTO": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "scopeValue": { + "type": "integer", + "format": "int32" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/IdentifierRefProtoDTO" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserIdentifierRefProtoDTO" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "scope": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "UNKNOWN", + "UNRECOGNIZED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "IdentifierRefProtoDTOOrBuilder": { + "type": "object", + "properties": { + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "scopeValue": { + "type": "integer", + "format": "int32" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "scope": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "UNKNOWN", + "UNRECOGNIZED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "InfraDefinitionReferenceProtoDTO": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "envName": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "envIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "envNameOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/InfraDefinitionReferenceProtoDTO" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserInfraDefinitionReferenceProtoDTO" + }, + "envIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "InfraDefinitionReferenceProtoDTOOrBuilder": { + "type": "object", + "properties": { + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "envName": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "envIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "envNameOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "envIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "InputSetReferenceProtoDTO": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "pipelineIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "pipelineIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/InputSetReferenceProtoDTO" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserInputSetReferenceProtoDTO" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "InputSetReferenceProtoDTOOrBuilder": { + "type": "object", + "properties": { + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "pipelineIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "pipelineIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ParserEntityDetailProtoDTO": { + "type": "object" + }, + "ParserEntityGitMetadata": { + "type": "object" + }, + "ParserIdentifierRefProtoDTO": { + "type": "object" + }, + "ParserInfraDefinitionReferenceProtoDTO": { + "type": "object" + }, + "ParserInputSetReferenceProtoDTO": { + "type": "object" + }, + "ParserStringValue": { + "type": "object" + }, + "ParserTemplateReferenceProtoDTO": { + "type": "object" + }, + "ParserTriggerReferenceProtoDTO": { + "type": "object" + }, + "ResponseDTOListEntityDetailProtoDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityDetailProtoDTO" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "StringValue": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "valueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "value": { + "type": "string" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/StringValue" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserStringValue" + }, + "initialized": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "StringValueOrBuilder": { + "type": "object", + "properties": { + "valueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "value": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "TemplateReferenceProtoDTO": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "scopeValue": { + "type": "integer", + "format": "int32" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "versionLabelOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "versionLabel": { + "$ref": "#/components/schemas/StringValue" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TemplateReferenceProtoDTO" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTemplateReferenceProtoDTO" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "scope": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "UNKNOWN", + "UNRECOGNIZED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TemplateReferenceProtoDTOOrBuilder": { + "type": "object", + "properties": { + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "scopeValue": { + "type": "integer", + "format": "int32" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "versionLabelOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "versionLabel": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "scope": { + "type": "string", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "UNKNOWN", + "UNRECOGNIZED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "TriggerReferenceProtoDTO": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "pipelineIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "pipelineIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TriggerReferenceProtoDTO" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTriggerReferenceProtoDTO" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TriggerReferenceProtoDTOOrBuilder": { + "type": "object", + "properties": { + "parentUniqueId": { + "$ref": "#/components/schemas/StringValue" + }, + "accountIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "orgIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "projectIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "pipelineIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "projectIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "orgIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "identifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "accountIdentifierOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "parentUniqueIdOrBuilder": { + "$ref": "#/components/schemas/StringValueOrBuilder" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "pipelineIdentifier": { + "$ref": "#/components/schemas/StringValue" + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "identifier": { + "$ref": "#/components/schemas/StringValue" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "CustomDeploymentYamlRequestDTO": { + "required": [ + "entityYaml" + ], + "type": "object", + "properties": { + "entityYaml": { + "type": "string" + } + } + }, + "CustomDeploymentVariableProperties": { + "required": [ + "fqn", + "variableName" + ], + "type": "object", + "properties": { + "fqn": { + "type": "string" + }, + "variableName": { + "type": "string" + }, + "localName": { + "type": "string" + }, + "aliasFqn": { + "type": "string" + }, + "visible": { + "type": "boolean" + } + } + }, + "CustomDeploymentVariableResponseDTO": { + "required": [ + "metadataMap", + "yaml" + ], + "type": "object", + "properties": { + "yaml": { + "type": "string" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/CustomDeploymentVariableProperties" + } + } + } + }, + "ResponseDTOCustomDeploymentVariableResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CustomDeploymentVariableResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CustomDeploymentRefreshYamlDTO": { + "required": [ + "refreshedYaml" + ], + "type": "object", + "properties": { + "refreshedYaml": { + "type": "string" + } + } + }, + "ResponseDTOCustomDeploymentRefreshYamlDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CustomDeploymentRefreshYamlDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CustomDeploymentYamlDTO": { + "required": [ + "yaml" + ], + "type": "object", + "properties": { + "yaml": { + "type": "string" + } + } + }, + "CustomDeploymentInfraResponseDTO": { + "required": [ + "obsolete" + ], + "type": "object", + "properties": { + "obsolete": { + "type": "boolean" + } + } + }, + "ResponseDTOCustomDeploymentInfraResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CustomDeploymentInfraResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "DelegateDownloadRequest": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "size": { + "type": "string", + "enum": [ + "LAPTOP", + "SMALL", + "MEDIUM", + "LARGE", + "CCM_SMALL" + ] + }, + "tags": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "tokenName": { + "type": "string" + }, + "clusterPermissionType": { + "type": "string", + "enum": [ + "CLUSTER_ADMIN", + "CLUSTER_VIEWER", + "NAMESPACE_ADMIN" + ] + }, + "customClusterNamespace": { + "type": "string" + } + } + }, + "DelegateGroupDTO": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "tags": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "RestResponseDelegateGroupDTO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/DelegateGroupDTO" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "DelegateGroupTags": { + "type": "object", + "properties": { + "tags": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "RestResponseListDelegateGroupDTO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateGroupDTO" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "DelegateDeleteResponse": { + "type": "object", + "properties": { + "responseMsg": { + "type": "string" + } + } + }, + "RestResponseDelegateDeleteResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/DelegateDeleteResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "DelegateSetupDetails": { + "required": [ + "delegateType", + "name" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "size": { + "type": "string", + "enum": [ + "LAPTOP", + "SMALL", + "MEDIUM", + "LARGE", + "CCM_SMALL" + ] + }, + "hostName": { + "type": "string" + }, + "delegateConfigurationId": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "k8sConfigDetails": { + "$ref": "#/components/schemas/K8sConfigDetails" + }, + "tags": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "delegateType": { + "type": "string", + "description": "Currently KUBERNETES and HELM_DELEGATE are supported." + }, + "tokenName": { + "type": "string" + }, + "runAsRoot": { + "type": "boolean" + }, + "version": { + "type": "string" + } + } + }, + "K8sConfigDetails": { + "type": "object", + "properties": { + "k8sPermissionType": { + "type": "string", + "enum": [ + "CLUSTER_ADMIN", + "CLUSTER_VIEWER", + "NAMESPACE_ADMIN" + ] + }, + "namespace": { + "type": "string" + } + } + }, + "RestResponseVersionOverridesResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/VersionOverridesResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "VersionOverrideResponseDTO": { + "type": "object", + "properties": { + "version": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "parentUniqueId": { + "type": "string" + }, + "tags": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "validTillNextRelease": { + "type": "boolean" + }, + "validUntil": { + "type": "string", + "format": "date-time" + } + } + }, + "VersionOverridesResponse": { + "type": "object", + "properties": { + "versionOverrides": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VersionOverrideResponseDTO" + } + } + } + }, + "DelegateListResponse": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "tags": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "lastHeartBeat": { + "type": "integer", + "format": "int64" + }, + "connected": { + "type": "boolean" + }, + "delegateReplicas": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateReplica" + } + }, + "autoUpgrade": { + "type": "string", + "enum": [ + "ON", + "OFF", + "DETECTING" + ] + }, + "legacy": { + "type": "boolean" + }, + "orgName": { + "type": "string" + }, + "projectName": { + "type": "string" + } + } + }, + "DelegateReplica": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "lastHeartbeat": { + "type": "integer", + "format": "int64" + }, + "connected": { + "type": "boolean" + }, + "hostName": { + "type": "string" + }, + "version": { + "type": "string" + }, + "expiringAt": { + "type": "integer", + "format": "int64" + } + } + }, + "RestResponseListDelegateListResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateListResponse" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "DelegateFilterPropertiesDTO": { + "required": [ + "filterType" + ], + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "Filter on delegate connectivity", + "enum": [ + "CONNECTED", + "DISCONNECTED", + "ENABLED", + "WAITING_FOR_APPROVAL", + "DISABLED", + "DELETED" + ] + }, + "description": { + "type": "string", + "description": "Filter on delegate description" + }, + "hostName": { + "type": "string", + "description": "Filter on delegate hostName" + }, + "delegateName": { + "type": "string", + "description": "Filter on delegate name" + }, + "delegateType": { + "type": "string", + "description": "Filter on delegate type" + }, + "delegateGroupIdentifier": { + "type": "string", + "description": "Filter on delegate group id" + }, + "delegateTags": { + "uniqueItems": true, + "type": "array", + "description": "Filter on delegate tags", + "items": { + "type": "string", + "description": "Filter on delegate tags" + } + }, + "delegateInstanceFilter": { + "type": "string", + "description": "Filter on delegate instance status", + "enum": [ + "EXPIRED", + "AVAILABLE" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "description": "This specifies the corresponding Entity of the filter.", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + "description": "Properties to filter delegates" + }, + "RestResponseSupportedDelegateVersion": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/SupportedDelegateVersion" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "SupportedDelegateVersion": { + "type": "object", + "properties": { + "latestSupportedVersion": { + "type": "string" + }, + "latestSupportedMinimalVersion": { + "type": "string" + } + } + }, + "RestResponseString": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "DelegateTokenDetails": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "createdByNgUser": { + "$ref": "#/components/schemas/Principal2" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string", + "enum": [ + "ACTIVE", + "REVOKED" + ] + }, + "value": { + "type": "string", + "description": "Value of delegate token. This is only populated when fetching delegate token by name or the user has edit delegate permission." + }, + "ownerIdentifier": { + "type": "string" + }, + "parentUniqueId": { + "type": "string" + }, + "revokeAfter": { + "type": "integer", + "format": "int64" + } + } + }, + "EmbeddedUser": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "externalUserId": { + "type": "string" + } + } + }, + "Principal2": { + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "USER", + "SERVICE", + "API_KEY", + "SERVICE_ACCOUNT" + ] + }, + "name": { + "type": "string" + }, + "jwtclaims": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "RestResponseDelegateTokenDetails": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/DelegateTokenDetails" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "RestResponseListDelegateTokenDetails": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateTokenDetails" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "DelegateConnectionDetails": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "version": { + "type": "string" + }, + "lastHeartbeat": { + "type": "integer", + "format": "int64" + }, + "lastGrpcHeartbeat": { + "type": "integer", + "format": "int64" + } + } + }, + "DelegateGroupDetails": { + "type": "object", + "properties": { + "groupId": { + "type": "string" + }, + "delegateGroupIdentifier": { + "type": "string" + }, + "delegateType": { + "type": "string" + }, + "groupName": { + "type": "string" + }, + "delegateDescription": { + "type": "string" + }, + "delegateConfigurationId": { + "type": "string" + }, + "groupImplicitSelectors": { + "type": "object", + "additionalProperties": { + "type": "string", + "enum": [ + "PROFILE_NAME", + "DELEGATE_NAME", + "HOST_NAME", + "GROUP_NAME", + "GROUP_SELECTORS", + "PROFILE_SELECTORS" + ] + } + }, + "groupCustomSelectors": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "lastHeartBeat": { + "type": "integer", + "format": "int64" + }, + "connectivityStatus": { + "type": "string" + }, + "activelyConnected": { + "type": "boolean" + }, + "grpcActive": { + "type": "boolean" + }, + "delegateInstanceDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateInner" + } + }, + "tokenActive": { + "type": "boolean" + }, + "autoUpgrade": { + "type": "string", + "enum": [ + "ON", + "OFF", + "DETECTING" + ] + }, + "delegateGroupExpirationTime": { + "type": "integer", + "format": "int64" + }, + "delegateVersion": { + "type": "string" + }, + "upgraderLastUpdated": { + "type": "integer", + "format": "int64" + }, + "immutable": { + "type": "boolean" + }, + "groupVersion": { + "type": "string" + } + } + }, + "DelegateGroupListing": { + "type": "object", + "properties": { + "delegateGroupDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateGroupDetails" + } + } + } + }, + "DelegateInner": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "lastHeartbeat": { + "type": "integer", + "format": "int64" + }, + "activelyConnected": { + "type": "boolean" + }, + "hostName": { + "type": "string" + }, + "tokenActive": { + "type": "boolean" + }, + "version": { + "type": "string" + }, + "delegateExpirationTime": { + "type": "integer", + "format": "int64" + }, + "polllingModeEnabled": { + "type": "boolean" + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateConnectionDetails" + } + } + } + }, + "RestResponseDelegateGroupListing": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/DelegateGroupListing" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "AllowedValuesUsagesInternalDTO": { + "type": "object", + "properties": { + "usedIn": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityListWithAllowedValuesResponse" + } + }, + "allEntriesChecked": { + "type": "boolean" + } + }, + "description": "This is the list of all entries in one kind of entity which are using the allowedValues" + }, + "EntityListWithAllowedValuesResponse": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "entityType": { + "type": "string" + }, + "gitDetails": { + "$ref": "#/components/schemas/GitDetails1" + } + }, + "description": "This is the list of entities which are using the allowedValues" + }, + "GitDetails1": { + "type": "object", + "properties": { + "branch": { + "type": "string" + }, + "repoUrl": { + "type": "string" + }, + "filePath": { + "type": "string" + } + } + }, + "ResponseDTOAllowedValuesUsagesInternalDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AllowedValuesUsagesInternalDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AllowedValuesUsagesRequestDTO": { + "type": "object", + "properties": { + "maxPages": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + } + }, + "description": "This is the request details for finding the Allowed values usages in the entities." + }, + "ResponseDTOEnvironmentResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnvironmentResponse1" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EnvironmentRequest": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the Environment." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "name": { + "type": "string", + "description": "Name of the Environment." + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "color": { + "type": "string", + "description": "Color of the Environment." + }, + "type": { + "type": "string", + "description": "Specify the environment type whether production or Preproduction. ", + "enum": [ + "PreProduction", + "Production" + ] + }, + "yaml": { + "type": "string", + "description": "Yaml of this entity." + } + }, + "description": "This is the Environment entity defined in Harness" + }, + "EnvironmentImportResponseDetails": { + "type": "object", + "properties": { + "envIdentifier": { + "type": "string" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + }, + "description": "Details of Imported Environment." + }, + "ResponseDTOEnvironmentImportResponseDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnvironmentImportResponseDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListEnvironmentResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnvironmentResponse1" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseEnvironmentResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnvironmentResponse1" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseEnvironmentResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseEnvironmentResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseServiceOverrideResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceOverrideResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseServiceOverrideResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseServiceOverrideResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceOverrideResponse": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "environmentRef": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "yaml": { + "type": "string" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + }, + "description": "This is the Service Override Response entity defined in Harness" + }, + "EnvironmentMoveConfigResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the successfully moved environment." + }, + "success": { + "type": "boolean", + "description": "Indicates whether the environment move config operation was successful (true) or not (false)." + } + }, + "description": "Tells us if the environment move config operation was successful or not" + }, + "ResponseDTOEnvironmentMoveConfigResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnvironmentMoveConfigResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EnvironmentGitUpdateResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of updated environment" + } + }, + "description": "Contains info about environment that is updated." + }, + "ResponseDTOEnvironmentGitUpdateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnvironmentGitUpdateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOServiceOverrideResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceOverrideResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceOverrideRequest": { + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "environmentIdentifier": { + "type": "string", + "description": "Environment Identifier for the Entity." + }, + "serviceIdentifier": { + "type": "string", + "description": "Service Identifier for the Entity." + }, + "yaml": { + "type": "string", + "description": "Yaml for the Service Override entity" + } + }, + "description": "This is the Service Override Request entity defined in Harness" + }, + "InfrastructureResponse1": { + "type": "object", + "properties": { + "infrastructure": { + "$ref": "#/components/schemas/InfrastructureResponseDTO" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/EntityGitDetails1" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + } + }, + "InfrastructureResponseDTO": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "environmentRef": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "type": { + "type": "string", + "enum": [ + "KubernetesDirect", + "KubernetesGcp", + "KubernetesAzure", + "Pdc", + "SshWinRmAzure", + "ServerlessAwsLambda", + "AzureWebApp", + "AzureFunction", + "SshWinRmAws", + "CustomDeployment", + "ECS", + "Elastigroup", + "TAS", + "Asg", + "GoogleCloudFunctions", + "AWS_SAM", + "AwsLambda", + "KubernetesAws", + "KubernetesRancher", + "GoogleCloudRun" + ] + }, + "deploymentType": { + "type": "string", + "enum": [ + "Kubernetes", + "NativeHelm", + "Ssh", + "WinRm", + "ServerlessAwsLambda", + "AzureWebApp", + "AzureFunction", + "CustomDeployment", + "ECS", + "Elastigroup", + "TAS", + "Asg", + "GoogleCloudFunctions", + "AwsLambda", + "AWS_SAM", + "SERVICE_YAML_V1_TYPE", + "GoogleCloudRun" + ] + }, + "yaml": { + "type": "string" + } + }, + "description": "This is the InfrastructureResponseDTO entity defined in Harness" + }, + "ResponseDTOInfrastructureResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InfrastructureResponse1" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "InfrastructureRequest": { + "required": [ + "yaml" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of the infrastructure", + "deprecated": true + }, + "orgIdentifier": { + "type": "string", + "description": "organisation identifier of the infrastructure", + "deprecated": true + }, + "projectIdentifier": { + "type": "string", + "description": "project identifier of the infrastructure", + "deprecated": true + }, + "environmentRef": { + "type": "string", + "description": "environment reference of the infrastructure", + "deprecated": true + }, + "name": { + "type": "string", + "description": "name of the infrastructure", + "deprecated": true + }, + "description": { + "type": "string", + "description": "description of the infrastructure", + "deprecated": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "tags associated with the infrastructure", + "deprecated": true + }, + "description": "tags associated with the infrastructure", + "deprecated": true + }, + "type": { + "type": "string", + "description": "type of the infrastructure", + "deprecated": true, + "enum": [ + "KubernetesDirect", + "KubernetesGcp", + "KubernetesAzure", + "Pdc", + "SshWinRmAzure", + "ServerlessAwsLambda", + "AzureWebApp", + "AzureFunction", + "SshWinRmAws", + "CustomDeployment", + "ECS", + "Elastigroup", + "TAS", + "Asg", + "GoogleCloudFunctions", + "AWS_SAM", + "AwsLambda", + "KubernetesAws", + "KubernetesRancher", + "GoogleCloudRun" + ] + }, + "yaml": { + "type": "string", + "description": "yaml spec of the infrastructure. Just yaml alone is sufficient to create an infrastructure." + } + }, + "description": "This is the InfrastructureRequest entity defined in Harness" + }, + "InfrastructureImportResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of imported infrastructure" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + }, + "description": "Contains info about infrastructure that is imported." + }, + "ResponseDTOInfrastructureImportResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InfrastructureImportResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseInfrastructureResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InfrastructureResponse1" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseInfrastructureResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseInfrastructureResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "InfraMoveConfigResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the successfully moved infrastructure." + }, + "success": { + "type": "boolean", + "description": "Indicates whether the infrastructure move config operation was successful (true) or not (false)." + } + }, + "description": "Tells us if the infra move config operation was successful or not" + }, + "ResponseDTOInfraMoveConfigResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InfraMoveConfigResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "InfrastructureGitUpdateResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of updated infrastructure" + } + }, + "description": "Contains info about infrastructure that is updated." + }, + "ResponseDTOInfrastructureGitUpdateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InfrastructureGitUpdateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Invite": { + "required": [ + "email", + "inviteType" + ], + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Identifier of the Invite." + }, + "name": { + "type": "string", + "description": "Name of the Invite." + }, + "email": { + "type": "string", + "description": "Email Id associated with the user to be invited." + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "roleBindings": { + "type": "array", + "description": "Role bindings to be associated with the invited users.", + "items": { + "$ref": "#/components/schemas/RoleBinding" + } + }, + "userGroups": { + "type": "array", + "description": "List of the userGroups in the invite.", + "items": { + "type": "string", + "description": "List of the userGroups in the invite." + } + }, + "inviteType": { + "type": "string", + "description": "Specifies the invite type.", + "enum": [ + "USER_INITIATED_INVITE", + "ADMIN_INITIATED_INVITE", + "SCIM_INITIATED_INVITE" + ] + }, + "approved": { + "type": "boolean", + "description": "Specifies whether or not the invite is approved. By default this value is set to false." + } + }, + "description": "This is the view of the Invite entity defined in Harness" + }, + "ResponseDTOOptionalInvite": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/Invite" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RoleBinding": { + "type": "object", + "properties": { + "roleIdentifier": { + "type": "string" + }, + "roleName": { + "type": "string" + }, + "roleScopeLevel": { + "type": "string" + }, + "resourceGroupIdentifier": { + "type": "string" + }, + "resourceGroupName": { + "type": "string" + }, + "managedRole": { + "type": "boolean" + } + } + }, + "ResponseDTOInvite": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/Invite" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseInvite": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Invite" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseInvite": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseInvite" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ACLAggregateFilter": { + "type": "object", + "properties": { + "resourceGroupIdentifiers": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "roleIdentifiers": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AwsOidcCredentialResponseDto": { + "type": "object", + "properties": { + "access_key": { + "type": "string" + }, + "secret_access_key": { + "type": "string" + }, + "session_token": { + "type": "string" + } + } + }, + "ResponseDTOAwsOidcCredentialResponseDto": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AwsOidcCredentialResponseDto" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AwsOidcCredentialsRequest": { + "required": [ + "iamRoleArn" + ], + "type": "object", + "properties": { + "oidcIdToken": { + "type": "string", + "description": "The OIDC ID Token" + }, + "iamRoleArn": { + "type": "string", + "description": "IAM Role ARN" + }, + "retryPolicy": { + "$ref": "#/components/schemas/AwsSdkRetryPolicySpec" + }, + "awsOidcTokenRequestDto": { + "$ref": "#/components/schemas/AwsOidcTokenRequest" + } + }, + "description": "This contains Aws OIDC Credentials request details" + }, + "AwsOidcTokenRequest": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "This specifies the Harness Account Id" + }, + "oidcIdTokenCustomAttributesStructure": { + "$ref": "#/components/schemas/OidcIdTokenCustomAttributesStructure" + }, + "region": { + "type": "string", + "description": "This specifies the Aws region" + } + }, + "description": "This contains AWS OIDC Token request details" + }, + "AwsSdkBackOffStrategySpec": { + "type": "object", + "description": "This contains AWS Sdk BackOff strategy spec" + }, + "AwsSdkRetryPolicySpec": { + "type": "object", + "properties": { + "backOffStrategyType": { + "type": "string" + }, + "backOffStrategy": { + "$ref": "#/components/schemas/AwsSdkBackOffStrategySpec" + } + }, + "description": "Retry policy for aws sdk calls" + }, + "OidcIdTokenCustomAttributesStructure": { + "required": [ + "account_id" + ], + "type": "object", + "properties": { + "account_id": { + "type": "string" + }, + "organization_id": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "pipeline_id": { + "type": "string" + }, + "environment_id": { + "type": "string" + }, + "environment_type": { + "type": "string" + }, + "connector_id": { + "type": "string" + }, + "connector_name": { + "type": "string" + }, + "service_id": { + "type": "string" + }, + "service_name": { + "type": "string" + }, + "triggered_by_name": { + "type": "string" + }, + "trigger_by_email": { + "type": "string" + }, + "stage_type": { + "type": "string" + }, + "step_type": { + "type": "string" + }, + "context": { + "type": "string" + } + }, + "description": "This includes all the ID token custom attributes" + }, + "GcpOidcServiceAccountAccessTokenResponse": { + "type": "object", + "properties": { + "accessToken": { + "type": "string" + }, + "expireTime": { + "type": "integer", + "format": "int64" + } + } + }, + "ResponseDTOGcpOidcServiceAccountAccessTokenResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GcpOidcServiceAccountAccessTokenResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GcpOidcAccessTokenRequest": { + "required": [ + "gcpOidcTokenRequestDTO", + "oidcIdToken" + ], + "type": "object", + "properties": { + "oidcIdToken": { + "type": "string", + "description": "The OIDC ID Token" + }, + "gcpOidcTokenRequestDTO": { + "$ref": "#/components/schemas/GcpOidcTokenRequest" + } + }, + "description": "This contains GCP OIDC Access Token request details" + }, + "GcpOidcTokenRequest": { + "required": [ + "accountId", + "gcpProjectId", + "providerId", + "workloadPoolId" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "This specifies the Harness Account Id" + }, + "workloadPoolId": { + "type": "string", + "description": "This specifies the Workload Pool Id" + }, + "providerId": { + "type": "string", + "description": "This specifies the OIDC ID Provider" + }, + "gcpProjectId": { + "type": "string", + "description": "This specifies the GCP Project Id" + }, + "serviceAccountEmail": { + "type": "string", + "description": "This specifies the GCP Service Account Email" + }, + "oidcIdTokenCustomAttributesStructure": { + "$ref": "#/components/schemas/OidcIdTokenCustomAttributesStructure" + } + }, + "description": "This contains GCP OIDC Token request details" + }, + "OidcWorkloadAccessTokenResponse": { + "type": "object", + "properties": { + "access_token": { + "type": "string" + }, + "issued_token_type": { + "type": "string" + }, + "token_type": { + "type": "string" + }, + "expires_in": { + "type": "integer", + "format": "int32" + } + } + }, + "ResponseDTOOidcWorkloadAccessTokenResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/OidcWorkloadAccessTokenResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CustomOidcIdTokenRequest": { + "required": [ + "aud", + "oidcIdTokenCustomAttributesStructure" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "This specifies the Harness Account Id" + }, + "oidcIdTokenCustomAttributesStructure": { + "$ref": "#/components/schemas/OidcIdTokenCustomAttributesStructure" + }, + "sub": { + "type": "string", + "description": "This overrides the default subject field in ID token" + }, + "aud": { + "type": "string", + "description": "This specifies the audience field in ID token" + } + }, + "description": "This contains custom OIDC Token request details" + }, + "JwksPublicKeyDTO": { + "type": "object", + "properties": { + "alg": { + "type": "string" + }, + "e": { + "type": "string" + }, + "kid": { + "type": "string" + }, + "kty": { + "type": "string" + }, + "n": { + "type": "string" + }, + "use": { + "type": "string" + } + } + }, + "JwksPublicKeysDTO": { + "type": "object", + "properties": { + "keys": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JwksPublicKeyDTO" + } + } + } + }, + "OidcConfiguration": { + "type": "object", + "properties": { + "issuer": { + "type": "string" + }, + "jwks_uri": { + "type": "string" + }, + "subject_types_supported": { + "type": "array", + "items": { + "type": "string" + } + }, + "response_types_supported": { + "type": "array", + "items": { + "type": "string" + } + }, + "claims_supported": { + "type": "array", + "items": { + "type": "string" + } + }, + "id_token_signing_alg_values_supported": { + "type": "array", + "items": { + "type": "string" + } + }, + "scopes_supported": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CreateProviderResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + } + } + }, + "ResponseDTOCreateProviderResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CreateProviderResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "BitbucketServerProviderRequestInfo": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ProviderRequestInfo" + }, + { + "type": "object", + "properties": { + "clientId": { + "type": "string" + }, + "clientSecretRef": { + "type": "string" + } + } + } + ] + }, + "CreateProviderRequestDTO": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Provider Request." + }, + "identifier": { + "type": "string", + "description": "Identifier of the Provider Request." + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "spec": { + "$ref": "#/components/schemas/ProviderRequestInfo" + } + } + }, + "GithubEnterpriseProviderRequestInfo": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ProviderRequestInfo" + }, + { + "type": "object", + "properties": { + "clientId": { + "type": "string" + }, + "clientSecretRef": { + "type": "string" + } + } + } + ] + }, + "GitlabOnPremProviderRequestInfo": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ProviderRequestInfo" + }, + { + "type": "object", + "properties": { + "clientId": { + "type": "string" + }, + "clientSecretRef": { + "type": "string" + } + } + } + ] + }, + "ProviderRequestInfo": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "domain": { + "type": "string" + }, + "delegateSelectors": { + "type": "array", + "items": { + "type": "string" + } + }, + "secretManagerRef": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "description": "Spec of the Provider", + "discriminator": { + "propertyName": "type" + } + }, + "DeleteProviderResponse": { + "type": "object", + "properties": { + "successfullyDeleted": { + "type": "boolean" + }, + "identifier": { + "type": "string" + } + } + }, + "ResponseDTODeleteProviderResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/DeleteProviderResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GetProviderResponse": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "BITBUCKET_SERVER", + "GITLAB_ON_PREM", + "GITHUB_ENTERPRISE" + ] + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "providerResponseInfo": { + "$ref": "#/components/schemas/ProviderResponseInfo" + } + } + }, + "ProviderResponseInfo": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "domain": { + "type": "string" + }, + "delegateSelectors": { + "type": "array", + "items": { + "type": "string" + } + }, + "secretManagerRef": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "ResponseDTOGetProviderResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GetProviderResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListGetProviderResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GetProviderResponse" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOUpdateProviderResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/UpdateProviderResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "UpdateProviderResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + } + } + }, + "UpdateProviderRequestDTO": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Provider Request." + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "spec": { + "$ref": "#/components/schemas/ProviderRequestInfo" + } + } + }, + "ApiKey": { + "required": [ + "accountIdentifier", + "identifier", + "name", + "parentIdentifier" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the API Key" + }, + "name": { + "type": "string", + "description": "Name of the API Key" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description of the API Key" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags for the API Key" + }, + "description": "Tags for the API Key" + }, + "apiKeyType": { + "type": "string", + "description": "Type of the API Key", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + }, + "parentIdentifier": { + "type": "string", + "description": "Parent Entity Identifier of the API Key" + }, + "defaultTimeToExpireToken": { + "type": "integer", + "description": "Default expiration time of the Token within API Key.", + "format": "int64" + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + }, + "description": "This has API Key details defined in Harness." + }, + "ResponseDTOApiKey": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ApiKey" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ApiKeyAggregate": { + "required": [ + "apiKey", + "createdAt", + "lastModifiedAt" + ], + "type": "object", + "properties": { + "apiKey": { + "$ref": "#/components/schemas/ApiKey" + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which API Key was created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "This is the time at which API Key was last modified.", + "format": "int64" + }, + "tokensCount": { + "type": "integer", + "description": "The number of tokens within an API Key.", + "format": "int32" + } + }, + "description": "This has API Key details and metadata." + }, + "ResponseDTOApiKeyAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ApiKeyAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseApiKeyAggregate": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApiKeyAggregate" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseApiKeyAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseApiKeyAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListApiKey": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApiKey" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "HostValidationDTO": { + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "Hostname" + }, + "port": { + "type": "string", + "description": "Port" + }, + "status": { + "type": "string", + "description": "This has the validation status for a host.", + "enum": [ + "SUCCESS", + "FAILED" + ] + }, + "error": { + "$ref": "#/components/schemas/ErrorDetail" + } + }, + "description": "This has validation details for the host" + }, + "ResponseDTOListHostValidationDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HostValidationDTO" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "HostValidationParams": { + "required": [ + "hosts" + ], + "type": "object", + "properties": { + "hosts": { + "type": "array", + "description": "Hosts to be validated", + "items": { + "type": "string", + "description": "Hosts to be validated" + } + }, + "tags": { + "type": "array", + "description": "Delegate tags (optional)", + "items": { + "type": "string", + "description": "Delegate tags (optional)" + } + } + }, + "description": "Host validation parameters, including host names and delegate tags." + }, + "PageResponseHostDTO": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HostDTO" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseHostDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseHostDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "HostFilterDTO": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "All", + "HostNames", + "HostAttributes" + ] + }, + "filter": { + "type": "string" + }, + "matchCriteria": { + "type": "string" + } + } + }, + "ResponseDTOSecretManagerMetadataDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SecretManagerMetadataDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SecretManagerMetadataDTO": { + "type": "object", + "properties": { + "encryptionType": { + "type": "string", + "enum": [ + "LOCAL", + "KMS", + "GCP_KMS", + "AWS_SECRETS_MANAGER", + "AZURE_VAULT", + "VAULT", + "GCP_SECRETS_MANAGER", + "CUSTOM", + "VAULT_SSH", + "CUSTOM_NG" + ] + }, + "spec": { + "$ref": "#/components/schemas/SecretManagerMetadataSpecDTO" + } + } + }, + "SecretManagerMetadataSpecDTO": { + "required": [ + "encryptionType" + ], + "type": "object", + "properties": { + "encryptionType": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "encryptionType" + } + }, + "SecretManagerMetadataRequest": { + "required": [ + "encryptionType", + "identifier", + "spec" + ], + "type": "object", + "properties": { + "encryptionType": { + "type": "string", + "description": "This specifies the type of encryption used by the Secret Manager to encrypt Secrets.", + "enum": [ + "LOCAL", + "KMS", + "GCP_KMS", + "AWS_SECRETS_MANAGER", + "AZURE_VAULT", + "VAULT", + "GCP_SECRETS_MANAGER", + "CUSTOM", + "VAULT_SSH", + "CUSTOM_NG" + ] + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the SecretManager metadata." + }, + "spec": { + "$ref": "#/components/schemas/SecretManagerMetadataRequestSpecDTO" + } + }, + "description": "This is the view of the SecretManagerMetadataRequest entity defined in Harness" + }, + "SecretManagerMetadataRequestSpecDTO": { + "required": [ + "encryptionType" + ], + "type": "object", + "properties": { + "encryptionType": { + "type": "string" + } + }, + "description": "Spec of the Secret Manager.", + "discriminator": { + "propertyName": "encryptionType" + } + }, + "BaseSSHSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This is the SSH specification details as defined in Harness.", + "discriminator": { + "propertyName": "type" + } + }, + "BaseWinRmSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This is the WinRm specification details as defined in Harness.", + "discriminator": { + "propertyName": "type" + } + }, + "KerberosConfigDTO": { + "required": [ + "principal", + "realm" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/BaseSSHSpec" + }, + { + "type": "object", + "properties": { + "principal": { + "type": "string", + "description": "This is the authorization role, the user/service has in the realm." + }, + "realm": { + "type": "string", + "description": "Name of the Realm." + }, + "tgtGenerationMethod": { + "type": "string", + "enum": [ + "KeyTabFilePath", + "Password" + ] + }, + "spec": { + "$ref": "#/components/schemas/TGTGenerationSpecDTO" + } + } + } + ] + }, + "KerberosWinRmConfigDTO": { + "required": [ + "principal", + "realm" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/BaseWinRmSpec" + }, + { + "type": "object", + "properties": { + "principal": { + "type": "string", + "description": "This is the authorization role, the user/service has in the realm." + }, + "realm": { + "type": "string", + "description": "Name of the Realm." + }, + "tgtGenerationMethod": { + "type": "string", + "enum": [ + "KeyTabFilePath", + "Password" + ] + }, + "spec": { + "$ref": "#/components/schemas/TGTGenerationSpecDTO" + }, + "useSSL": { + "type": "boolean", + "description": "This is the Kerberos either to use SSL/https ." + }, + "skipCertChecks": { + "type": "boolean", + "description": "This is the Kerberos either to skip certificate checks ." + }, + "useNoProfile": { + "type": "boolean", + "description": "This is the Kerberos powershell runs without loading profile ." + } + } + } + ] + }, + "NTLMConfig": { + "required": [ + "domain", + "password", + "username" + ], + "type": "object", + "description": "This is the NTLM configuration details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/BaseWinRmSpec" + }, + { + "type": "object", + "properties": { + "domain": { + "type": "string", + "description": "This is the NTLM domain name." + }, + "username": { + "type": "string", + "description": "This is the NTLM user name." + }, + "useSSL": { + "type": "boolean", + "description": "This is the NTLM either to use SSL/https ." + }, + "skipCertChecks": { + "type": "boolean", + "description": "This is the NTLM either to skip certificate checks ." + }, + "useNoProfile": { + "type": "boolean", + "description": "This is the NTLM powershell runs without loading profile ." + }, + "password": { + "type": "string" + } + } + } + ] + }, + "ResponseDTOSecretResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SecretResponse1" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SSHAuth": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/BaseSSHSpec" + }, + "useSshClient": { + "type": "boolean" + }, + "useSshj": { + "type": "boolean" + }, + "type": { + "type": "string", + "description": "Specifies authentication scheme, SSH or Kerberos", + "enum": [ + "SSH", + "Kerberos" + ] + } + }, + "description": "This is the SSH Authentication specification defined in Harness." + }, + "SSHConfig": { + "required": [ + "credentialType", + "spec" + ], + "type": "object", + "description": "This is the SSH configuration details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/BaseSSHSpec" + }, + { + "type": "object", + "properties": { + "credentialType": { + "type": "string", + "description": "This specifies SSH credential type as Password, KeyPath or KeyReference", + "enum": [ + "Password", + "KeyPath", + "KeyReference" + ] + }, + "spec": { + "$ref": "#/components/schemas/SSHCredentialSpec" + } + } + } + ] + }, + "SSHCredentialSpec": { + "required": [ + "credentialType" + ], + "type": "object", + "properties": { + "credentialType": { + "type": "string" + } + }, + "description": "This is the SSH credential specification defined in Harness.", + "discriminator": { + "propertyName": "credentialType" + } + }, + "SSHKeyPathCredential": { + "required": [ + "keyPath", + "userName" + ], + "type": "object", + "description": "This is SSH KeyPath credential specification as defined in harness", + "allOf": [ + { + "$ref": "#/components/schemas/SSHCredentialSpec" + }, + { + "type": "object", + "properties": { + "userName": { + "type": "string", + "description": "SSH Username." + }, + "keyPath": { + "type": "string", + "description": "Path of the key file." + }, + "encryptedPassphrase": { + "type": "string", + "description": "This is the passphrase provided while creating the SSH key for local encryption." + } + } + } + ] + }, + "SSHKeyReferenceCredentialDTO": { + "required": [ + "key", + "userName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SSHCredentialSpec" + }, + { + "type": "object", + "properties": { + "userName": { + "type": "string" + }, + "key": { + "type": "string" + }, + "encryptedPassphrase": { + "type": "string" + } + } + } + ] + }, + "SSHKeySpec": { + "required": [ + "auth" + ], + "type": "object", + "description": "This is the SSH key authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec1" + }, + { + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "SSH port", + "format": "int32" + }, + "auth": { + "$ref": "#/components/schemas/SSHAuth" + } + } + } + ] + }, + "SSHPasswordCredentialDTO": { + "required": [ + "password", + "userName" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SSHCredentialSpec" + }, + { + "type": "object", + "properties": { + "userName": { + "type": "string" + }, + "password": { + "type": "string" + } + } + } + ] + }, + "Secret1": { + "required": [ + "identifier", + "name", + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "This specifies the type of secret", + "enum": [ + "SecretFile", + "SecretText", + "SSHKey", + "WinRmCredentials" + ] + }, + "name": { + "type": "string", + "description": "Name of the Secret" + }, + "identifier": { + "type": "string", + "description": "Identifier of the Secret" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "description": { + "type": "string", + "description": "Description of the Secret" + }, + "spec": { + "$ref": "#/components/schemas/SecretSpec1" + } + }, + "description": "This is details of the secret entity defined in Harness." + }, + "SecretFileSpec1": { + "required": [ + "secretManagerIdentifier" + ], + "type": "object", + "description": "This has details of Secret File defined in harness", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec1" + }, + { + "type": "object", + "properties": { + "secretManagerIdentifier": { + "type": "string", + "description": "Identifier of the Secret Manager used to manage the secret." + }, + "additionalMetadata": { + "$ref": "#/components/schemas/AdditionalMetadata" + } + } + } + ] + }, + "SecretResponse1": { + "required": [ + "secret" + ], + "type": "object", + "properties": { + "secret": { + "$ref": "#/components/schemas/Secret1" + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which the Secret was created.", + "format": "int64" + }, + "updatedAt": { + "type": "integer", + "description": "This is the time at which the Secret was last updated.", + "format": "int64" + }, + "draft": { + "type": "boolean" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + }, + "description": "This has details of the Secret along with its metadata." + }, + "SecretSpec1": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "errorMessageForInvalidYaml": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "description": "This has details of the Secret defined in Harness.", + "discriminator": { + "propertyName": "type" + } + }, + "SecretTextSpec1": { + "required": [ + "secretManagerIdentifier", + "valueType" + ], + "type": "object", + "description": "This has details of encrypted text secret.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec1" + }, + { + "type": "object", + "properties": { + "secretManagerIdentifier": { + "type": "string", + "description": "Identifier of the Secret Manager used to manage the secret." + }, + "valueType": { + "type": "string", + "description": "This has details to specify if the secret value is inline or referenced.", + "enum": [ + "Inline", + "Reference", + "CustomSecretManagerValues" + ] + }, + "value": { + "type": "string", + "description": "Value of the Secret [Required]" + }, + "additionalMetadata": { + "$ref": "#/components/schemas/AdditionalMetadata" + } + } + } + ] + }, + "TGTGenerationSpecDTO": { + "required": [ + "tgtGenerationMethod" + ], + "type": "object", + "properties": { + "tgtGenerationMethod": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "tgtGenerationMethod" + } + }, + "TGTKeyTabFilePathSpecDTO": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/TGTGenerationSpecDTO" + }, + { + "type": "object", + "properties": { + "keyPath": { + "type": "string" + } + } + } + ] + }, + "TGTPasswordSpecDTO": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/TGTGenerationSpecDTO" + }, + { + "type": "object", + "properties": { + "password": { + "type": "string" + } + } + } + ] + }, + "WinRmAuth": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/BaseWinRmSpec" + }, + "type": { + "type": "string", + "description": "Specifies authentication scheme, NTLM or Kerberos", + "enum": [ + "NTLM", + "Kerberos" + ] + } + }, + "description": "This is the WinRm Authentication specification defined in Harness." + }, + "WinRmCommandParameter": { + "type": "object", + "properties": { + "parameter": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "WinRmCredentialsSpec": { + "required": [ + "auth" + ], + "type": "object", + "description": "This is the WinRm authentication details defined in Harness.", + "allOf": [ + { + "$ref": "#/components/schemas/SecretSpec1" + }, + { + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "WinRm port", + "format": "int32" + }, + "auth": { + "$ref": "#/components/schemas/WinRmAuth" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WinRmCommandParameter" + } + } + } + } + ] + }, + "SecretRequestWrapper": { + "required": [ + "secret" + ], + "type": "object", + "properties": { + "secret": { + "$ref": "#/components/schemas/Secret1" + } + } + }, + "PageResponseSecretResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SecretResponse1" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseSecretResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseSecretResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SecretFilterProperties": { + "type": "object", + "properties": { + "secretName": { + "type": "string", + "description": "This is the secret name on which the filter will be applied." + }, + "secretIdentifier": { + "type": "string", + "description": "This is the secret identifier on which the filter will be applied." + }, + "secretTypes": { + "type": "array", + "description": "This is the list of the ENTITY types on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the ENTITY types on which the filter will be applied.", + "enum": [ + "SecretFile", + "SecretText", + "SSHKey", + "WinRmCredentials" + ] + } + }, + "secretManagerIdentifiers": { + "uniqueItems": true, + "type": "array", + "description": "secretManagerIdentifiers", + "items": { + "type": "string", + "description": "secretManagerIdentifiers" + } + }, + "description": { + "type": "string", + "description": "Description of filter created." + }, + "searchTerm": { + "type": "string", + "description": "Text to search/filter the Entity." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "enum": [ + "Secret" + ] + } + }, + "description": "Properties of the Secret Filter defined in Harness" + }, + "SecretResourceFilter": { + "type": "object", + "properties": { + "identifiers": { + "type": "array", + "description": "This is the list of Entity Identifiers on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Entity Identifiers on which the filter will be applied." + } + }, + "searchTerm": { + "type": "string", + "description": "Text to search/filter the Entity." + }, + "secretTypes": { + "type": "array", + "description": "This is the list of the ENTITY types on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the ENTITY types on which the filter will be applied.", + "enum": [ + "SecretFile", + "SecretText", + "SSHKey", + "WinRmCredentials" + ] + } + }, + "sourceCategory": { + "type": "string", + "description": "Specifies the connector category.", + "enum": [ + "CLOUD_PROVIDER", + "SECRET_MANAGER", + "CLOUD_COST", + "ARTIFACTORY", + "CODE_REPO", + "MONITORING", + "TICKETING", + "DATABASE", + "COMMUNICATION", + "DOCUMENTATION" + ] + }, + "includeSecretsFromEverySubScope": { + "type": "boolean", + "description": "This is true if secrets are filtered at each subsequent scope." + }, + "includeAllSecretsAccessibleAtScope": { + "type": "boolean", + "description": "This is true if secrets are filtered from all super scopes." + } + }, + "description": "This has the filter information for the Secret in Harness." + }, + "ResponseDTOSecretValidationResult": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SecretValidationResult" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SecretValidationResult": { + "type": "object", + "properties": { + "success": { + "type": "boolean", + "description": "This has the validation status for a secret. It is Success, if validation is successful, else the status is Failed." + }, + "message": { + "type": "string", + "description": "This is the error message when validation for secret fails." + } + }, + "description": "This has validation details for the Secret defined in Harness." + }, + "SecretValidationMetaData": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "SecretFile", + "SecretText", + "SSHKey", + "WinRmCredentials" + ] + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "Organization1": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Organization" + }, + "name": { + "type": "string", + "description": "Name of the Organization" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description of the Organization." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags for the Organization." + }, + "description": "Tags for the Organization." + } + }, + "description": "This has details of the Organization as defined in Harness." + }, + "OrganizationResponse1": { + "required": [ + "organization" + ], + "type": "object", + "properties": { + "organization": { + "$ref": "#/components/schemas/Organization1" + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which Organization was created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "This is the time at which Organization was last modified.", + "format": "int64" + }, + "harnessManaged": { + "type": "boolean", + "description": "This indicates if this Organization is managed by Harness or not. If True, Harness can manage and modify this Organization." + } + }, + "description": "This has details of the Organization along with its metadata in Harness." + }, + "ResponseDTOOrganizationResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/OrganizationResponse1" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "OrganizationRequest": { + "required": [ + "organization" + ], + "type": "object", + "properties": { + "organization": { + "$ref": "#/components/schemas/Organization1" + } + }, + "description": "This contains details of the Organization." + }, + "PageResponseOrganizationResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OrganizationResponse1" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseOrganizationResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseOrganizationResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Project1": { + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "name": { + "type": "string", + "description": "Project Name for the entity" + }, + "color": { + "type": "string", + "description": "Color" + }, + "modules": { + "maxItems": 1024, + "minItems": 0, + "type": "array", + "description": "List of modules", + "items": { + "type": "string", + "description": "List of modules", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO", + "CHAOS", + "AI_TEST_AUTOMATION", + "SRM", + "IACM", + "CET", + "IDP", + "CODE", + "SSCA", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "PLATFORM", + "SEI", + "HAR", + "DevopsEssentials", + "FME", + "DBOPS" + ] + } + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + } + }, + "description": "This is the Project Entity details defined in Harness" + }, + "ProjectResponse1": { + "required": [ + "isFavorite", + "project" + ], + "type": "object", + "properties": { + "project": { + "$ref": "#/components/schemas/Project1" + }, + "createdAt": { + "type": "integer", + "description": "This specifies the time at which project was created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "This specifies the time at which project was last modified.", + "format": "int64" + }, + "isFavorite": { + "type": "boolean" + } + }, + "description": "This has Project details along with its metadata as defined in Harness ." + }, + "ResponseDTOProjectResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ProjectResponse1" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ProjectRequest1": { + "required": [ + "project" + ], + "type": "object", + "properties": { + "project": { + "$ref": "#/components/schemas/Project1" + } + } + }, + "PageResponseProjectResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectResponse1" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseProjectResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseProjectResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Token": { + "required": [ + "apiKeyIdentifier", + "identifier", + "name" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Token" + }, + "name": { + "type": "string", + "description": "Name of the Token" + }, + "validFrom": { + "type": "integer", + "description": "This is the time from which the Token is valid. The time is in milliseconds.", + "format": "int64" + }, + "validTo": { + "type": "integer", + "description": "This is the time till which the Token is valid. The time is in milliseconds.", + "format": "int64" + }, + "scheduledExpireTime": { + "type": "integer", + "description": "Scheduled expiry time in milliseconds.", + "format": "int64" + }, + "valid": { + "type": "boolean", + "description": "Boolean value to indicate if Token is valid or not." + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "apiKeyIdentifier": { + "type": "string", + "description": "This is the API Key Id within which the Token is created." + }, + "parentIdentifier": { + "type": "string", + "description": "This is the ID of the Parent entity from which the Token inherits its role bindings." + }, + "apiKeyType": { + "type": "string", + "description": "Type of the API Key", + "enum": [ + "USER", + "SERVICE_ACCOUNT", + "SSH_KEY" + ] + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description of the Token" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags for the Token" + }, + "description": "Tags for the Token" + }, + "sshKeyContent": { + "type": "string", + "description": "SSH key content from a public key, this is only present if API_KEY Type is SSH_KEY" + }, + "sshKeyUsage": { + "type": "array", + "description": "SSH key Usage: SSH keys can be used to authenticate or sign", + "items": { + "type": "string", + "description": "SSH key Usage: SSH keys can be used to authenticate or sign", + "enum": [ + "AUTH", + "SIGN" + ] + } + } + }, + "description": "This has the API Key Token details defined in Harness." + }, + "PageResponseTokenAggregate": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TokenAggregate" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseTokenAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseTokenAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TokenAggregate": { + "required": [ + "createdAt", + "expiryAt", + "lastModifiedAt", + "token" + ], + "type": "object", + "properties": { + "token": { + "$ref": "#/components/schemas/Token" + }, + "expiryAt": { + "type": "integer", + "description": "Expiry time of the Token.", + "format": "int64" + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which Token was created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "This is the time at which Token was last modified.", + "format": "int64" + } + }, + "description": "This has token details and metadata." + }, + "ResponseDTOToken": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/Token" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EmailConfigDTO": { + "required": [ + "groupEmail", + "sendEmailToAllUsers" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationSettingConfigDTO1" + }, + { + "type": "object", + "properties": { + "groupEmail": { + "type": "string" + }, + "sendEmailToAllUsers": { + "type": "boolean" + } + } + } + ] + }, + "MicrosoftTeamsConfigDTO": { + "required": [ + "microsoftTeamsWebhookUrl" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationSettingConfigDTO1" + }, + { + "type": "object", + "properties": { + "microsoftTeamsWebhookUrl": { + "type": "string" + } + } + } + ] + }, + "NotificationSettingConfigDTO1": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "EMAIL", + "SLACK", + "PAGERDUTY", + "MSTEAMS", + "WEBHOOK", + "DATADOG" + ] + } + }, + "description": "List of notification settings.", + "discriminator": { + "propertyName": "type" + } + }, + "PagerDutyConfigDTO": { + "required": [ + "pagerDutyKey" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationSettingConfigDTO1" + }, + { + "type": "object", + "properties": { + "pagerDutyKey": { + "type": "string" + } + } + } + ] + }, + "ResponseDTOUserGroup": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/UserGroup" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SlackConfigDTO": { + "required": [ + "slackWebhookUrl" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationSettingConfigDTO1" + }, + { + "type": "object", + "properties": { + "slackWebhookUrl": { + "type": "string" + } + } + } + ] + }, + "UserGroup": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the UserGroup." + }, + "name": { + "type": "string", + "description": "Name of the UserGroup." + }, + "users": { + "type": "array", + "description": "List of users ids in the UserGroup.", + "items": { + "type": "string", + "description": "List of users ids in the UserGroup." + } + }, + "notificationConfigs": { + "type": "array", + "description": "List of notification settings.", + "items": { + "$ref": "#/components/schemas/NotificationSettingConfigDTO1" + } + }, + "isSsoLinked": { + "type": "boolean", + "writeOnly": true + }, + "linkedSsoId": { + "type": "string", + "description": "Identifier of the linked SSO." + }, + "linkedSsoDisplayName": { + "type": "string", + "description": "Name of the linked SSO." + }, + "ssoGroupId": { + "type": "string", + "description": "Identifier of the userGroup in SSO." + }, + "ssoGroupName": { + "type": "string", + "description": "Name of the SSO userGroup." + }, + "linkedSsoType": { + "type": "string", + "description": "Type of linked SSO" + }, + "externallyManaged": { + "type": "boolean", + "description": "Specifies whether or not the userGroup is externally managed." + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description of the entity" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "harnessManaged": { + "type": "boolean", + "description": "Specifies whether or not the userGroup is managed by harness." + }, + "ssoLinked": { + "type": "boolean" + } + }, + "description": "User Group details defined in Harness." + }, + "ResponseDTOListScopeName": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScopeName" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ScopeName": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgName": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectName": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + } + } + }, + "PageResponseUserMetadata": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserMetadata" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseUserMetadata": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseUserMetadata" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "UserMetadata": { + "required": [ + "disabled", + "email", + "externallyManaged", + "locked", + "uuid" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "uuid": { + "type": "string" + }, + "locked": { + "type": "boolean" + }, + "disabled": { + "type": "boolean" + }, + "externallyManaged": { + "type": "boolean" + }, + "twoFactorAuthenticationEnabled": { + "type": "boolean" + } + }, + "description": "This is the view of the UserMetadata entity defined in Harness" + }, + "UserFilter": { + "type": "object", + "properties": { + "searchTerm": { + "type": "string", + "description": "This string will be used to filter the results. Details of all the users having this string in their name or email address will be filtered." + }, + "identifiers": { + "uniqueItems": true, + "type": "array", + "description": "Filter by User Identifiers", + "items": { + "type": "string", + "description": "Filter by User Identifiers" + } + }, + "emails": { + "uniqueItems": true, + "type": "array", + "description": "Filter by User Emails", + "items": { + "type": "string", + "description": "Filter by User Emails" + } + }, + "parentFilter": { + "type": "string", + "enum": [ + "NO_PARENT_SCOPES", + "INCLUDE_PARENT_SCOPES", + "STRICTLY_PARENT_SCOPES" + ] + } + } + }, + "NotificationSettingConfig": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "EMAIL", + "SLACK", + "PAGERDUTY", + "MSTEAMS", + "WEBHOOK", + "DATADOG" + ] + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "RestResponseUserGroup": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/UserGroup" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "LdapLinkGroupRequest": { + "required": [ + "ldapGroupDN", + "ldapGroupName" + ], + "type": "object", + "properties": { + "ldapGroupDN": { + "type": "string" + }, + "ldapGroupName": { + "type": "string" + } + } + }, + "OidcLinkGroupRequest": { + "required": [ + "oidcGroupName" + ], + "type": "object", + "properties": { + "oidcGroupName": { + "type": "string" + } + } + }, + "SamlLinkGroupRequest": { + "required": [ + "samlGroupName" + ], + "type": "object", + "properties": { + "samlGroupName": { + "type": "string" + } + } + }, + "ResponseDTOListUserGroup": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserGroup" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "UserGroupFilter": { + "required": [ + "accountIdentifier" + ], + "type": "object", + "properties": { + "databaseIdFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter by the internal database ids of user group", + "items": { + "type": "string", + "description": "Filter by the internal database ids of user group" + } + }, + "identifierFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter by the user group identifier", + "items": { + "type": "string", + "description": "Filter by the user group identifier" + } + }, + "userIdentifierFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter by the users present in the user group", + "items": { + "type": "string", + "description": "Filter by the users present in the user group" + } + }, + "accountIdentifier": { + "type": "string", + "description": "Filter by account using account identifier" + }, + "orgIdentifier": { + "type": "string", + "description": "Filter by organization using account identifier" + }, + "projectIdentifier": { + "type": "string", + "description": "Filter by project using account identifier" + }, + "searchTerm": { + "type": "string", + "description": "Filter by search term matching entities by name/identifier" + }, + "filterType": { + "type": "string", + "description": "Filter by user group filterType", + "enum": [ + "INCLUDE_INHERITED_GROUPS", + "EXCLUDE_INHERITED_GROUPS", + "INCLUDE_CHILD_SCOPE_GROUPS" + ] + } + }, + "description": "This is the view of the UserGroupFilter entity defined in Harness" + }, + "PageResponseUserGroup": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserGroup" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseUserGroup": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseUserGroup" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOUserGroupResponseV2": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/UserGroupResponseV2" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "UserBasicInfo": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "email": { + "type": "string" + } + }, + "description": "List of users emails in the UserGroup." + }, + "UserGroupResponseV2": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the UserGroup." + }, + "name": { + "type": "string", + "description": "Name of the UserGroup." + }, + "users": { + "type": "array", + "description": "List of users emails in the UserGroup.", + "items": { + "$ref": "#/components/schemas/UserBasicInfo" + } + }, + "notificationConfigs": { + "type": "array", + "description": "List of notification settings.", + "items": { + "$ref": "#/components/schemas/NotificationSettingConfigDTO1" + } + }, + "isSsoLinked": { + "type": "boolean", + "writeOnly": true + }, + "linkedSsoId": { + "type": "string", + "description": "Identifier of the linked SSO." + }, + "linkedSsoDisplayName": { + "type": "string", + "description": "Name of the linked SSO." + }, + "ssoGroupId": { + "type": "string", + "description": "Identifier of the userGroup in SSO." + }, + "ssoGroupName": { + "type": "string", + "description": "Name of the SSO userGroup." + }, + "linkedSsoType": { + "type": "string", + "description": "Type of linked SSO" + }, + "externallyManaged": { + "type": "boolean", + "description": "Specifies whether or not the userGroup is externally managed." + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description of the entity" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "harnessManaged": { + "type": "boolean", + "description": "Specifies whether or not the userGroup is managed by harness." + }, + "ssoLinked": { + "type": "boolean" + } + }, + "description": "User Group details defined in Harness." + }, + "UserGroupRequestV2": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the UserGroup." + }, + "name": { + "type": "string", + "description": "Name of the UserGroup." + }, + "users": { + "maxItems": 5000, + "minItems": 0, + "type": "array", + "description": "List of users emails in the UserGroup. Maximum users can be 5000.", + "items": { + "type": "string", + "description": "List of users emails in the UserGroup. Maximum users can be 5000." + } + }, + "notificationConfigs": { + "type": "array", + "description": "List of notification settings.", + "items": { + "$ref": "#/components/schemas/NotificationSettingConfigDTO1" + } + }, + "isSsoLinked": { + "type": "boolean", + "writeOnly": true + }, + "linkedSsoId": { + "type": "string", + "description": "Identifier of the linked SSO." + }, + "linkedSsoDisplayName": { + "type": "string", + "description": "Name of the linked SSO." + }, + "ssoGroupId": { + "type": "string", + "description": "Identifier of the userGroup in SSO." + }, + "ssoGroupName": { + "type": "string", + "description": "Name of the SSO userGroup." + }, + "linkedSsoType": { + "type": "string", + "description": "Type of linked SSO" + }, + "externallyManaged": { + "type": "boolean", + "description": "Specifies whether or not the userGroup is externally managed." + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description of the entity" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "harnessManaged": { + "type": "boolean", + "description": "Specifies whether or not the userGroup is managed by harness." + }, + "ssoLinked": { + "type": "boolean" + } + }, + "description": "User Group details defined in Harness." + }, + "ResponseDTOServiceResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceResponse1" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceResponse1": { + "type": "object", + "properties": { + "service": { + "$ref": "#/components/schemas/ServiceResponseDetails" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/EntityGitDetails1" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + } + }, + "ServiceResponseDetails": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "deleted": { + "type": "boolean" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "yaml": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Kubernetes", + "NativeHelm", + "Ssh", + "WinRm", + "ServerlessAwsLambda", + "AzureWebApp", + "AzureFunction", + "CustomDeployment", + "ECS", + "Elastigroup", + "TAS", + "Asg", + "GoogleCloudFunctions", + "AwsLambda", + "AWS_SAM", + "SERVICE_YAML_V1_TYPE", + "GoogleCloudRun" + ] + } + }, + "description": "This is the Service entity defined in Harness" + }, + "ServiceRequest": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Service Request." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "name": { + "type": "string", + "description": "Name of the Service Request." + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + }, + "yaml": { + "type": "string", + "description": "YAML for the Service Request" + } + }, + "description": "Service Request details defined in Harness." + }, + "PageResponseServiceResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceResponse1" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseServiceResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseServiceResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOSetK8sCommandFlagType": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Apply", + "Patch", + "Rollout", + "Delete" + ] + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOSetKustomizeCommandFlagType": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Build" + ] + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PluginInfoResponseDto": { + "type": "object", + "properties": { + "runtimeLanguage": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceItem" + } + }, + "serverlessVersion": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceItem" + } + } + } + }, + "ResourceItem": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "ResponseDTOPluginInfoResponseDto": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PluginInfoResponseDto" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOSetServiceHookAction": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string", + "enum": [ + "FetchFiles", + "TemplateManifest", + "SteadyStateCheck" + ] + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOServiceImportResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceImportResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceImportResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the imported Service" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + }, + "description": "Contains the details of the Saved Service" + }, + "ResponseDTOListServiceResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceResponse1" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOServiceMoveConfigResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceMoveConfigResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceMoveConfigResponse": { + "type": "object", + "description": "Tells us if the service move config operation was successful or not" + }, + "ResponseDTOServiceGitUpdateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceGitUpdateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceGitUpdateResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of updated service" + } + }, + "description": "Contains info about service that is updated." + }, + "OverrideResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "environmentRef": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "infraIdentifier": { + "type": "string" + }, + "clusterIdentifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + }, + "isNewlyCreated": { + "type": "boolean", + "writeOnly": true + }, + "yaml": { + "type": "string" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + }, + "newlyCreated": { + "type": "boolean" + } + }, + "description": "This is the Override Response entity defined in Harness" + }, + "ResponseDTOOverrideResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/OverrideResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "OverrideRequest": { + "required": [ + "environmentRef", + "type" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Override Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "environmentRef": { + "type": "string", + "description": "Environment Reference for the Entity." + }, + "serviceRef": { + "type": "string", + "description": "Service Reference for Entity" + }, + "infraIdentifier": { + "type": "string", + "description": "infraIdentifier" + }, + "clusterIdentifier": { + "type": "string", + "description": "clusterIdentifier" + }, + "type": { + "type": "string", + "description": "Type of the override which is based on source of overrides", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + }, + "yaml": { + "type": "string", + "description": "Yaml for overrides, containing overriding fields like manifests, variables, config files" + } + }, + "description": "This is the Override Request details defined in Harness" + }, + "ResponseDTOServiceOverrideMoveConfigResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceOverrideMoveConfigResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceOverrideMoveConfigResponse": { + "required": [ + "environmentRef", + "type" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Contains the ServiceOverrideIdentifier of the successfully moved config." + }, + "environmentRef": { + "type": "string", + "description": "Environment Reference for the Entity." + }, + "serviceRef": { + "type": "string", + "description": "Service Reference for Entity" + }, + "infraIdentifier": { + "type": "string", + "description": "infraIdentifier" + }, + "type": { + "type": "string", + "description": "Type of the override which is based on source of overrides", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + } + }, + "description": "Tells us if the move config was successful or not" + }, + "ResponseDTOServiceOverrideGitUpdateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceOverrideGitUpdateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceOverrideGitUpdateResponse": { + "required": [ + "environmentRef", + "type" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Contains the ServiceOverrideIdentifier of the successfully moved config." + }, + "environmentRef": { + "type": "string", + "description": "Environment Reference for the Entity." + }, + "serviceRef": { + "type": "string", + "description": "Service Reference for Entity" + }, + "infraIdentifier": { + "type": "string", + "description": "infraIdentifier" + }, + "type": { + "type": "string", + "description": "Type of the override which is based on source of overrides", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + } + }, + "description": "Contains info about ServiceOverride that is updated." + }, + "GitMetadataUpdateRequestInfo": { + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "repoName": { + "type": "string" + }, + "filePath": { + "type": "string" + } + }, + "description": "This lists down GIT metadata params that can be updated for given entity" + }, + "ApplicationSettingsConfiguration": { + "required": [ + "store" + ], + "type": "object", + "properties": { + "store": { + "$ref": "#/components/schemas/StoreConfigWrapper" + }, + "metadata": { + "type": "string" + } + } + }, + "ConfigFile": { + "required": [ + "identifier", + "spec" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "__uuid": { + "type": "string" + }, + "spec": { + "$ref": "#/components/schemas/ConfigFileAttributes" + } + } + }, + "ConfigFileAttributes": { + "required": [ + "store" + ], + "type": "object", + "properties": { + "__uuid": { + "type": "string" + }, + "store": { + "$ref": "#/components/schemas/ParameterFieldStoreConfigWrapper" + }, + "metadata": { + "type": "string" + } + } + }, + "ConfigFileWrapper": { + "type": "object", + "properties": { + "__uuid": { + "type": "string" + }, + "configFile": { + "$ref": "#/components/schemas/ConfigFile" + }, + "metadata": { + "type": "string" + } + } + }, + "ConnectionStringsConfiguration": { + "required": [ + "store" + ], + "type": "object", + "properties": { + "store": { + "$ref": "#/components/schemas/StoreConfigWrapper" + }, + "metadata": { + "type": "string" + } + } + }, + "InputSetValidator": { + "type": "object", + "properties": { + "validatorType": { + "type": "string", + "enum": [ + "ALLOWED_VALUES", + "REGEX", + "SELECT_ONE_FROM" + ] + }, + "parameters": { + "type": "string" + } + } + }, + "ManifestAttributes": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "ManifestConfig": { + "required": [ + "identifier", + "spec", + "type" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "__uuid": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "HelmChart", + "HelmRepoOverride", + "K8sManifest", + "Kustomize", + "KustomizePatches", + "OpenshiftParam", + "OpenshiftTemplate", + "Values", + "ServerlessAwsLambda", + "ReleaseRepo", + "DeploymentRepo", + "EcsTaskDefinition", + "EcsServiceDefinition", + "EcsScalableTargetDefinition", + "EcsScalingPolicyDefinition", + "TasManifest", + "TasVars", + "TasAutoScaler", + "AsgLaunchTemplate", + "AsgConfiguration", + "AsgAdditionalConfiguration", + "AsgScalingPolicy", + "AsgScheduledUpdateGroupAction", + "GoogleCloudFunctionDefinition", + "AwsLambdaFunctionDefinition", + "AwsLambdaFunctionAliasDefinition", + "AwsSamDirectory", + "GoogleCloudFunctionGenOneDefinition", + "GoogleCloudRunService", + "GoogleCloudRunJob" + ] + }, + "spec": { + "$ref": "#/components/schemas/ManifestAttributes" + } + } + }, + "ManifestConfigWrapper": { + "type": "object", + "properties": { + "manifest": { + "$ref": "#/components/schemas/ManifestConfig" + }, + "__uuid": { + "type": "string" + }, + "metadata": { + "type": "string" + } + } + }, + "NGVariable1": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "String", + "Number", + "Secret" + ] + }, + "description": { + "type": "string" + }, + "required": { + "type": "boolean" + }, + "metadata": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "NumberNGVariable1": { + "required": [ + "value" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NGVariable1" + }, + { + "type": "object", + "properties": { + "name": { + "pattern": "^[a-zA-Z_][0-9a-zA-Z_\\.$-]{0,127}$", + "type": "string" + }, + "value": { + "$ref": "#/components/schemas/ParameterFieldDouble" + }, + "default": { + "type": "number", + "format": "double" + } + } + } + ] + }, + "ParameterFieldDouble": { + "type": "object", + "properties": { + "expressionValue": { + "type": "string" + }, + "expression": { + "type": "boolean" + }, + "value": { + "type": "number", + "format": "double" + }, + "defaultValue": { + "type": "number", + "format": "double" + }, + "typeString": { + "type": "boolean" + }, + "inputSetValidator": { + "$ref": "#/components/schemas/InputSetValidator" + }, + "jsonResponseField": { + "type": "boolean" + }, + "responseField": { + "type": "string" + }, + "executionInput": { + "type": "boolean" + } + } + }, + "ParameterFieldSecretRefData": { + "type": "object", + "properties": { + "expressionValue": { + "type": "string" + }, + "expression": { + "type": "boolean" + }, + "value": { + "type": "string" + }, + "defaultValue": { + "type": "string" + }, + "typeString": { + "type": "boolean" + }, + "inputSetValidator": { + "$ref": "#/components/schemas/InputSetValidator" + }, + "jsonResponseField": { + "type": "boolean" + }, + "responseField": { + "type": "string" + }, + "executionInput": { + "type": "boolean" + } + } + }, + "ParameterFieldStoreConfigWrapper": { + "type": "object", + "properties": { + "expressionValue": { + "type": "string" + }, + "expression": { + "type": "boolean" + }, + "value": { + "$ref": "#/components/schemas/StoreConfigWrapper" + }, + "defaultValue": { + "$ref": "#/components/schemas/StoreConfigWrapper" + }, + "typeString": { + "type": "boolean" + }, + "inputSetValidator": { + "$ref": "#/components/schemas/InputSetValidator" + }, + "jsonResponseField": { + "type": "boolean" + }, + "responseField": { + "type": "string" + }, + "executionInput": { + "type": "boolean" + } + } + }, + "ParameterFieldString": { + "type": "object", + "properties": { + "expressionValue": { + "type": "string" + }, + "expression": { + "type": "boolean" + }, + "value": { + "type": "string" + }, + "defaultValue": { + "type": "string" + }, + "typeString": { + "type": "boolean" + }, + "inputSetValidator": { + "$ref": "#/components/schemas/InputSetValidator" + }, + "jsonResponseField": { + "type": "boolean" + }, + "responseField": { + "type": "string" + }, + "executionInput": { + "type": "boolean" + } + } + }, + "ResponseDTOServiceOverrideResponseV2": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceOverrideResponseV2" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SecretNGVariable": { + "required": [ + "value" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NGVariable1" + }, + { + "type": "object", + "properties": { + "name": { + "pattern": "^[a-zA-Z_][0-9a-zA-Z_\\.$-]{0,127}$", + "type": "string" + }, + "value": { + "$ref": "#/components/schemas/ParameterFieldSecretRefData" + }, + "default": { + "type": "string" + } + } + } + ] + }, + "ServiceOverrideResponseV2": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "environmentRef": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "infraIdentifier": { + "type": "string" + }, + "clusterIdentifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + }, + "spec": { + "$ref": "#/components/schemas/ServiceOverrideSpec" + }, + "isNewlyCreated": { + "type": "boolean", + "writeOnly": true + }, + "yaml": { + "type": "string" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + }, + "newlyCreated": { + "type": "boolean" + } + }, + "description": "This is the Service Override Response entity defined in Harness" + }, + "ServiceOverrideSpec": { + "type": "object", + "properties": { + "variables": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGVariable1" + } + }, + "manifests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ManifestConfigWrapper" + } + }, + "configFiles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConfigFileWrapper" + } + }, + "applicationSettings": { + "$ref": "#/components/schemas/ApplicationSettingsConfiguration" + }, + "connectionStrings": { + "$ref": "#/components/schemas/ConnectionStringsConfiguration" + }, + "cliEnvironmentVariables": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGVariable1" + } + }, + "metadata": { + "type": "string" + } + }, + "description": "This is the Service Override Spec entity defined in Harness" + }, + "StoreConfig": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "StoreConfigWrapper": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/StoreConfig" + }, + "metadata": { + "type": "string" + }, + "__uuid": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "CustomRemote", + "Git", + "Github", + "Bitbucket", + "GitLab", + "Http", + "S3", + "Gcs", + "Inline", + "Artifactory", + "S3Url", + "InheritFromManifest", + "Harness", + "OciHelmChart", + "AzureRepo", + "ArtifactBundle", + "HarnessCode" + ] + } + } + }, + "StringNGVariable1": { + "required": [ + "value" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NGVariable1" + }, + { + "type": "object", + "properties": { + "name": { + "pattern": "^[a-zA-Z_][0-9a-zA-Z_\\.$-]{0,127}$", + "type": "string" + }, + "value": { + "$ref": "#/components/schemas/ParameterFieldString" + }, + "default": { + "type": "string" + }, + "__uuid": { + "type": "string" + } + } + } + ] + }, + "ServiceOverrideRequestV2": { + "required": [ + "environmentRef", + "type" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "environmentRef": { + "type": "string", + "description": "Environment Reference for the Entity." + }, + "serviceRef": { + "type": "string", + "description": "Service Reference for Entity" + }, + "infraIdentifier": { + "type": "string", + "description": "infraIdentifier" + }, + "clusterIdentifier": { + "type": "string", + "description": "clusterIdentifier" + }, + "type": { + "type": "string", + "description": "Type of the override which is based on source of overrides", + "enum": [ + "ENV_GLOBAL_OVERRIDE", + "ENV_SERVICE_OVERRIDE", + "INFRA_GLOBAL_OVERRIDE", + "INFRA_SERVICE_OVERRIDE", + "CLUSTER_GLOBAL_OVERRIDE", + "CLUSTER_SERVICE_OVERRIDE" + ] + }, + "spec": { + "$ref": "#/components/schemas/ServiceOverrideSpec" + }, + "yaml": { + "type": "string" + }, + "identifier": { + "type": "string", + "description": "Service Overrides Identifier for Entity." + } + }, + "description": "This is the Service Override Request entity defined in Harness" + }, + "NgSmtp": { + "required": [ + "accountId", + "name", + "value" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "Identifier of the SMTP config." + }, + "accountId": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "name": { + "type": "string", + "description": "Name of the SMTP config." + }, + "value": { + "$ref": "#/components/schemas/SmtpConfig" + } + }, + "description": "This is the view of the NgSmtp entity defined in Harness" + }, + "ResponseDTONgSmtp": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NgSmtp" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SmtpConfig": { + "required": [ + "host", + "port" + ], + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "This is the host of the SMTP server." + }, + "port": { + "type": "integer", + "description": "This is the port of the SMTP server.", + "format": "int32" + }, + "fromAddress": { + "type": "string", + "description": "From address of the email that needs to be send." + }, + "useSSL": { + "type": "boolean", + "description": "Specify whether or not to use SSL certificate." + }, + "startTLS": { + "type": "boolean", + "description": "Specify whether or not to use TLS." + }, + "username": { + "type": "string", + "description": "Username credential to authenticate with SMTP server." + }, + "password": { + "type": "array", + "description": "Password credential to authenticate with SMTP server.", + "items": { + "type": "string", + "description": "Password credential to authenticate with SMTP server." + } + }, + "delegateSelectors": { + "uniqueItems": true, + "type": "array", + "description": "List of delegate selectors of delegates used by SMTP server as connectivity mode.", + "items": { + "type": "string", + "description": "List of delegate selectors of delegates used by SMTP server as connectivity mode." + } + } + }, + "description": "This has the SMTP configuration details defined in Harness." + }, + "ResponseDTOValidationResult": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ValidationResult" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ValidationResult": { + "type": "object", + "properties": { + "valid": { + "type": "boolean" + }, + "errorMessage": { + "type": "string" + } + } + }, + "UserAddToUserGroupDTO": { + "type": "object", + "properties": { + "userGroupIdsToAdd": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AddUsersResponse": { + "type": "object", + "properties": { + "addUserResponseMap": { + "type": "object", + "additionalProperties": { + "type": "string", + "enum": [ + "USER_INVITED_SUCCESSFULLY", + "USER_ADDED_SUCCESSFULLY", + "USER_ALREADY_ADDED", + "USER_ALREADY_INVITED", + "USER_INVITE_NOT_REQUIRED", + "FAIL" + ] + } + } + } + }, + "ResponseDTOAddUsersResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AddUsersResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AddUsersDTO": { + "required": [ + "emails" + ], + "type": "object", + "properties": { + "emails": { + "maxItems": 100, + "minItems": 0, + "type": "array", + "items": { + "type": "string" + } + }, + "roleBindings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RoleBinding" + } + }, + "userGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "userSettings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserSettingFromInvite" + } + } + } + }, + "UserSettingFromInvite": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "ResponseDTOPasswordChangeResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "string", + "enum": [ + "PASSWORD_CHANGED", + "INCORRECT_CURRENT_PASSWORD", + "PASSWORD_STRENGTH_VIOLATED" + ] + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PasswordChange": { + "type": "object", + "properties": { + "currentPassword": { + "type": "string", + "description": "This is the current password." + }, + "newPassword": { + "type": "string", + "description": "This is the new password." + } + }, + "description": "This is the view of the PasswordChange entity defined in Harness" + }, + "GatewayAccountRequest": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "accountName": { + "type": "string" + }, + "companyName": { + "type": "string" + }, + "defaultExperience": { + "type": "string", + "enum": [ + "NG", + "CG" + ] + }, + "createdFromNG": { + "type": "boolean" + }, + "isNextGenEnabled": { + "type": "boolean", + "writeOnly": true + }, + "nextGenEnabled": { + "type": "boolean" + } + }, + "description": "Returns Gateway account request details like uuid, account name, company name, default experience, whether or not created from NextGen and whether NextGen is enabled or not." + }, + "ResponseDTOUserInfo": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/UserInfo" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "UserInfo": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "token": { + "type": "string" + }, + "defaultAccountId": { + "type": "string" + }, + "intent": { + "type": "string" + }, + "accounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GatewayAccountRequest" + } + }, + "admin": { + "type": "boolean" + }, + "twoFactorAuthenticationEnabled": { + "type": "boolean" + }, + "emailVerified": { + "type": "boolean" + }, + "locked": { + "type": "boolean" + }, + "disabled": { + "type": "boolean" + }, + "signupAction": { + "type": "string" + }, + "edition": { + "type": "string" + }, + "billingFrequency": { + "type": "string" + }, + "utmInfo": { + "$ref": "#/components/schemas/UtmInfo" + }, + "externallyManaged": { + "type": "boolean" + }, + "givenName": { + "type": "string" + }, + "familyName": { + "type": "string" + }, + "externalId": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "userPreferences": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "isEnrichedInfoCollected": { + "type": "boolean" + }, + "lastLogin": { + "type": "integer", + "format": "int64" + } + } + }, + "UtmInfo": { + "type": "object", + "properties": { + "utmSource": { + "type": "string" + }, + "utmContent": { + "type": "string" + }, + "utmMedium": { + "type": "string" + }, + "utmTerm": { + "type": "string" + }, + "utmCampaign": { + "type": "string" + } + } + }, + "ResponseDTOUserAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/UserAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RoleAssignmentMetadata": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "roleIdentifier": { + "type": "string" + }, + "roleName": { + "type": "string" + }, + "roleScopeLevel": { + "type": "string" + }, + "resourceGroupIdentifier": { + "type": "string" + }, + "resourceGroupName": { + "type": "string" + }, + "managedRole": { + "type": "boolean" + }, + "managedRoleAssignment": { + "type": "boolean" + } + }, + "description": "This has information of Role like name, id, resource group name, etc." + }, + "UserAggregate": { + "type": "object", + "properties": { + "user": { + "$ref": "#/components/schemas/UserMetadata" + }, + "roleAssignmentMetadata": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RoleAssignmentMetadata" + } + } + }, + "description": "Returns User's metadata and Role Assignments metadata" + }, + "PageResponseUserAggregate": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserAggregate" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseUserAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseUserAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOTwoFactorAuthSettingsInfo": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TwoFactorAuthSettingsInfo" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TwoFactorAuthSettingsInfo": { + "type": "object", + "properties": { + "userId": { + "type": "string" + }, + "email": { + "type": "string" + }, + "twoFactorAuthenticationEnabled": { + "type": "boolean" + }, + "mechanism": { + "type": "string", + "enum": [ + "TOTP" + ] + }, + "totpSecretKey": { + "type": "string" + }, + "totpqrurl": { + "type": "string" + } + } + }, + "ImpersonateDTO": { + "required": [ + "reasonOfImpersonation" + ], + "type": "object", + "properties": { + "reasonOfImpersonation": { + "type": "string" + } + } + }, + "UserInfoUpdateDTO": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "givenName": { + "type": "string" + }, + "familyName": { + "type": "string" + } + } + }, + "ResponseDTOVariableResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/VariableResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "StringVariableConfigDTO": { + "required": [ + "fixedValue", + "valueType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/VariableConfigDTO" + }, + { + "type": "object", + "properties": { + "fixedValue": { + "type": "string", + "description": "Fixed Value of the Variable." + } + } + } + ] + }, + "VariableConfigDTO": { + "required": [ + "type", + "valueType" + ], + "type": "object", + "properties": { + "valueType": { + "type": "string", + "description": "Type of Value of the Variable.", + "enum": [ + "FIXED" + ] + }, + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "VariableDTO": { + "required": [ + "identifier", + "name", + "spec", + "type" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Variable." + }, + "name": { + "type": "string", + "description": "Name of the Variable." + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "type": { + "type": "string", + "description": "Type of the Variable.", + "enum": [ + "String" + ] + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + }, + "spec": { + "$ref": "#/components/schemas/VariableConfigDTO" + } + } + }, + "VariableResponseDTO": { + "required": [ + "variable" + ], + "type": "object", + "properties": { + "variable": { + "$ref": "#/components/schemas/VariableDTO" + }, + "createdAt": { + "type": "integer", + "description": "Time when the Variable was first created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Time when the Variable was last modified.", + "format": "int64" + } + } + }, + "VariableRequestDTO": { + "type": "object", + "properties": { + "variable": { + "$ref": "#/components/schemas/VariableDTO" + } + } + }, + "PageResponseVariableResponseDTO": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableResponseDTO" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseVariableResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseVariableResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "VariableListRequestDTO": { + "type": "object", + "properties": { + "identifiers": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "FreezeResponse": { + "required": [ + "accountId", + "identifier", + "name", + "yaml" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "GLOBAL", + "MANUAL" + ] + }, + "status": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + "name": { + "type": "string" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "windows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FreezeWindow" + } + }, + "identifier": { + "type": "string" + }, + "yaml": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "freezeScope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + } + }, + "description": "This contains details of the Freeze Response" + }, + "FreezeWindow": { + "required": [ + "startTime", + "timeZone" + ], + "type": "object", + "properties": { + "timeZone": { + "type": "string" + }, + "startTime": { + "type": "string" + }, + "duration": { + "type": "string" + }, + "endTime": { + "type": "string" + }, + "recurrence": { + "$ref": "#/components/schemas/Recurrence" + } + } + }, + "Recurrence": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/RecurrenceSpec" + }, + "type": { + "type": "string", + "enum": [ + "Daily", + "Weekly", + "Monthly", + "Yearly" + ] + } + } + }, + "RecurrenceSpec": { + "type": "object", + "properties": { + "until": { + "type": "string" + }, + "value": { + "maximum": 11, + "minimum": 2, + "type": "integer", + "format": "int32" + } + } + }, + "ResponseDTOFreezeResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/FreezeResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "FreezeErrorResponseDTO": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "errorMessage": { + "type": "string" + } + } + }, + "FreezeResponseWrapperDTO": { + "type": "object", + "properties": { + "noOfSuccess": { + "type": "integer", + "format": "int32" + }, + "noOfFailed": { + "type": "integer", + "format": "int32" + }, + "successfulFreezeResponseDTOList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FreezeResponse" + } + }, + "freezeErrorResponseDTOList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FreezeErrorResponseDTO" + } + } + } + }, + "ResponseDTOFreezeResponseWrapperDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/FreezeResponseWrapperDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CurrentOrUpcomingWindow": { + "type": "object", + "properties": { + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + } + } + }, + "FreezeDetailedResponse": { + "required": [ + "accountId", + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "GLOBAL", + "MANUAL" + ] + }, + "status": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + "name": { + "type": "string" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "windows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FreezeWindow" + } + }, + "currentOrUpcomingWindow": { + "$ref": "#/components/schemas/CurrentOrUpcomingWindow" + }, + "identifier": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "freezeScope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + }, + "yaml": { + "type": "string" + } + }, + "description": "This contains detailed information of the Freeze Config" + }, + "ResponseDTOFreezeDetailedResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/FreezeDetailedResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "FreezeSummaryResponse": { + "required": [ + "accountId", + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "GLOBAL", + "MANUAL" + ] + }, + "status": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + "name": { + "type": "string" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "windows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FreezeWindow" + } + }, + "currentOrUpcomingWindow": { + "$ref": "#/components/schemas/CurrentOrUpcomingWindow" + }, + "identifier": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "freezeScope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + }, + "yaml": { + "type": "string" + } + }, + "description": "This contains summary of the Freeze Response" + }, + "PageResponseFreezeSummaryResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FreezeSummaryResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseFreezeSummaryResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseFreezeSummaryResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "FreezeFilterPropertiesDTO": { + "type": "object", + "properties": { + "freezeIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "sort": { + "type": "array", + "items": { + "type": "string" + } + }, + "freezeStatus": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "searchTerm": { + "type": "string" + } + } + }, + "FrozenExecutionDetail": { + "type": "object", + "properties": { + "freeze": { + "$ref": "#/components/schemas/FreezeSummaryResponse" + }, + "url": { + "type": "string" + } + } + }, + "FrozenExecutionDetails": { + "type": "object", + "properties": { + "freezeList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FrozenExecutionDetail" + } + } + } + }, + "ResponseDTOFrozenExecutionDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/FrozenExecutionDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ClusterResponse": { + "required": [ + "envRef" + ], + "type": "object", + "properties": { + "clusterRef": { + "type": "string", + "description": "identifier of the gitops cluster" + }, + "orgIdentifier": { + "type": "string", + "description": "organization identifier of the cluster" + }, + "projectIdentifier": { + "type": "string", + "description": "project identifier of the cluster" + }, + "agentIdentifier": { + "type": "string", + "description": "agent identifier of the cluster" + }, + "accountIdentifier": { + "type": "string", + "description": "account identifier of the cluster" + }, + "envRef": { + "type": "string", + "description": "environment identifier of the cluster" + }, + "linkedAt": { + "type": "integer", + "description": "time at which the cluster was linked", + "format": "int64" + }, + "scope": { + "type": "string", + "description": "scope at which the cluster exists in harness gitops, project vs org vs account", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ] + }, + "name": { + "type": "string", + "description": "name of the gitops cluster" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "name of the gitops cluster" + }, + "description": "name of the gitops cluster" + } + }, + "description": "This is the ClusterRequest entity defined in Harness" + }, + "ResponseDTOClusterResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ClusterResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ClusterRequest": { + "required": [ + "envRef" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of the cluster" + }, + "orgIdentifier": { + "type": "string", + "description": "organization identifier of the cluster" + }, + "agentIdentifier": { + "type": "string", + "description": "agent identifier of the cluster" + }, + "projectIdentifier": { + "type": "string", + "description": "project identifier of the cluster" + }, + "envRef": { + "type": "string", + "description": "environment identifier of the cluster" + }, + "scope": { + "type": "string", + "description": "scope at which the cluster exists in harness gitops, project vs org vs account", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ] + } + }, + "description": "This is the ClusterRequest entity defined in Harness" + }, + "ClusterBatchResponse": { + "type": "object", + "properties": { + "linked": { + "type": "integer", + "description": "number of clusters linked", + "format": "int64" + }, + "unlinked": { + "type": "integer", + "description": "number of clusters unlinked", + "format": "int64" + } + }, + "description": "This is the Cluster Batch Response defined in Harness" + }, + "ResponseDTOClusterBatchResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ClusterBatchResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ClusterBasicDTO": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of the cluster" + }, + "agentIdentifier": { + "type": "string", + "description": "agent identifier of the cluster" + }, + "name": { + "type": "string", + "description": "name of the cluster" + }, + "scope": { + "type": "string", + "description": "scope at which the cluster exists in harness gitops, project vs org vs account", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ] + } + }, + "description": "list of cluster identifiers and names" + }, + "ClusterBatchRequest": { + "required": [ + "envRef" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string", + "description": "Organization identifier of the environment" + }, + "projectIdentifier": { + "type": "string", + "description": "Project identifier of the environment" + }, + "envRef": { + "type": "string", + "description": "Environment identifier for the cluster" + }, + "linkAllClusters": { + "type": "boolean", + "description": "Link all clusters (only valid if link clusters API is being used). To be used in conjunction with searchTerm." + }, + "unlinkAllClusters": { + "type": "boolean", + "description": "Unlink all clusters (only valid if unlink clusters API is being used). Warning: This will unlink ALL clusters linked to provided environment" + }, + "searchTerm": { + "type": "string", + "description": "search term if applicable. (only valid if linking all clusters)" + }, + "clusters": { + "type": "array", + "description": "list of cluster identifiers and names", + "items": { + "$ref": "#/components/schemas/ClusterBasicDTO" + } + } + }, + "description": "This is the ClusterBatchRequest entity defined in Harness and is common to both \"Link Clusters\" as well as \"Unlink clusters\" batch requests" + }, + "PageResponseClusterResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ClusterResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseClusterResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseClusterResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CountGroupedOnArtifact": { + "type": "object", + "properties": { + "artifactPath": { + "type": "string" + }, + "artifactVersion": { + "type": "string" + }, + "artifact": { + "type": "string" + }, + "count": { + "type": "integer", + "format": "int64" + }, + "executionCountGroupedOnStatusList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CountGroupedOnStatus" + } + } + } + }, + "CountGroupedOnService": { + "type": "object", + "properties": { + "serviceReference": { + "type": "string" + }, + "serviceName": { + "type": "string" + }, + "count": { + "type": "integer", + "format": "int64" + }, + "executionCountGroupedOnStatusList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CountGroupedOnStatus" + } + }, + "executionCountGroupedOnArtifactList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CountGroupedOnArtifact" + } + } + } + }, + "CountGroupedOnStatus": { + "type": "object", + "properties": { + "status": { + "type": "string" + }, + "count": { + "type": "integer", + "format": "int64" + } + } + }, + "PipelineExecutionCountInfo": { + "type": "object", + "properties": { + "executionCountGroupedOnServiceList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CountGroupedOnService" + } + } + } + }, + "ResponseDTOPipelineExecutionCountInfo": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PipelineExecutionCountInfo" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PostProdRollbackCheckDTO": { + "type": "object", + "properties": { + "isRollbackAllowed": { + "type": "boolean", + "writeOnly": true + }, + "message": { + "type": "string" + }, + "swimLaneInfo": { + "$ref": "#/components/schemas/PostProdRollbackSwimLaneInfo" + }, + "rollbackAllowed": { + "type": "boolean" + } + } + }, + "PostProdRollbackSwimLaneInfo": { + "type": "object" + }, + "ResponseDTOPostProdRollbackCheckDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PostProdRollbackCheckDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PostProdRollbackRequestDTO": { + "required": [ + "infrastructureMappingId", + "instanceKey" + ], + "type": "object", + "properties": { + "instanceKey": { + "type": "string" + }, + "infrastructureMappingId": { + "type": "string" + } + } + }, + "PostProdRollbackResponseDTO": { + "type": "object", + "properties": { + "isRollbackTriggered": { + "type": "boolean", + "writeOnly": true + }, + "instanceKey": { + "type": "string" + }, + "infraMappingId": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "message": { + "type": "string" + }, + "rollbackTriggered": { + "type": "boolean" + } + } + }, + "ResponseDTOPostProdRollbackResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PostProdRollbackResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTORollbackResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RollbackResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RollbackResponseDTO": { + "type": "object", + "properties": { + "isRollbackTriggered": { + "type": "boolean", + "writeOnly": true + }, + "instanceKey": { + "type": "string" + }, + "infraMappingId": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "message": { + "type": "string" + }, + "serviceIdentifier": { + "type": "string" + }, + "envIdentifier": { + "type": "string" + }, + "environmentType": { + "type": "string" + }, + "infraIdentifier": { + "type": "string" + }, + "rollbackTriggered": { + "type": "boolean" + } + } + }, + "RollbackRequestDTO": { + "required": [ + "envIdentifier", + "serviceIdentifier" + ], + "type": "object", + "properties": { + "serviceIdentifier": { + "type": "string" + }, + "envIdentifier": { + "type": "string" + }, + "environmentType": { + "type": "string", + "enum": [ + "PreProduction", + "Production" + ] + }, + "infraIdentifier": { + "type": "string" + }, + "artifact": { + "type": "string" + }, + "chartVersion": { + "type": "string" + } + } + }, + "ResponseDTOServiceAccount": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceAccount": { + "required": [ + "accountIdentifier", + "email", + "identifier", + "name" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Service Account." + }, + "name": { + "type": "string", + "description": "Name of the Service Account." + }, + "email": { + "type": "string", + "description": "Email of the Service Account." + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string", + "description": "Description of the Service Account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags of the Service Account." + }, + "description": "Tags of the Service Account." + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "governanceMetadata": { + "$ref": "#/components/schemas/GovernanceMetadata2" + } + }, + "description": "This has the details of Service Account in Harness." + }, + "ResponseDTOServiceAccountAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ServiceAccountAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceAccountAggregate": { + "required": [ + "createdAt", + "lastModifiedAt", + "serviceAccount" + ], + "type": "object", + "properties": { + "serviceAccount": { + "$ref": "#/components/schemas/ServiceAccount" + }, + "createdAt": { + "type": "integer", + "description": "This is the time at which Service Account was created.", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "This is the time at which Service Account was last modified.", + "format": "int64" + }, + "tokensCount": { + "type": "integer", + "description": "This is the total number of tokens in a Service Account.", + "format": "int32" + }, + "roleAssignmentsMetadataDTO": { + "type": "array", + "description": "This is the list of Role Assignments for the Service Account.", + "items": { + "$ref": "#/components/schemas/RoleAssignmentMetadata" + } + } + }, + "description": "This contains the Service Account details and its metadata." + }, + "PageResponseServiceAccountAggregate": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceAccountAggregate" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseServiceAccountAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseServiceAccountAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListServiceAccount": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceAccount" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CannyResponse": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "postURL": { + "type": "string" + } + }, + "description": "Contains information about post creation status on Canny" + }, + "ResponseDTOCannyResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CannyResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Board": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "id": { + "type": "string" + } + } + }, + "CannyBoardsResponse": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "boards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Board" + } + } + }, + "description": "Contains list of Boards and their ID's from Canny" + }, + "ResponseDTOCannyBoardsResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CannyBoardsResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CannyCategoriesResponse": { + "type": "object", + "properties": { + "boardId": { + "type": "string" + }, + "categoryList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Category" + } + } + }, + "description": "Contains list of Categories and their ID's from Canny for a given board" + }, + "Category": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "id": { + "type": "string" + } + } + }, + "ResponseDTOCannyCategoriesResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CannyCategoriesResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListSourceCodeManager": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SourceCodeManager" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SourceCodeManager": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Source Code Manager Identifier" + }, + "userIdentifier": { + "type": "string", + "description": "Id of the User" + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "name": { + "type": "string", + "description": "Name of Source Code Manager" + }, + "createdAt": { + "type": "integer", + "description": "Time at which this Source Code Manager was created", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Time at which this Source Code Manager was last Updated", + "format": "int64" + }, + "authentication": { + "$ref": "#/components/schemas/SourceCodeManagerAuthentication" + }, + "type": { + "type": "string", + "description": "Type of SCM", + "enum": [ + "BITBUCKET", + "GITHUB", + "GITLAB", + "AWS_CODE_COMMIT", + "AZURE_REPO", + "BITBUCKET_SERVER", + "GITLAB_ON_PREM", + "HARNESS", + "GITHUB_ENTERPRISE" + ] + } + }, + "description": "This contains details of Source Code Manager", + "discriminator": { + "propertyName": "type" + } + }, + "SourceCodeManagerAuthentication": { + "type": "object", + "description": "Authentication Details of Source Code Manager" + }, + "ResponseDTOSourceCodeManager": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SourceCodeManager" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOSettingValueResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SettingValueResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SettingValueResponseDTO": { + "required": [ + "value", + "valueType" + ], + "type": "object", + "properties": { + "valueType": { + "type": "string", + "description": "Type of Value of the Setting.", + "enum": [ + "String", + "Boolean", + "Number" + ] + }, + "value": { + "type": "string", + "description": "Value of the setting" + } + } + }, + "ResponseDTOListSettingResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SettingResponseDTO" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SettingDTO": { + "required": [ + "allowOverrides", + "allowedScopes", + "category", + "groupIdentifier", + "identifier", + "isSettingEditable", + "name", + "valueType" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Setting." + }, + "name": { + "type": "string", + "description": "Name of the Setting." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "category": { + "type": "string", + "description": "Category of the Setting.", + "enum": [ + "CD", + "CI", + "CE", + "CV", + "CF", + "STO", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "CHAOS", + "SCIM", + "GIT_EXPERIENCE", + "CONNECTORS", + "EULA", + "NOTIFICATIONS", + "SUPPLY_CHAIN_ASSURANCE", + "USER", + "MODULES_VISIBILITY", + "DBOPS", + "IR" + ] + }, + "groupIdentifier": { + "type": "string", + "description": "Group Id of the setting" + }, + "valueType": { + "type": "string", + "description": "Type of Value of the Setting.", + "enum": [ + "String", + "Boolean", + "Number" + ] + }, + "allowedValues": { + "uniqueItems": true, + "type": "array", + "description": "Set of Values allowed for the Setting.", + "items": { + "type": "string", + "description": "Set of Values allowed for the Setting." + } + }, + "allowOverrides": { + "type": "boolean", + "description": "Allow override of the Setting in sub-scopes." + }, + "value": { + "type": "string", + "description": "Value of the setting" + }, + "defaultValue": { + "type": "string", + "description": "Default Value of the Setting." + }, + "settingSource": { + "type": "string", + "description": "Source of the setting value", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "DEFAULT" + ] + }, + "isSettingEditable": { + "type": "boolean", + "description": "Is the setting editable at the current scope" + }, + "allowedScopes": { + "uniqueItems": true, + "type": "array", + "description": "List of scopes where the setting is available", + "items": { + "type": "string", + "description": "List of scopes where the setting is available", + "enum": [ + "ACCOUNT", + "ORGANIZATION", + "PROJECT" + ] + } + } + } + }, + "SettingResponseDTO": { + "required": [ + "setting" + ], + "type": "object", + "properties": { + "setting": { + "$ref": "#/components/schemas/SettingDTO" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Time when the Setting was last modified.", + "format": "int64" + } + } + }, + "ResponseDTOListSettingUpdateResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SettingUpdateResponseDTO" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SettingUpdateResponseDTO": { + "required": [ + "identifier", + "setting" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Setting." + }, + "setting": { + "$ref": "#/components/schemas/SettingDTO" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Time when the Setting was last modified.", + "format": "int64" + }, + "updateStatus": { + "type": "boolean", + "description": "Request status for the corresponding item in batch request" + }, + "errorMessage": { + "type": "string", + "description": "Error message" + } + } + }, + "SettingRequestDTO": { + "required": [ + "allowOverrides", + "identifier", + "updateType" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Setting." + }, + "value": { + "type": "string", + "description": "Value of the setting" + }, + "allowOverrides": { + "type": "boolean", + "description": "Allow override of the Setting in sub-scopes." + }, + "updateType": { + "type": "string", + "description": "Type of the update operation. When update type is RESTORE, field [value] is ignored", + "enum": [ + "UPDATE", + "RESTORE" + ] + } + } + }, + "ResponseDTOListUserSettingResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserSettingResponseDTO" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "UserSettingDTO": { + "required": [ + "category", + "groupIdentifier", + "identifier", + "valueType" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Setting." + }, + "category": { + "type": "string", + "description": "Category of the Setting.", + "enum": [ + "CD", + "CI", + "CE", + "CV", + "CF", + "STO", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "CHAOS", + "SCIM", + "GIT_EXPERIENCE", + "CONNECTORS", + "EULA", + "NOTIFICATIONS", + "SUPPLY_CHAIN_ASSURANCE", + "USER", + "MODULES_VISIBILITY", + "DBOPS", + "IR" + ] + }, + "valueType": { + "type": "string", + "description": "Type of Value of the Setting.", + "enum": [ + "String", + "Boolean", + "Number" + ] + }, + "allowedValues": { + "uniqueItems": true, + "type": "array", + "description": "Set of Values allowed for the Setting.", + "items": { + "type": "string", + "description": "Set of Values allowed for the Setting." + } + }, + "value": { + "type": "string", + "description": "Value of the setting" + }, + "userID": { + "type": "string", + "description": "userID" + }, + "groupIdentifier": { + "type": "string", + "description": "Group Id of the setting" + } + } + }, + "UserSettingResponseDTO": { + "required": [ + "userSetting" + ], + "type": "object", + "properties": { + "userSetting": { + "$ref": "#/components/schemas/UserSettingDTO" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Time when the Setting was last modified.", + "format": "int64" + } + } + }, + "ResponseDTOListUserSettingUpdateResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserSettingUpdateResponseDTO" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "UserSettingUpdateResponseDTO": { + "required": [ + "identifier", + "userSettingDTO" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Setting." + }, + "userSettingDTO": { + "$ref": "#/components/schemas/UserSettingDTO" + }, + "lastModifiedAt": { + "type": "integer", + "description": "Time when the Setting was last modified.", + "format": "int64" + }, + "updateStatus": { + "type": "boolean", + "description": "Request status for the corresponding item in batch request" + }, + "errorMessage": { + "type": "string", + "description": "Error message" + } + } + }, + "UserSettingRequestDTO": { + "required": [ + "identifier", + "updateType" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the Setting." + }, + "value": { + "type": "string", + "description": "Value of the setting" + }, + "updateType": { + "type": "string", + "description": "Type of the update operation. When update type is RESTORE, field [value] is ignored", + "enum": [ + "UPDATE", + "RESTORE" + ] + }, + "enableAcrossAccounts": { + "type": "boolean" + } + } + }, + "ResponseDTOMapStringString": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PipelineError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/PipelineErrorMetadata" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "PipelineErrorMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "PerpetualTaskInfoForTriggers": { + "type": "object", + "properties": { + "state": { + "type": "string" + }, + "unassignedReason": { + "type": "string" + }, + "taskDescription": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "delegateId": { + "type": "string" + }, + "delegateHostName": { + "type": "string" + } + } + }, + "PolledResponse": { + "type": "object", + "properties": { + "allPolledKeys": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PollingInfoForTriggers": { + "type": "object", + "properties": { + "perpetualTaskId": { + "type": "string" + }, + "polledResponse": { + "$ref": "#/components/schemas/PolledResponse" + }, + "pollingDocId": { + "type": "string" + }, + "perpetualTaskInfoForTriggers": { + "$ref": "#/components/schemas/PerpetualTaskInfoForTriggers" + } + } + }, + "ResponseDTOPollingInfoForTriggers": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PollingInfoForTriggers" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "NGTriggerEventHistoryDTO": { + "type": "object", + "properties": { + "triggerIdentifier": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "eventCorrelationId": { + "type": "string" + }, + "payload": { + "type": "string" + }, + "headers": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eventCreatedAt": { + "type": "integer", + "format": "int64" + }, + "finalStatus": { + "type": "string", + "enum": [ + "SCM_SERVICE_CONNECTION_FAILED", + "INVALID_PAYLOAD", + "TRIGGER_DID_NOT_MATCH_EVENT_CONDITION", + "TRIGGER_DID_NOT_MATCH_METADATA_CONDITION", + "TRIGGER_DID_NOT_MATCH_ARTIFACT_JEXL_CONDITION", + "NO_MATCHING_TRIGGER_FOR_REPO", + "NO_MATCHING_TRIGGER_FOR_EVENT_ACTION", + "NO_MATCHING_TRIGGER_FOR_METADATA_CONDITIONS", + "NO_MATCHING_TRIGGER_FOR_PAYLOAD_CONDITIONS", + "NO_MATCHING_TRIGGER_FOR_JEXL_CONDITIONS", + "NO_MATCHING_TRIGGER_FOR_HEADER_CONDITIONS", + "INVALID_RUNTIME_INPUT_YAML", + "TARGET_DID_NOT_EXECUTE", + "TARGET_EXECUTION_REQUESTED", + "NO_ENABLED_CUSTOM_TRIGGER_FOUND", + "NO_ENABLED_CUSTOM_TRIGGER_FOUND_FOR_ACCOUNT", + "NO_ENABLED_TRIGGER_FOR_PROJECT", + "NO_ENABLED_TRIGGER_FOR_ACCOUNT", + "NO_ENABLED_TRIGGER_FOR_SOURCEREPO_TYPE", + "NO_ENABLED_TRIGGER_FOR_ACCOUNT_SOURCE_REPO", + "NO_MATCHING_TRIGGER_FOR_FILEPATH_CONDITIONS", + "FAILED_TO_FETCH_PR_DETAILS", + "EXCEPTION_WHILE_PROCESSING", + "TRIGGER_CONFIRMATION_SUCCESSFUL", + "TRIGGER_CONFIRMATION_FAILED", + "TRIGGER_AUTHENTICATION_FAILED", + "VALIDATION_FAILED_FOR_TRIGGER", + "ALL_MAPPED_TRIGGER_FAILED_VALIDATION_FOR_POLLING_EVENT", + "NO_MATCHING_TRIGGER_FOR_FOR_EVENT_SIGNATURES", + "NO_MATCHING_TRIGGER_FOR_FOR_EVENT_CONDITION", + "POLLING_EVENT_WITH_NO_VERSIONS", + "NEW_ARTIFACT_EVENT_PROCESSED", + "NEW_MANIFEST_EVENT_PROCESSED", + "SKIPPED", + "QUEUED", + "INVALID_HARNESS_ARTIFACT_REGISTRY_TRIGGER_ACTION", + "NO_TRIGGERS_FOUND_FOR_HARNESS_ARTIFACT_REGISTRY_WEBHOOK", + "HARNESS_ARTIFACT_REGISTRY_WEBHOOK_NOT_EXECUTED" + ] + }, + "message": { + "type": "string" + }, + "exceptionOccurred": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "triggerEventStatus": { + "$ref": "#/components/schemas/TriggerEventStatus" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "targetIdentifier": { + "type": "string" + }, + "targetExecutionSummary": { + "$ref": "#/components/schemas/TargetExecutionSummary" + }, + "type": { + "type": "string", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + }, + "ngTriggerEventInfo": { + "$ref": "#/components/schemas/NGTriggerEventInfo" + } + } + }, + "NGTriggerEventInfo": { + "type": "object" + }, + "PageNGTriggerEventHistoryDTO": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGTriggerEventHistoryDTO" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPageNGTriggerEventHistoryDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageNGTriggerEventHistoryDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TargetExecutionSummary": { + "type": "object", + "properties": { + "triggerId": { + "type": "string" + }, + "targetId": { + "type": "string" + }, + "runtimeInput": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "executionStatus": { + "type": "string" + }, + "startTs": { + "type": "integer", + "format": "int64" + } + } + }, + "TriggerEventStatus": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILED", + "SKIPPED" + ] + }, + "message": { + "type": "string" + } + } + }, + "NGTriggerEventsApiResponse": { + "required": [ + "triggerIdentifier" + ], + "type": "object", + "properties": { + "triggerIdentifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "scope": { + "$ref": "#/components/schemas/PipelineScope" + }, + "eventCorrelationId": { + "type": "string" + }, + "eventCreatedAt": { + "type": "integer", + "format": "int64" + }, + "message": { + "type": "string" + }, + "triggerEventStatus": { + "$ref": "#/components/schemas/TriggerEventStatus" + }, + "ngTriggerType": { + "type": "string", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + }, + "subTriggerType": { + "type": "string" + }, + "ngTriggerMetaData": { + "$ref": "#/components/schemas/NGTriggerMetaData" + } + } + }, + "NGTriggerMetaData": { + "type": "object", + "properties": { + "pollingDocumentId": { + "type": "string", + "writeOnly": true + }, + "build": { + "type": "string", + "writeOnly": true + } + } + }, + "PageNGTriggerEventsApiResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGTriggerEventsApiResponse" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPageNGTriggerEventsApiResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageNGTriggerEventsApiResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PipelineScope": { + "required": [ + "accountIdentifier" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "parentUniqueId": { + "type": "string" + } + } + }, + "NGTriggerEventHistoryBaseDTO": { + "type": "object", + "properties": { + "triggerIdentifier": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "eventCorrelationId": { + "type": "string" + }, + "payload": { + "type": "string" + }, + "headers": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eventCreatedAt": { + "type": "integer", + "format": "int64" + }, + "finalStatus": { + "type": "string", + "enum": [ + "SCM_SERVICE_CONNECTION_FAILED", + "INVALID_PAYLOAD", + "TRIGGER_DID_NOT_MATCH_EVENT_CONDITION", + "TRIGGER_DID_NOT_MATCH_METADATA_CONDITION", + "TRIGGER_DID_NOT_MATCH_ARTIFACT_JEXL_CONDITION", + "NO_MATCHING_TRIGGER_FOR_REPO", + "NO_MATCHING_TRIGGER_FOR_EVENT_ACTION", + "NO_MATCHING_TRIGGER_FOR_METADATA_CONDITIONS", + "NO_MATCHING_TRIGGER_FOR_PAYLOAD_CONDITIONS", + "NO_MATCHING_TRIGGER_FOR_JEXL_CONDITIONS", + "NO_MATCHING_TRIGGER_FOR_HEADER_CONDITIONS", + "INVALID_RUNTIME_INPUT_YAML", + "TARGET_DID_NOT_EXECUTE", + "TARGET_EXECUTION_REQUESTED", + "NO_ENABLED_CUSTOM_TRIGGER_FOUND", + "NO_ENABLED_CUSTOM_TRIGGER_FOUND_FOR_ACCOUNT", + "NO_ENABLED_TRIGGER_FOR_PROJECT", + "NO_ENABLED_TRIGGER_FOR_ACCOUNT", + "NO_ENABLED_TRIGGER_FOR_SOURCEREPO_TYPE", + "NO_ENABLED_TRIGGER_FOR_ACCOUNT_SOURCE_REPO", + "NO_MATCHING_TRIGGER_FOR_FILEPATH_CONDITIONS", + "FAILED_TO_FETCH_PR_DETAILS", + "EXCEPTION_WHILE_PROCESSING", + "TRIGGER_CONFIRMATION_SUCCESSFUL", + "TRIGGER_CONFIRMATION_FAILED", + "TRIGGER_AUTHENTICATION_FAILED", + "VALIDATION_FAILED_FOR_TRIGGER", + "ALL_MAPPED_TRIGGER_FAILED_VALIDATION_FOR_POLLING_EVENT", + "NO_MATCHING_TRIGGER_FOR_FOR_EVENT_SIGNATURES", + "NO_MATCHING_TRIGGER_FOR_FOR_EVENT_CONDITION", + "POLLING_EVENT_WITH_NO_VERSIONS", + "NEW_ARTIFACT_EVENT_PROCESSED", + "NEW_MANIFEST_EVENT_PROCESSED", + "SKIPPED", + "QUEUED", + "INVALID_HARNESS_ARTIFACT_REGISTRY_TRIGGER_ACTION", + "NO_TRIGGERS_FOUND_FOR_HARNESS_ARTIFACT_REGISTRY_WEBHOOK", + "HARNESS_ARTIFACT_REGISTRY_WEBHOOK_NOT_EXECUTED" + ] + }, + "message": { + "type": "string" + }, + "exceptionOccurred": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "triggerEventStatus": { + "$ref": "#/components/schemas/TriggerEventStatus" + } + } + }, + "PageNGTriggerEventHistoryBaseDTO": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGTriggerEventHistoryBaseDTO" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPageNGTriggerEventHistoryBaseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageNGTriggerEventHistoryBaseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "NGTriggerResponse": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + }, + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "targetIdentifier": { + "type": "string" + }, + "yaml": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "errors": { + "type": "object", + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "errorResponse": { + "type": "boolean" + }, + "stagesToExecute": { + "$ref": "#/components/schemas/ParameterFieldListString" + }, + "yamlVersion": { + "type": "string" + }, + "webhookUrl": { + "type": "string" + } + }, + "description": "This contains the trigger details" + }, + "ParameterFieldListString": { + "type": "object", + "properties": { + "expressionValue": { + "type": "string" + }, + "expression": { + "type": "boolean" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + }, + "defaultValue": { + "type": "array", + "items": { + "type": "string" + } + }, + "typeString": { + "type": "boolean" + }, + "inputSetValidator": { + "$ref": "#/components/schemas/InputSetValidator" + }, + "jsonResponseField": { + "type": "boolean" + }, + "responseField": { + "type": "string" + }, + "executionInput": { + "type": "boolean" + } + } + }, + "ResponseDTONGTriggerResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NGTriggerResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "BuildDetails": { + "type": "object", + "properties": { + "buildType": { + "type": "string" + } + } + }, + "LastTriggerExecutionDetails": { + "type": "object", + "properties": { + "lastExecutionTime": { + "type": "integer", + "format": "int64" + }, + "lastExecutionSuccessful": { + "type": "boolean" + }, + "lastExecutionStatus": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "NGTriggerDetailsResponseDTO": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + }, + "triggerStatus": { + "$ref": "#/components/schemas/TriggerStatus" + }, + "lastTriggerExecutionDetails": { + "$ref": "#/components/schemas/LastTriggerExecutionDetails" + }, + "webhookDetails": { + "$ref": "#/components/schemas/WebhookDetails" + }, + "buildDetails": { + "$ref": "#/components/schemas/BuildDetails" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "executions": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "yaml": { + "type": "string" + }, + "webhookUrl": { + "type": "string" + }, + "webhookCurlCommand": { + "type": "string" + }, + "registrationStatus": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILED", + "ERROR", + "TIMEOUT", + "UNAVAILABLE" + ] + }, + "enabled": { + "type": "boolean" + }, + "isPipelineInputOutdated": { + "type": "boolean", + "writeOnly": true + }, + "yamlVersion": { + "type": "string" + }, + "pipelineInputOutdated": { + "type": "boolean" + } + } + }, + "PageResponseNGTriggerDetailsResponseDTO": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGTriggerDetailsResponseDTO" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "PollingSubscriptionStatus": { + "type": "object", + "properties": { + "statusResult": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILED", + "UNKNOWN", + "PENDING" + ] + }, + "detailedMessage": { + "type": "string" + }, + "lastPolled": { + "type": "array", + "items": { + "type": "string" + } + }, + "lastPollingUpdate": { + "type": "integer", + "format": "int64" + }, + "errorStatusValidUntil": { + "type": "integer", + "format": "int64" + } + } + }, + "ResponseDTOPageResponseNGTriggerDetailsResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseNGTriggerDetailsResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TriggerStatus": { + "type": "object", + "properties": { + "pollingSubscriptionStatus": { + "$ref": "#/components/schemas/PollingSubscriptionStatus" + }, + "validationStatus": { + "$ref": "#/components/schemas/ValidationStatus" + }, + "webhookAutoRegistrationStatus": { + "$ref": "#/components/schemas/WebhookAutoRegistrationStatus" + }, + "webhookInfo": { + "$ref": "#/components/schemas/WebhookInfo" + }, + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILED", + "UNKNOWN", + "PENDING" + ] + }, + "detailMessages": { + "type": "array", + "items": { + "type": "string" + } + }, + "lastPollingUpdate": { + "type": "integer", + "format": "int64" + }, + "lastPolled": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ValidationStatus": { + "type": "object", + "properties": { + "statusResult": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILED", + "UNKNOWN", + "PENDING" + ] + }, + "detailedMessage": { + "type": "string" + } + } + }, + "WebhookAutoRegistrationStatus": { + "type": "object", + "properties": { + "registrationResult": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILED", + "ERROR", + "TIMEOUT", + "UNAVAILABLE" + ] + }, + "detailedMessage": { + "type": "string" + } + } + }, + "WebhookDetails": { + "type": "object", + "properties": { + "webhookSecret": { + "type": "string" + }, + "webhookSourceRepo": { + "type": "string" + } + } + }, + "WebhookInfo": { + "type": "object", + "properties": { + "webhookId": { + "type": "string" + } + } + }, + "TriggerFilterProperties": { + "required": [ + "filterType" + ], + "type": "object", + "properties": { + "triggerNames": { + "type": "array", + "description": "This is the list of the Trigger names on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Trigger names on which the filter will be applied." + } + }, + "triggerIdentifiers": { + "type": "array", + "description": "This is the list of the Trigger identifiers on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Trigger identifiers on which the filter will be applied." + } + }, + "triggerTypes": { + "type": "array", + "description": "This is the list of the Trigger types on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Trigger types on which the filter will be applied.", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "description": "This specifies the corresponding Entity of the filter.", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + } + }, + "description": "This contains details of the Trigger Filter" + }, + "ResponseDTOTriggerCatalogResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TriggerCatalogResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TriggerCatalogItem": { + "required": [ + "category", + "triggerCatalogType" + ], + "type": "object", + "properties": { + "category": { + "type": "string", + "description": "Category of this Trigger.", + "enum": [ + "Webhook", + "Artifact", + "Manifest", + "Scheduled", + "MultiRegionArtifact" + ] + }, + "triggerCatalogType": { + "type": "array", + "description": "List of Trigger types corresponding to a specific category.", + "items": { + "type": "string", + "description": "List of Trigger types corresponding to a specific category.", + "enum": [ + "Github", + "Gitlab", + "Harness", + "Bitbucket", + "AzureRepo", + "Custom", + "EventRelay", + "HarnessArtifactRegistry", + "Gcr", + "Ecr", + "DockerRegistry", + "ArtifactoryRegistry", + "Acr", + "AmazonS3", + "GoogleArtifactRegistry", + "CustomArtifact", + "GithubPackageRegistry", + "Jenkins", + "Nexus3Registry", + "Nexus2Registry", + "AzureArtifacts", + "AmazonMachineImage", + "Bamboo", + "GoogleCloudStorage", + "HelmChart", + "Cron" + ] + } + } + }, + "description": "This has details of the Trigger Catalog." + }, + "TriggerCatalogResponse": { + "required": [ + "catalog" + ], + "type": "object", + "properties": { + "catalog": { + "type": "array", + "description": "List of Trigger category and Trigger types corresponding to a specific category.", + "items": { + "$ref": "#/components/schemas/TriggerCatalogItem" + } + } + }, + "description": "This has details of the retrieved Trigger Catalog." + }, + "ResponseDTONGTriggerDetailsResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NGTriggerDetailsResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOWebhookEventProcessingDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/WebhookEventProcessingDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "WebhookEventProcessingDetails": { + "type": "object", + "properties": { + "eventFound": { + "type": "boolean" + }, + "eventId": { + "type": "string" + }, + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "triggerIdentifier": { + "type": "string" + }, + "pipelineIdentifier": { + "type": "string" + }, + "pipelineExecutionId": { + "type": "string" + }, + "exceptionOccured": { + "type": "boolean" + }, + "status": { + "type": "string" + }, + "message": { + "type": "string" + }, + "payload": { + "type": "string" + }, + "eventCreatedAt": { + "type": "integer", + "format": "int64" + }, + "runtimeInput": { + "type": "string" + }, + "warningMsg": { + "type": "string" + } + } + }, + "ResponseDTOWebhookExecutionDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/WebhookExecutionDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "WebhookExecutionDetails": { + "type": "object", + "properties": { + "webhookProcessingDetails": { + "$ref": "#/components/schemas/WebhookEventProcessingDetails" + }, + "executionDetails": { + "type": "object" + }, + "executionUrl": { + "type": "string" + } + } + }, + "NGProcessWebhookResponse": { + "type": "object", + "properties": { + "eventCorrelationId": { + "type": "string" + }, + "apiUrl": { + "type": "string" + }, + "uiUrl": { + "type": "string" + }, + "uiSetupUrl": { + "type": "string" + } + }, + "description": "This contains details about the triggered webhook" + }, + "ResponseDTONGProcessWebhookResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NGProcessWebhookResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ApprovalInstanceDetailsDTO": { + "type": "object" + }, + "ApprovalInstanceResponse": { + "required": [ + "details", + "id", + "status", + "type" + ], + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "HarnessApproval", + "JiraApproval", + "CustomApproval", + "ServiceNowApproval" + ] + }, + "status": { + "type": "string", + "enum": [ + "WAITING", + "APPROVED", + "REJECTED", + "FAILED", + "ABORTED", + "EXPIRED" + ] + }, + "deadline": { + "type": "integer", + "format": "int64" + }, + "details": { + "$ref": "#/components/schemas/ApprovalInstanceDetailsDTO" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "errorMessage": { + "type": "string" + } + }, + "description": "This contains details of Approval Instance response" + }, + "ApprovalServiceAccount": { + "required": [ + "identifier" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the ServiceAccount." + } + }, + "description": "Service Account details used in Approvals." + }, + "ApprovalUserGroup": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "identifier": { + "type": "string", + "description": "Identifier of the UserGroup." + }, + "name": { + "type": "string", + "description": "Name of the UserGroup." + } + }, + "description": "User Group details used in Approvals." + }, + "ApproverInput": { + "required": [ + "name", + "value" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "description": "Custom data to capture at the time of approval" + }, + "ApproverInputInfo": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "defaultValue": { + "type": "string" + }, + "regex": { + "type": "string" + }, + "allowedValues": { + "type": "array", + "items": { + "type": "string" + } + }, + "selectOneFrom": { + "type": "array", + "items": { + "type": "string" + } + }, + "required": { + "type": "boolean" + }, + "description": { + "type": "string" + } + }, + "description": "This contains details of Approver Inputs" + }, + "Approvers": { + "type": "object", + "properties": { + "userGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "serviceAccounts": { + "type": "array", + "items": { + "type": "string" + } + }, + "disallowedUserEmails": { + "type": "array", + "items": { + "type": "string" + } + }, + "minimumCount": { + "type": "integer", + "format": "int32" + }, + "disallowPipelineExecutor": { + "type": "boolean" + } + }, + "description": "This contains details of the Approvers" + }, + "Auto Approval": { + "required": [ + "action", + "scheduledDeadline" + ], + "type": "object", + "properties": { + "scheduledDeadline": { + "$ref": "#/components/schemas/Scheduled Approval" + }, + "action": { + "type": "string", + "enum": [ + "APPROVE" + ] + }, + "comments": { + "type": "string" + } + }, + "description": "This contains details of the Auto Approval" + }, + "Condition": { + "required": [ + "key", + "operator", + "value" + ], + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + }, + "operator": { + "type": "string", + "enum": [ + "equals", + "not equals", + "in", + "not in" + ] + } + }, + "description": "This contains details of the Condition entity in Harness" + }, + "CriteriaSpecDTO": { + "type": "object" + }, + "CriteriaSpecWrapper": { + "required": [ + "spec", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Jexl", + "KeyValues" + ] + }, + "spec": { + "$ref": "#/components/schemas/CriteriaSpecDTO" + } + }, + "description": "This contains details of Criteria Specifications such as Criteria Type" + }, + "HarnessApprovalActivity": { + "required": [ + "action", + "user" + ], + "type": "object", + "properties": { + "user": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "action": { + "type": "string", + "enum": [ + "APPROVE", + "REJECT" + ] + }, + "approverInputs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApproverInput" + } + }, + "comments": { + "type": "string" + }, + "approvedAt": { + "type": "integer", + "format": "int64" + } + } + }, + "HarnessApprovalInstanceDetails": { + "required": [ + "approvers" + ], + "type": "object", + "description": "This contains details of Harness Approval Instance", + "allOf": [ + { + "$ref": "#/components/schemas/ApprovalInstanceDetailsDTO" + }, + { + "type": "object", + "properties": { + "approvalMessage": { + "type": "string" + }, + "includePipelineExecutionHistory": { + "type": "boolean" + }, + "approvers": { + "$ref": "#/components/schemas/Approvers" + }, + "approvalActivities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessApprovalActivity" + } + }, + "autoApprovalParams": { + "$ref": "#/components/schemas/Auto Approval" + }, + "approverInputs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApproverInputInfo" + } + }, + "validatedApprovalUserGroups": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApprovalUserGroup" + } + }, + "validatedApprovalServiceAccounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApprovalServiceAccount" + } + }, + "isAutoRejectEnabled": { + "type": "boolean", + "writeOnly": true + }, + "autoRejectEnabled": { + "type": "boolean" + } + } + } + ] + }, + "JexlCriteriaSpec": { + "required": [ + "expression" + ], + "type": "object", + "description": "This contains details of the Jexl Criteria", + "allOf": [ + { + "$ref": "#/components/schemas/CriteriaSpecDTO" + }, + { + "type": "object", + "properties": { + "expression": { + "type": "string" + } + } + } + ] + }, + "JiraApprovalInstanceDetails": { + "required": [ + "approvalCriteria", + "connectorRef", + "issue", + "rejectionCriteria" + ], + "type": "object", + "description": "This contains details of Jira Approval Instance", + "allOf": [ + { + "$ref": "#/components/schemas/ApprovalInstanceDetailsDTO" + }, + { + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "issue": { + "$ref": "#/components/schemas/JiraIssueKeyNG" + }, + "approvalCriteria": { + "$ref": "#/components/schemas/CriteriaSpecWrapper" + }, + "rejectionCriteria": { + "$ref": "#/components/schemas/CriteriaSpecWrapper" + }, + "retryInterval": { + "type": "string" + }, + "latestDelegateTaskId": { + "type": "string" + }, + "delegateTaskName": { + "type": "string" + } + } + } + ] + }, + "JiraIssueKeyNG": { + "required": [ + "key", + "url" + ], + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "key": { + "type": "string" + }, + "ticketFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "KeyValuesCriteriaSpec": { + "required": [ + "conditions" + ], + "type": "object", + "description": "This contains details of Key-Value Criteria specifications", + "allOf": [ + { + "$ref": "#/components/schemas/CriteriaSpecDTO" + }, + { + "type": "object", + "properties": { + "matchAnyCondition": { + "type": "boolean" + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Condition" + } + } + } + } + ] + }, + "ResponseDTOApprovalInstanceResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ApprovalInstanceResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Scheduled Approval": { + "required": [ + "time", + "timeZone" + ], + "type": "object", + "properties": { + "timeZone": { + "type": "string" + }, + "time": { + "type": "string" + } + }, + "description": "This contains details of the Scheduled Approval" + }, + "ServiceNowApprovalInstanceDetails": { + "required": [ + "approvalCriteria", + "connectorRef", + "ticket" + ], + "type": "object", + "description": "This contains details of ServiceNow Approval Instance", + "allOf": [ + { + "$ref": "#/components/schemas/ApprovalInstanceDetailsDTO" + }, + { + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "ticket": { + "$ref": "#/components/schemas/ServiceNowTicketKeyNG" + }, + "approvalCriteria": { + "$ref": "#/components/schemas/CriteriaSpecWrapper" + }, + "rejectionCriteria": { + "$ref": "#/components/schemas/CriteriaSpecWrapper" + }, + "changeWindowSpec": { + "$ref": "#/components/schemas/ServiceNowChangeWindowSpec" + }, + "retryInterval": { + "type": "string" + }, + "latestDelegateTaskId": { + "type": "string" + }, + "delegateTaskName": { + "type": "string" + } + } + } + ] + }, + "ServiceNowChangeWindowSpec": { + "required": [ + "endField", + "startField" + ], + "type": "object", + "properties": { + "startField": { + "type": "string" + }, + "endField": { + "type": "string" + } + }, + "description": "This contains details of the ServiceNow ChangeWindow" + }, + "ServiceNowTicketKeyNG": { + "required": [ + "key", + "ticketType", + "url" + ], + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "key": { + "type": "string" + }, + "ticketType": { + "type": "string" + }, + "ticketFields": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "HarnessApprovalActivityRequest": { + "required": [ + "action" + ], + "type": "object", + "properties": { + "action": { + "type": "string", + "description": "Approval activity action", + "enum": [ + "APPROVE", + "REJECT" + ] + }, + "approverInputs": { + "type": "array", + "description": "Custom data to capture at the time of approval", + "items": { + "$ref": "#/components/schemas/ApproverInput" + } + }, + "comments": { + "type": "string", + "description": "Approval activity with the comment" + }, + "autoApprove": { + "type": "boolean" + } + }, + "description": "Details of approval activity requested" + }, + "DashboardPipelineExecution": { + "type": "object", + "properties": { + "pipelineExecutionInfoList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelineExecution" + } + } + }, + "description": "This is the view of the Pipeline Executions for given Time Interval presented in day wise format" + }, + "PipelineCount": { + "type": "object", + "properties": { + "total": { + "type": "integer", + "format": "int64" + }, + "success": { + "type": "integer", + "format": "int64" + }, + "failure": { + "type": "integer", + "format": "int64" + }, + "expired": { + "type": "integer", + "format": "int64" + }, + "aborted": { + "type": "integer", + "format": "int64" + } + }, + "description": "This is the view of the Pipeline Execution Count Info for a particular Date" + }, + "PipelineExecution": { + "type": "object", + "properties": { + "date": { + "type": "integer", + "format": "int64" + }, + "count": { + "$ref": "#/components/schemas/PipelineCount" + } + }, + "description": "This is the view of the Pipeline Executions for a particular Date" + }, + "ResponseDTODashboardPipelineExecution": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/DashboardPipelineExecution" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RestResponseInteger": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "integer", + "format": "int32" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "PipelineEntityGitDetails": { + "type": "object", + "properties": { + "valid": { + "type": "boolean", + "description": "Indicates if the Entity is valid" + }, + "invalidYaml": { + "type": "string", + "description": "This has the Git File content if the entity is invalid" + } + }, + "description": "This contains Validity Details of the Entity" + }, + "PipelineInputSetError": { + "type": "object", + "properties": { + "fieldName": { + "type": "string", + "description": "Name of the field that has the error" + }, + "message": { + "type": "string", + "description": "Error message for this field" + }, + "identifierOfErrorSource": { + "type": "string", + "description": "Identifier of the Input Set from which this field is from" + } + }, + "description": "This contains the error details for a field while saving an Input Set" + }, + "InputSetErrorWrapper": { + "type": "object", + "properties": { + "errorPipelineYaml": { + "type": "string", + "description": "If an Input Set save fails, this field contains the error fields, with the field values replaced with a UUID" + }, + "uuidToErrorResponseMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/InputSetErrorWrapper" + }, + "description": "If an Input Set save fails, this field contains the map from FQN to why that FQN threw an error" + }, + "invalidInputSetReferences": { + "type": "array", + "description": "List of Input Sets that are invalid", + "items": { + "type": "string", + "description": "List of Input Sets that are invalid" + } + }, + "type": { + "type": "string" + } + }, + "description": "This contains the error response if the Input Set save failed" + }, + "InputSetResponse": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "pipelineIdentifier": { + "type": "string", + "description": "Pipeline Identifier for the entity." + }, + "identifier": { + "type": "string", + "description": "Input Set Identifier" + }, + "inputSetYaml": { + "type": "string", + "description": "Input Set YAML" + }, + "name": { + "type": "string", + "description": "Input Set Name" + }, + "description": { + "type": "string", + "description": "Input Set description" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Input Set tags" + }, + "description": "Input Set tags" + }, + "isOutdated": { + "type": "boolean", + "writeOnly": true + }, + "isErrorResponse": { + "type": "boolean", + "writeOnly": true + }, + "inputSetErrorWrapper": { + "$ref": "#/components/schemas/InputSetErrorWrapper" + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "outdated": { + "type": "boolean" + }, + "errorResponse": { + "type": "boolean" + } + }, + "description": "This contains Input Set details." + }, + "ResponseDTOInputSetResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InputSetResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "OverlayInputSetResponse": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "pipelineIdentifier": { + "type": "string", + "description": "Pipeline Identifier for the entity." + }, + "identifier": { + "type": "string", + "description": "Input Set Identifier" + }, + "name": { + "type": "string", + "description": "Input Set Name" + }, + "description": { + "type": "string", + "description": "Input Set description" + }, + "inputSetReferences": { + "type": "array", + "description": "Input Set References in the Overlay Input Set", + "items": { + "type": "string", + "description": "Input Set References in the Overlay Input Set" + } + }, + "overlayInputSetYaml": { + "type": "string", + "description": "Overlay Input Set YAML" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Input Set tags" + }, + "description": "Input Set tags" + }, + "isOutdated": { + "type": "boolean", + "writeOnly": true + }, + "isErrorResponse": { + "type": "boolean", + "writeOnly": true + }, + "invalidInputSetReferences": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "This contains the invalid references in the Overlay Input Set, along with a message why they are invalid" + }, + "description": "This contains the invalid references in the Overlay Input Set, along with a message why they are invalid" + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "outdated": { + "type": "boolean" + }, + "errorResponse": { + "type": "boolean" + } + }, + "description": "This contains Overlay Input Set details." + }, + "ResponseDTOOverlayInputSetResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/OverlayInputSetResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "InputSetListResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Input Set Identifier" + }, + "name": { + "type": "string", + "description": "Input Set Name" + }, + "pipelineIdentifier": { + "type": "string", + "description": "Pipeline Identifier for the entity." + }, + "inputSetIdWithPipelineId": { + "type": "string", + "description": "InputSet Identifier prefixed with Pipeline Identifier." + }, + "description": { + "type": "string", + "description": "Input Set description" + }, + "inputSetType": { + "type": "string", + "description": "Type of Input Set. The default value is ALL.", + "enum": [ + "INPUT_SET", + "OVERLAY_INPUT_SET" + ] + } + }, + "description": "This is the response of InputSet list call." + }, + "PageResponseInputSetListResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputSetListResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseInputSetListResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseInputSetListResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "BatchInputSetsAPIRequest": { + "required": [ + "pipelineIdentifiers" + ], + "type": "object", + "properties": { + "pipelineIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "BulkInputSetsAPIResponse": { + "type": "object", + "properties": { + "inputSets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputSetSummaryResponse" + } + } + } + }, + "InputSetSummaryResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Input Set Identifier" + }, + "name": { + "type": "string", + "description": "Input Set Name" + }, + "pipelineIdentifier": { + "type": "string", + "description": "Pipeline Identifier for the entity." + }, + "description": { + "type": "string", + "description": "Input Set description" + }, + "inputSetType": { + "type": "string", + "description": "Type of Input Set. The default value is ALL.", + "enum": [ + "INPUT_SET", + "OVERLAY_INPUT_SET" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Input Set tags" + }, + "description": "Input Set tags" + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "isOutdated": { + "type": "boolean", + "description": "This field is true if a Pipeline update has made this Input Set invalid, and cannot be used for Pipeline Execution" + }, + "inputSetErrorDetails": { + "$ref": "#/components/schemas/InputSetErrorWrapper" + }, + "overlaySetErrorDetails": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "This contains the invalid references in the Overlay Input Set, along with a message why they are invalid" + }, + "description": "This contains the invalid references in the Overlay Input Set, along with a message why they are invalid" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "modules": { + "uniqueItems": true, + "type": "array", + "description": "Modules in which the Pipeline belongs", + "items": { + "type": "string", + "description": "Modules in which the Pipeline belongs" + } + } + }, + "description": "This is the view of the Input Set Summary." + }, + "ResponseDTOBulkInputSetsAPIResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/BulkInputSetsAPIResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "BulkInputSetsAPIRequest": { + "required": [ + "inputSetIdentifiers" + ], + "type": "object", + "properties": { + "inputSetIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "EntityInputsMetadata": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "entityType": { + "type": "string" + }, + "inputsMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputsMetadata" + } + } + }, + "description": "Metadata for runtime input for Entities." + }, + "InputSetTemplateWithReplacedExpressionsResponse": { + "type": "object", + "properties": { + "inputSetTemplateYaml": { + "type": "string", + "description": "Runtime Input template for the Pipeline" + }, + "replacedExpressions": { + "type": "array", + "description": "List of Expressions that need to be replaced for running selected Stages. Empty if the full Pipeline is being run or no expressions need to be replaced", + "items": { + "type": "string", + "description": "List of Expressions that need to be replaced for running selected Stages. Empty if the full Pipeline is being run or no expressions need to be replaced" + } + }, + "modules": { + "uniqueItems": true, + "type": "array", + "description": "Modules in which the Pipeline belongs", + "items": { + "type": "string", + "description": "Modules in which the Pipeline belongs" + } + }, + "hasInputSets": { + "type": "boolean", + "description": "Tells whether there are any Input Sets for this Pipeline or not." + }, + "replacedExpressionsPerStage": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "inputsMetadata": { + "type": "array", + "description": "Metadata for runtime input for Entities.", + "items": { + "$ref": "#/components/schemas/EntityInputsMetadata" + } + } + }, + "description": "This is the Runtime Input Template for a Pipeline defined in Harness." + }, + "InputsMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/InputsMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserInputsMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "required": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ParserInputsMetadata": { + "type": "object" + }, + "ResponseDTOInputSetTemplateWithReplacedExpressionsResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InputSetTemplateWithReplacedExpressionsResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EntityWithGitInfo": { + "required": [ + "ref" + ], + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "branch": { + "type": "string" + } + }, + "description": "Map of Service identifiers with their gitBranch for which the Runtime Input Metadata is needed" + }, + "InputSetTemplateRequest": { + "type": "object", + "properties": { + "stageIdentifiers": { + "type": "array", + "description": "List of Stage identifiers for which the Runtime Input template is needed", + "items": { + "type": "string", + "description": "List of Stage identifiers for which the Runtime Input template is needed" + } + }, + "serviceWithGitInfoList": { + "type": "array", + "description": "Map of Service identifiers with their gitBranch for which the Runtime Input Metadata is needed", + "items": { + "$ref": "#/components/schemas/EntityWithGitInfo" + } + } + }, + "description": "Contains Stage Identifiers to filter Runtime Input Template." + }, + "PageResponseInputSetSummaryResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputSetSummaryResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseInputSetSummaryResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseInputSetSummaryResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "InputSetGitUpdateResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of updated input-set" + } + }, + "description": "Contains info about input-set that is updated." + }, + "ResponseDTOInputSetGitUpdateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InputSetGitUpdateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PipelineGovernanceMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "message": { + "type": "string" + }, + "id": { + "type": "string" + }, + "type": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "initialized": { + "type": "boolean" + }, + "status": { + "type": "string" + }, + "action": { + "type": "string" + }, + "entity": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PipelineGovernanceMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserGovernanceMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "deny": { + "type": "boolean" + }, + "detailsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelinePolicySetMetadata" + } + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "detailsCount": { + "type": "integer", + "format": "int32" + }, + "detailsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelinePolicySetMetadataOrBuilder" + } + }, + "entityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "actionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PipelineSaveResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/PipelineGovernanceMetadata" + }, + "publicAccessResponse": { + "$ref": "#/components/schemas/PublicAccessResponse" + } + }, + "description": "Contains the Pipeline details for the given Pipeline ID" + }, + "PipelinePolicyMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "severity": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "status": { + "type": "string" + }, + "error": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PipelinePolicyMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicyMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyId": { + "type": "string" + }, + "policyName": { + "type": "string" + }, + "policyNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "denyMessagesList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "denyMessagesCount": { + "type": "integer", + "format": "int32" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "updated": { + "type": "integer", + "format": "int64" + }, + "errorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PipelinePolicySetMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PipelinePolicySetMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicySetMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "deny": { + "type": "boolean" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelinePolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policySetId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PipelinePolicySetMetadataOrBuilder": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "deny": { + "type": "boolean" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelinePolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policySetId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "PublicAccessResponse": { + "type": "object", + "properties": { + "isPublic": { + "type": "boolean", + "writeOnly": true + }, + "errorMessage": { + "type": "string" + }, + "public": { + "type": "boolean" + } + } + }, + "ResponseDTOPipelineSaveResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PipelineSaveResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ExecutionSummaryInfo": { + "type": "object", + "properties": { + "numOfErrors": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "deployments": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "lastExecutionTs": { + "type": "integer", + "format": "int64" + }, + "lastExecutionStatus": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "lastExecutionId": { + "type": "string" + } + }, + "description": "This is the view of the Execution Summary" + }, + "PMSPipelineSummaryResponse": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "version": { + "type": "integer", + "format": "int64" + }, + "numOfStages": { + "type": "integer", + "format": "int32" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "modules": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "executionSummaryInfo": { + "$ref": "#/components/schemas/ExecutionSummaryInfo" + }, + "filters": { + "type": "object", + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "stageNames": { + "type": "array", + "items": { + "type": "string" + } + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "storeType": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + }, + "connectorRef": { + "type": "string" + }, + "isDraft": { + "type": "boolean" + }, + "yamlVersion": { + "type": "string" + }, + "isInlineHCEntity": { + "type": "boolean" + } + }, + "description": "This is the view of the Pipeline Summary for Pipeline entity defined in Harness." + }, + "PagePMSPipelineSummaryResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PMSPipelineSummaryResponse" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPagePMSPipelineSummaryResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PagePMSPipelineSummaryResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Document": { + "type": "object", + "properties": { + "empty": { + "type": "boolean" + } + }, + "additionalProperties": { + "type": "object", + "description": "These are the Module Properties on which the filter will be applied." + }, + "description": "These are the Module Properties on which the filter will be applied." + }, + "PipelineFilterProperties": { + "required": [ + "filterType" + ], + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "description": "This specifies the corresponding Entity of the filter.", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + }, + "pipelineTags": { + "type": "array", + "description": "This is the list of the Pipeline Tags on which the filter will be applied.", + "items": { + "$ref": "#/components/schemas/NGTag" + } + }, + "pipelineIdentifiers": { + "type": "array", + "description": "This is the list of the Pipeline Identifiers on which the filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of the Pipeline Identifiers on which the filter will be applied." + } + }, + "name": { + "type": "string", + "description": "This is the Pipeline Name on which the filter will be applied." + }, + "description": { + "type": "string", + "description": "This is the Pipeline Description on which the filter will be applied." + }, + "moduleProperties": { + "type": "object", + "properties": { + "empty": { + "type": "boolean" + } + }, + "additionalProperties": { + "type": "object", + "description": "These are the Module Properties on which the filter will be applied." + }, + "description": "These are the Module Properties on which the filter will be applied." + }, + "repoName": { + "type": "string", + "description": "This is the Pipeline repo filter on which the filter will be applied." + } + }, + "description": "Properties of the Pipelines Filter defined in Harness" + }, + "CacheResponseMetadata": { + "required": [ + "cacheState", + "isSyncEnabled", + "lastUpdatedAt", + "ttlLeft" + ], + "type": "object", + "properties": { + "cacheState": { + "type": "string", + "enum": [ + "VALID_CACHE", + "STALE_CACHE", + "UNKNOWN" + ] + }, + "ttlLeft": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "isSyncEnabled": { + "type": "boolean" + } + }, + "description": "This tells the state of the cache from which the template was fetched." + }, + "ErrorNodeSummary": { + "type": "object", + "properties": { + "nodeInfo": { + "$ref": "#/components/schemas/PipelineNodeInfo" + }, + "templateInfo": { + "$ref": "#/components/schemas/TemplateInfo" + }, + "templateResponse": { + "$ref": "#/components/schemas/PipelineTemplateResponse" + }, + "childrenErrorNodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ErrorNodeSummary" + } + } + } + }, + "NodeErrorInfo": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "type": { + "type": "string" + }, + "name": { + "type": "string" + }, + "fqn": { + "type": "string" + } + } + }, + "PipelineNodeInfo": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "localFqn": { + "type": "string" + } + } + }, + "PMSPipelineResponse": { + "type": "object", + "properties": { + "yamlPipeline": { + "type": "string" + }, + "resolvedTemplatesPipelineYaml": { + "type": "string", + "description": "Pipeline YAML after resolving templates" + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "modules": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "governanceMetadata": { + "$ref": "#/components/schemas/PipelineGovernanceMetadata" + }, + "yamlSchemaErrorWrapper": { + "$ref": "#/components/schemas/YamlSchemaErrorWrapperDTO" + }, + "validateTemplateInputsResponse": { + "$ref": "#/components/schemas/ValidateTemplateInputsResponseDTO" + }, + "cacheResponse": { + "$ref": "#/components/schemas/CacheResponseMetadata" + }, + "validationUuid": { + "type": "string" + }, + "storeType": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + }, + "publicAccessResponse": { + "$ref": "#/components/schemas/PublicAccessResponse" + }, + "connectorRef": { + "type": "string" + }, + "allowDynamicExecutions": { + "type": "boolean" + }, + "isInlineHCEntity": { + "type": "boolean" + } + }, + "description": "This contains pipeline yaml with the version." + }, + "ResponseDTOPMSPipelineResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PMSPipelineResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TemplateInfo": { + "type": "object", + "properties": { + "templateIdentifier": { + "type": "string" + }, + "versionLabel": { + "type": "string" + }, + "templateEntityType": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager", + "ArtifactSource", + "StepGroup", + "Workspace", + "Notification" + ] + } + } + }, + "PipelineTemplateResponse": { + "required": [ + "accountId", + "identifier", + "name", + "yaml" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "yaml": { + "type": "string" + }, + "mergedYaml": { + "type": "string" + }, + "versionLabel": { + "type": "string" + }, + "isStableTemplate": { + "type": "boolean", + "writeOnly": true + }, + "templateEntityType": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager", + "ArtifactSource", + "StepGroup", + "Workspace", + "Notification" + ] + }, + "childType": { + "type": "string" + }, + "templateScope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + }, + "version": { + "type": "integer", + "format": "int64" + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "storeType": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + }, + "connectorRef": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "cacheResponseMetadata": { + "$ref": "#/components/schemas/CacheResponseMetadata" + }, + "yamlVersion": { + "type": "string" + }, + "bulkReconcileUUID": { + "type": "string" + }, + "hasInsert": { + "type": "boolean" + }, + "isInlineHCEntity": { + "type": "boolean" + }, + "stableTemplate": { + "type": "boolean" + } + }, + "description": "This contains details of the Template Response" + }, + "ValidateTemplateInputsResponseDTO": { + "type": "object", + "properties": { + "validYaml": { + "type": "boolean" + }, + "errorNodeSummary": { + "$ref": "#/components/schemas/TemplateErrorNodeSummary" + }, + "type": { + "type": "string" + } + } + }, + "YamlSchemaErrorDTO": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "messageWithFQN": { + "type": "string" + }, + "stageInfo": { + "$ref": "#/components/schemas/NodeErrorInfo" + }, + "stepInfo": { + "$ref": "#/components/schemas/NodeErrorInfo" + }, + "fqn": { + "type": "string" + }, + "hintMessage": { + "type": "string" + } + } + }, + "YamlSchemaErrorWrapperDTO": { + "type": "object", + "properties": { + "schemaErrors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/YamlSchemaErrorDTO" + } + }, + "type": { + "type": "string" + } + } + }, + "ResponseDTOPMSPipelineSummaryResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PMSPipelineSummaryResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PipelineImportRequest": { + "type": "object", + "properties": { + "pipelineName": { + "type": "string", + "description": "Expected Name of the Pipeline to be imported" + }, + "pipelineDescription": { + "type": "string", + "description": "Expected Description of the Pipeline to be imported" + }, + "version": { + "type": "string", + "description": "YAML Version of the Pipeline" + } + }, + "description": "Contains basic information required to be linked with imported Pipeline YAML" + }, + "PMSGitUpdateResponse": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of updated pipeline" + } + }, + "description": "Contains info about pipeline that is updated." + }, + "ResponseDTOPMSGitUpdateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PMSGitUpdateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AbortedBy": { + "type": "object", + "properties": { + "email": { + "type": "string", + "description": "Email id of the user who aborted the pipeline" + }, + "userName": { + "type": "string", + "description": "User name of the user who aborted the pipeline" + }, + "createdAt": { + "type": "integer", + "description": "Timestamp when user aborted the pipeline", + "format": "int64" + } + }, + "description": "This contains info of the user who aborted the pipeline" + }, + "AdviserIssuer": { + "required": [ + "adviseType" + ], + "type": "object", + "properties": { + "adviseType": { + "type": "string", + "enum": [ + "UNKNOWN", + "NEXT_STEP", + "RETRY", + "INTERVENTION_WAIT", + "END_PLAN", + "MARK_SUCCESS", + "IGNORE_FAILURE", + "PROCEED_WITH_DEFAULT", + "MARK_AS_FAILURE", + "UNRECOGNIZED" + ] + } + } + }, + "AsyncChainExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "chainEnd": { + "type": "boolean" + }, + "passThroughData": { + "$ref": "#/components/schemas/ByteString" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "callbackIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "status": { + "type": "string", + "enum": [ + "NO_OP", + "RUNNING", + "INTERVENTION_WAITING", + "TIMED_WAITING", + "ASYNC_WAITING", + "TASK_WAITING", + "DISCONTINUING", + "PAUSING", + "QUEUED", + "SKIPPED", + "PAUSED", + "ABORTED", + "ERRORED", + "FAILED", + "EXPIRED", + "SUSPENDED", + "SUCCEEDED", + "IGNORE_FAILED", + "APPROVAL_WAITING", + "RESOURCE_WAITING", + "APPROVAL_REJECTED", + "INPUT_WAITING", + "WAIT_STEP_RUNNING", + "FREEZE_FAILED", + "QUEUED_LICENSE_LIMIT_REACHED", + "QUEUED_EXECUTION_CONCURRENCY_REACHED", + "QUEUED_STEP_LIMIT_REACHED", + "STARTING_QUEUED_STEP", + "UPLOAD_WAITING", + "QUEUED_PLAN_CREATION", + "STARTING_PLAN_CREATION", + "UNRECOGNIZED" + ] + }, + "timeout": { + "type": "integer", + "format": "int32" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/AsyncChainExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserAsyncChainExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "statusValue": { + "type": "integer", + "format": "int32" + }, + "callbackIdsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "callbackId": { + "type": "string" + }, + "callbackIdsCount": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "AsyncChainExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "chainEnd": { + "type": "boolean" + }, + "passThroughData": { + "$ref": "#/components/schemas/ByteString" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "callbackIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "status": { + "type": "string", + "enum": [ + "NO_OP", + "RUNNING", + "INTERVENTION_WAITING", + "TIMED_WAITING", + "ASYNC_WAITING", + "TASK_WAITING", + "DISCONTINUING", + "PAUSING", + "QUEUED", + "SKIPPED", + "PAUSED", + "ABORTED", + "ERRORED", + "FAILED", + "EXPIRED", + "SUSPENDED", + "SUCCEEDED", + "IGNORE_FAILED", + "APPROVAL_WAITING", + "RESOURCE_WAITING", + "APPROVAL_REJECTED", + "INPUT_WAITING", + "WAIT_STEP_RUNNING", + "FREEZE_FAILED", + "QUEUED_LICENSE_LIMIT_REACHED", + "QUEUED_EXECUTION_CONCURRENCY_REACHED", + "QUEUED_STEP_LIMIT_REACHED", + "STARTING_QUEUED_STEP", + "UPLOAD_WAITING", + "QUEUED_PLAN_CREATION", + "STARTING_PLAN_CREATION", + "UNRECOGNIZED" + ] + }, + "timeout": { + "type": "integer", + "format": "int32" + }, + "statusValue": { + "type": "integer", + "format": "int32" + }, + "callbackIdsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "callbackId": { + "type": "string" + }, + "callbackIdsCount": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "AsyncExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "initialized": { + "type": "boolean" + }, + "status": { + "type": "string", + "enum": [ + "NO_OP", + "RUNNING", + "INTERVENTION_WAITING", + "TIMED_WAITING", + "ASYNC_WAITING", + "TASK_WAITING", + "DISCONTINUING", + "PAUSING", + "QUEUED", + "SKIPPED", + "PAUSED", + "ABORTED", + "ERRORED", + "FAILED", + "EXPIRED", + "SUSPENDED", + "SUCCEEDED", + "IGNORE_FAILED", + "APPROVAL_WAITING", + "RESOURCE_WAITING", + "APPROVAL_REJECTED", + "INPUT_WAITING", + "WAIT_STEP_RUNNING", + "FREEZE_FAILED", + "QUEUED_LICENSE_LIMIT_REACHED", + "QUEUED_EXECUTION_CONCURRENCY_REACHED", + "QUEUED_STEP_LIMIT_REACHED", + "STARTING_QUEUED_STEP", + "UPLOAD_WAITING", + "QUEUED_PLAN_CREATION", + "STARTING_PLAN_CREATION", + "UNRECOGNIZED" + ] + }, + "timeout": { + "type": "integer", + "format": "int64" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/AsyncExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserAsyncExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "statusValue": { + "type": "integer", + "format": "int32" + }, + "callbackIdsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "callbackIdsCount": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "AsyncExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "status": { + "type": "string", + "enum": [ + "NO_OP", + "RUNNING", + "INTERVENTION_WAITING", + "TIMED_WAITING", + "ASYNC_WAITING", + "TASK_WAITING", + "DISCONTINUING", + "PAUSING", + "QUEUED", + "SKIPPED", + "PAUSED", + "ABORTED", + "ERRORED", + "FAILED", + "EXPIRED", + "SUSPENDED", + "SUCCEEDED", + "IGNORE_FAILED", + "APPROVAL_WAITING", + "RESOURCE_WAITING", + "APPROVAL_REJECTED", + "INPUT_WAITING", + "WAIT_STEP_RUNNING", + "FREEZE_FAILED", + "QUEUED_LICENSE_LIMIT_REACHED", + "QUEUED_EXECUTION_CONCURRENCY_REACHED", + "QUEUED_STEP_LIMIT_REACHED", + "STARTING_QUEUED_STEP", + "UPLOAD_WAITING", + "QUEUED_PLAN_CREATION", + "STARTING_PLAN_CREATION", + "UNRECOGNIZED" + ] + }, + "timeout": { + "type": "integer", + "format": "int64" + }, + "statusValue": { + "type": "integer", + "format": "int32" + }, + "callbackIdsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "callbackIdsCount": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "BuildInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "imagePathBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "buildBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "imagePath": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "build": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/BuildInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserBuildInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "BuildInfoOrBuilder": { + "type": "object", + "properties": { + "imagePathBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "buildBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "imagePath": { + "type": "string" + }, + "build": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Child": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "strategyMetadataOrBuilder": { + "$ref": "#/components/schemas/StrategyMetadataOrBuilder" + }, + "childNodeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Child" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserChild" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "childNodeId": { + "type": "string" + }, + "strategyMetadata": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ChildChainExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "passThroughData": { + "$ref": "#/components/schemas/ByteString" + }, + "lastLink": { + "type": "boolean" + }, + "suspend": { + "type": "boolean" + }, + "nextChildIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "previousChildId": { + "type": "string" + }, + "previousChildIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nextChildId": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ChildChainExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserChildChainExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ChildChainExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "passThroughData": { + "$ref": "#/components/schemas/ByteString" + }, + "lastLink": { + "type": "boolean" + }, + "suspend": { + "type": "boolean" + }, + "nextChildIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "previousChildId": { + "type": "string" + }, + "previousChildIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nextChildId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ChildExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "childNodeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ChildExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserChildExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "childNodeId": { + "type": "string" + }, + "skip": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ChildExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "childNodeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "childNodeId": { + "type": "string" + }, + "skip": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ChildExecutionDetail": { + "type": "object", + "properties": { + "pipelineExecutionSummary": { + "$ref": "#/components/schemas/PipelineExecutionSummary" + }, + "executionGraph": { + "$ref": "#/components/schemas/ExecutionGraph" + } + }, + "description": "This contains the Pipeline Execution details of Child Pipeline" + }, + "ChildOrBuilder": { + "type": "object", + "properties": { + "strategyMetadataOrBuilder": { + "$ref": "#/components/schemas/StrategyMetadataOrBuilder" + }, + "childNodeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "childNodeId": { + "type": "string" + }, + "strategyMetadata": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ChildrenExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "childrenList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Child" + } + }, + "logKeysList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "childrenCount": { + "type": "integer", + "format": "int32" + }, + "childrenOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ChildOrBuilder" + } + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ChildrenExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserChildrenExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "maxConcurrency": { + "type": "integer", + "format": "int64" + }, + "shouldProceedIfFailed": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ChildrenExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "childrenList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Child" + } + }, + "logKeysList": { + "type": "array", + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "childrenCount": { + "type": "integer", + "format": "int32" + }, + "childrenOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ChildOrBuilder" + } + }, + "maxConcurrency": { + "type": "integer", + "format": "int64" + }, + "shouldProceedIfFailed": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "DelegateInfo": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "taskId": { + "type": "string" + }, + "taskName": { + "type": "string" + } + } + }, + "EdgeLayoutList": { + "type": "object", + "properties": { + "currentNodeChildren": { + "type": "array", + "items": { + "type": "string" + } + }, + "nextIds": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "description": "This contains info about the Layout of the Graph" + }, + "ExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "child": { + "$ref": "#/components/schemas/ChildExecutableResponse" + }, + "children": { + "$ref": "#/components/schemas/ChildrenExecutableResponse" + }, + "initialized": { + "type": "boolean" + }, + "task": { + "$ref": "#/components/schemas/TaskExecutableResponse" + }, + "async": { + "$ref": "#/components/schemas/AsyncExecutableResponse" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "childOrBuilder": { + "$ref": "#/components/schemas/ChildExecutableResponseOrBuilder" + }, + "childrenOrBuilder": { + "$ref": "#/components/schemas/ChildrenExecutableResponseOrBuilder" + }, + "childChain": { + "$ref": "#/components/schemas/ChildChainExecutableResponse" + }, + "childChainOrBuilder": { + "$ref": "#/components/schemas/ChildChainExecutableResponseOrBuilder" + }, + "taskOrBuilder": { + "$ref": "#/components/schemas/TaskExecutableResponseOrBuilder" + }, + "taskChain": { + "$ref": "#/components/schemas/TaskChainExecutableResponse" + }, + "taskChainOrBuilder": { + "$ref": "#/components/schemas/TaskChainExecutableResponseOrBuilder" + }, + "sync": { + "$ref": "#/components/schemas/SyncExecutableResponse" + }, + "syncOrBuilder": { + "$ref": "#/components/schemas/SyncExecutableResponseOrBuilder" + }, + "skipTask": { + "$ref": "#/components/schemas/SkipTaskExecutableResponse" + }, + "skipTaskOrBuilder": { + "$ref": "#/components/schemas/SkipTaskExecutableResponseOrBuilder" + }, + "asyncChain": { + "$ref": "#/components/schemas/AsyncChainExecutableResponse" + }, + "asyncChainOrBuilder": { + "$ref": "#/components/schemas/AsyncChainExecutableResponseOrBuilder" + }, + "responseCase": { + "type": "string", + "enum": [ + "ASYNC", + "CHILD", + "CHILDREN", + "CHILDCHAIN", + "TASK", + "TASKCHAIN", + "SYNC", + "SKIPTASK", + "ASYNCCHAIN", + "RESPONSE_NOT_SET" + ] + }, + "asyncOrBuilder": { + "$ref": "#/components/schemas/AsyncExecutableResponseOrBuilder" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExecutionErrorInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "message": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExecutionErrorInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExecutionErrorInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExecutionGraph": { + "type": "object", + "properties": { + "rootNodeId": { + "type": "string" + }, + "nodeMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/ExecutionNode" + } + }, + "nodeAdjacencyListMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/ExecutionNodeAdjacencyList" + } + }, + "executionMetadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "representationStrategy": { + "type": "string", + "enum": [ + "camelCase" + ] + } + } + }, + "ExecutionNode": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "setupId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "baseFqn": { + "type": "string" + }, + "outcomes": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/OrchestrationMap" + } + }, + "stepParameters": { + "$ref": "#/components/schemas/OrchestrationMap" + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "stepType": { + "type": "string" + }, + "status": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "failureInfo": { + "$ref": "#/components/schemas/FailureInfoDTO" + }, + "skipInfo": { + "$ref": "#/components/schemas/SkipInfo" + }, + "nodeRunInfo": { + "$ref": "#/components/schemas/NodeRunInfo" + }, + "retryNodeMetadata": { + "$ref": "#/components/schemas/RetryNodeMetadata" + }, + "executableResponses": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExecutableResponse" + } + }, + "unitProgresses": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UnitProgress" + } + }, + "progressData": { + "$ref": "#/components/schemas/OrchestrationMap" + }, + "delegateInfoList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DelegateInfo" + } + }, + "interruptHistories": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InterruptEffectDTO" + } + }, + "stepDetails": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/OrchestrationMap" + } + }, + "strategyMetadata": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "executionInputConfigured": { + "type": "boolean" + }, + "logBaseKey": { + "type": "string" + } + } + }, + "ExecutionNodeAdjacencyList": { + "type": "object", + "properties": { + "children": { + "type": "array", + "items": { + "type": "string" + } + }, + "nextIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ExecutionTriggerInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExecutionTriggerInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExecutionTriggerInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "triggerType": { + "type": "string", + "enum": [ + "NOOP", + "MANUAL", + "WEBHOOK", + "WEBHOOK_CUSTOM", + "SCHEDULER_CRON", + "ARTIFACT", + "MANIFEST", + "UNRECOGNIZED" + ] + }, + "triggeredBy": { + "$ref": "#/components/schemas/TriggeredBy" + }, + "triggeredByOrBuilder": { + "$ref": "#/components/schemas/TriggeredByOrBuilder" + }, + "isRerun": { + "type": "boolean" + }, + "rerunInfo": { + "$ref": "#/components/schemas/RerunInfo" + }, + "rerunInfoOrBuilder": { + "$ref": "#/components/schemas/RerunInfoOrBuilder" + }, + "buildInfo": { + "$ref": "#/components/schemas/BuildInfo" + }, + "buildInfoOrBuilder": { + "$ref": "#/components/schemas/BuildInfoOrBuilder" + }, + "triggerTypeValue": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExpressionBlock": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "expressionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "expressionValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "count": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "expression": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExpressionBlock" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExpressionBlock" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "expressionValue": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExpressionBlockOrBuilder": { + "type": "object", + "properties": { + "expressionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "expressionValueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "count": { + "type": "integer", + "format": "int32" + }, + "expression": { + "type": "string" + }, + "expressionValue": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FailureInfoDTO": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "failureTypeList": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EXPIRED", + "DELEGATE_PROVISIONING", + "CONNECTIVITY", + "AUTHENTICATION", + "VERIFICATION_FAILURE", + "APPLICATION_ERROR", + "AUTHORIZATION_ERROR", + "TIMEOUT_ERROR", + "POLICY_EVALUATION_FAILURE", + "INPUT_TIMEOUT_FAILURE", + "APPROVAL_REJECTION", + "DELEGATE_RESTART", + "USER_MARKED_FAILURE" + ] + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "ForMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "partitionCount": { + "type": "integer", + "format": "int32" + }, + "value": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ForMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserForMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "valueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "partitionList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ForMetadataOrBuilder": { + "type": "object", + "properties": { + "partitionCount": { + "type": "integer", + "format": "int32" + }, + "value": { + "type": "string" + }, + "valueBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "partitionList": { + "type": "array", + "items": { + "type": "string" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "GraphLayoutNode": { + "type": "object", + "properties": { + "nodeType": { + "type": "string" + }, + "nodeGroup": { + "type": "string" + }, + "nodeIdentifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "nodeUuid": { + "type": "string" + }, + "status": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "module": { + "type": "string" + }, + "moduleInfo": { + "type": "object", + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "edgeLayoutList": { + "$ref": "#/components/schemas/EdgeLayoutList" + }, + "skipInfo": { + "$ref": "#/components/schemas/SkipInfo" + }, + "nodeRunInfo": { + "$ref": "#/components/schemas/NodeRunInfo" + }, + "barrierFound": { + "type": "boolean" + }, + "failureInfo": { + "$ref": "#/components/schemas/ExecutionErrorInfo" + }, + "failureInfoDTO": { + "$ref": "#/components/schemas/FailureInfoDTO" + }, + "stepDetails": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/PmsStepDetails" + } + }, + "hidden": { + "type": "boolean" + }, + "nodeExecutionId": { + "type": "string" + }, + "strategyMetadata": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "executionInputConfigured": { + "type": "boolean" + }, + "isRollbackStageNode": { + "type": "boolean" + } + }, + "description": "This is the view of the Graph for execution of the Pipeline." + }, + "InterruptConfig": { + "required": [ + "issuedBy" + ], + "type": "object", + "properties": { + "issuedBy": { + "$ref": "#/components/schemas/IssuedBy" + }, + "retryInterruptConfig": { + "$ref": "#/components/schemas/RetryInterruptConfig" + } + } + }, + "InterruptEffectDTO": { + "required": [ + "interruptConfig", + "interruptId", + "interruptType", + "tookEffectAt" + ], + "type": "object", + "properties": { + "interruptId": { + "type": "string" + }, + "tookEffectAt": { + "type": "integer", + "format": "int64" + }, + "interruptType": { + "type": "string", + "enum": [ + "UNKNOWN", + "ABORT", + "ABORT_ALL", + "PAUSE", + "PAUSE_ALL", + "RESUME", + "RESUME_ALL", + "RETRY", + "IGNORE", + "WAITING_FOR_MANUAL_INTERVENTION", + "MARK_FAILED", + "MARK_SUCCESS", + "NEXT_STEP", + "END_EXECUTION", + "MARK_EXPIRED", + "CUSTOM_FAILURE", + "EXPIRE_ALL", + "PROCEED_WITH_DEFAULT", + "USER_MARKED_FAIL_ALL", + "UNRECOGNIZED" + ] + }, + "interruptConfig": { + "$ref": "#/components/schemas/InterruptConfig" + } + } + }, + "IssuedBy": { + "required": [ + "issueTime" + ], + "type": "object", + "properties": { + "issueTime": { + "type": "integer", + "format": "int64" + }, + "manualIssuer": { + "$ref": "#/components/schemas/ManualIssuer" + }, + "adviserIssuer": { + "$ref": "#/components/schemas/AdviserIssuer" + }, + "timeoutIssuer": { + "$ref": "#/components/schemas/TimeoutIssuer" + }, + "triggerIssuer": { + "$ref": "#/components/schemas/TriggerIssuer" + }, + "systemIssuer": { + "$ref": "#/components/schemas/SystemIssuer" + } + } + }, + "ManualIssuer": { + "required": [ + "email_id", + "identifier", + "type", + "user_id" + ], + "type": "object", + "properties": { + "email_id": { + "type": "string" + }, + "user_id": { + "type": "string" + }, + "type": { + "type": "string" + }, + "identifier": { + "type": "string" + } + } + }, + "MatrixMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "matrixKeysToSkipInNameCount": { + "type": "integer", + "format": "int32" + }, + "matrixKeysToSkipInNameList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "matrixValuesCount": { + "type": "integer", + "format": "int32" + }, + "matrixValues": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "matrixCombinationList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "matrixCombinationCount": { + "type": "integer", + "format": "int32" + }, + "subType": { + "type": "string" + }, + "subTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nodeNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nodeName": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/MatrixMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserMatrixMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "matrixValuesMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "MatrixMetadataOrBuilder": { + "type": "object", + "properties": { + "matrixKeysToSkipInNameCount": { + "type": "integer", + "format": "int32" + }, + "matrixKeysToSkipInNameList": { + "type": "array", + "items": { + "type": "string" + } + }, + "matrixValuesCount": { + "type": "integer", + "format": "int32" + }, + "matrixValues": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "matrixCombinationList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "matrixCombinationCount": { + "type": "integer", + "format": "int32" + }, + "subType": { + "type": "string" + }, + "subTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nodeNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nodeName": { + "type": "string" + }, + "matrixValuesMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "NGLabel": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "NodeRunInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/NodeRunInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserNodeRunInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "evaluatedCondition": { + "type": "boolean" + }, + "expressionsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExpressionBlockOrBuilder" + } + }, + "whenConditionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "expressionsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExpressionBlock" + } + }, + "expressionsCount": { + "type": "integer", + "format": "int32" + }, + "whenCondition": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "OrchestrationMap": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "ParserAsyncChainExecutableResponse": { + "type": "object" + }, + "ParserAsyncExecutableResponse": { + "type": "object" + }, + "ParserBuildInfo": { + "type": "object" + }, + "ParserChild": { + "type": "object" + }, + "ParserChildChainExecutableResponse": { + "type": "object" + }, + "ParserChildExecutableResponse": { + "type": "object" + }, + "ParserChildrenExecutableResponse": { + "type": "object" + }, + "ParserExecutableResponse": { + "type": "object" + }, + "ParserExecutionErrorInfo": { + "type": "object" + }, + "ParserExecutionTriggerInfo": { + "type": "object" + }, + "ParserExpressionBlock": { + "type": "object" + }, + "ParserForMetadata": { + "type": "object" + }, + "ParserMatrixMetadata": { + "type": "object" + }, + "ParserNodeRunInfo": { + "type": "object" + }, + "ParserPipelineStageInfo": { + "type": "object" + }, + "ParserRerunInfo": { + "type": "object" + }, + "ParserSkipInfo": { + "type": "object" + }, + "ParserSkipTaskExecutableResponse": { + "type": "object" + }, + "ParserStrategyMetadata": { + "type": "object" + }, + "ParserSyncExecutableResponse": { + "type": "object" + }, + "ParserTaskChainExecutableResponse": { + "type": "object" + }, + "ParserTaskExecutableResponse": { + "type": "object" + }, + "ParserTriggeredBy": { + "type": "object" + }, + "ParserUnitProgress": { + "type": "object" + }, + "PipelineExecutionDetail": { + "type": "object", + "properties": { + "pipelineExecutionSummary": { + "$ref": "#/components/schemas/PipelineExecutionSummary" + }, + "executionGraph": { + "$ref": "#/components/schemas/ExecutionGraph" + }, + "childGraph": { + "$ref": "#/components/schemas/ChildExecutionDetail" + } + }, + "description": "This contains the Pipeline Execution details." + }, + "PipelineExecutionSummary": { + "required": [ + "orgIdentifier", + "projectIdentifier" + ], + "type": "object", + "properties": { + "pipelineIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "yamlVersion": { + "type": "string" + }, + "status": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGTag" + } + }, + "labels": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NGLabel" + } + }, + "executionTriggerInfo": { + "$ref": "#/components/schemas/ExecutionTriggerInfo" + }, + "executionErrorInfo": { + "$ref": "#/components/schemas/ExecutionErrorInfo" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/PipelineGovernanceMetadata" + }, + "failureInfo": { + "$ref": "#/components/schemas/FailureInfoDTO" + }, + "retryExecutionMetadata": { + "$ref": "#/components/schemas/RetryExecutionMetadata" + }, + "moduleInfo": { + "type": "object", + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + }, + "layoutNodeMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/GraphLayoutNode" + } + }, + "modules": { + "type": "array", + "items": { + "type": "string" + } + }, + "startingNodeId": { + "type": "string" + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "canRetry": { + "type": "boolean" + }, + "canReExecute": { + "type": "boolean" + }, + "showRetryHistory": { + "type": "boolean" + }, + "isRetriedExecution": { + "type": "boolean", + "writeOnly": true + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "successfulStagesCount": { + "type": "integer", + "format": "int64" + }, + "runningStagesCount": { + "type": "integer", + "format": "int64" + }, + "failedStagesCount": { + "type": "integer", + "format": "int64" + }, + "totalStagesCount": { + "type": "integer", + "format": "int64" + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + }, + "storeType": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + }, + "connectorRef": { + "type": "string" + }, + "executionInputConfigured": { + "type": "boolean" + }, + "isStagesExecution": { + "type": "boolean", + "writeOnly": true + }, + "parentStageInfo": { + "$ref": "#/components/schemas/PipelineStageInfo" + }, + "stagesExecuted": { + "type": "array", + "items": { + "type": "string" + } + }, + "stagesExecutedNames": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "allowStageExecutions": { + "type": "boolean" + }, + "abortedBy": { + "$ref": "#/components/schemas/AbortedBy" + }, + "executionMode": { + "type": "string", + "enum": [ + "UNDEFINED_MODE", + "NORMAL", + "POST_EXECUTION_ROLLBACK", + "PIPELINE_ROLLBACK", + "UNRECOGNIZED" + ] + }, + "notesExistForPlanExecutionId": { + "type": "boolean" + }, + "shouldUseSimplifiedKey": { + "type": "boolean" + }, + "isDynamicExecution": { + "type": "boolean", + "writeOnly": true + }, + "isOriginalYamlUsedOnRerun": { + "type": "boolean", + "writeOnly": true + }, + "inputSetIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "queuedType": { + "type": "string", + "enum": [ + "MAX_CONCURRENCY_REACHED", + "MAX_CONCURRENCY_NOT_REACHED", + "PRIORITY_CONCURRENCY_REACHED" + ] + }, + "queuedReason": { + "type": "string" + }, + "stagesExecution": { + "type": "boolean" + }, + "retriedExecution": { + "type": "boolean" + }, + "dynamicExecution": { + "type": "boolean" + }, + "originalYamlUsedOnRerun": { + "type": "boolean" + } + }, + "description": "This is the view of the Pipeline Execution Summary" + }, + "PipelineStageInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "stageNodeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "executionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pipelineNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PipelineStageInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPipelineStageInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pipelineName": { + "type": "string" + }, + "hasParentPipeline": { + "type": "boolean" + }, + "stageNodeId": { + "type": "string" + }, + "executionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PmsStepDetails": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "RerunInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "rootTriggerType": { + "type": "string", + "enum": [ + "NOOP", + "MANUAL", + "WEBHOOK", + "WEBHOOK_CUSTOM", + "SCHEDULER_CRON", + "ARTIFACT", + "MANIFEST", + "UNRECOGNIZED" + ] + }, + "rootExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "prevExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "prevTriggerTypeValue": { + "type": "integer", + "format": "int32" + }, + "prevTriggerType": { + "type": "string", + "enum": [ + "NOOP", + "MANUAL", + "WEBHOOK", + "WEBHOOK_CUSTOM", + "SCHEDULER_CRON", + "ARTIFACT", + "MANIFEST", + "UNRECOGNIZED" + ] + }, + "rootTriggerTypeValue": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/RerunInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserRerunInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "rootExecutionId": { + "type": "string" + }, + "prevExecutionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "RerunInfoOrBuilder": { + "type": "object", + "properties": { + "rootTriggerType": { + "type": "string", + "enum": [ + "NOOP", + "MANUAL", + "WEBHOOK", + "WEBHOOK_CUSTOM", + "SCHEDULER_CRON", + "ARTIFACT", + "MANIFEST", + "UNRECOGNIZED" + ] + }, + "rootExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "prevExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "prevTriggerTypeValue": { + "type": "integer", + "format": "int32" + }, + "prevTriggerType": { + "type": "string", + "enum": [ + "NOOP", + "MANUAL", + "WEBHOOK", + "WEBHOOK_CUSTOM", + "SCHEDULER_CRON", + "ARTIFACT", + "MANIFEST", + "UNRECOGNIZED" + ] + }, + "rootTriggerTypeValue": { + "type": "integer", + "format": "int32" + }, + "rootExecutionId": { + "type": "string" + }, + "prevExecutionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ResponseDTOPipelineExecutionDetail": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PipelineExecutionDetail" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RetryExecutionMetadata": { + "type": "object", + "properties": { + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "executedBy": { + "$ref": "#/components/schemas/ExecutionTriggerInfo" + }, + "parentExecutionId": { + "type": "string" + }, + "rootExecutionId": { + "type": "string" + } + }, + "description": "This gives the Parent and Root execution id of the Execution part of Retried Execution" + }, + "RetryInterruptConfig": { + "required": [ + "retryId" + ], + "type": "object", + "properties": { + "retryId": { + "type": "string" + } + } + }, + "RetryNodeMetadata": { + "type": "object", + "properties": { + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "originalPlanExecutionId": { + "type": "string" + }, + "executedBy": { + "$ref": "#/components/schemas/ExecutionTriggerInfo" + } + } + }, + "SkipInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/SkipInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserSkipInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "skipConditionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "evaluatedCondition": { + "type": "boolean" + }, + "skipCondition": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "SkipTaskExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "message": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/SkipTaskExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserSkipTaskExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "SkipTaskExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "StrategyMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "forMetadataOrBuilder": { + "$ref": "#/components/schemas/ForMetadataOrBuilder" + }, + "identifierPostFixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "metadataCase": { + "type": "string", + "enum": [ + "MATRIXMETADATA", + "FORMETADATA", + "METADATA_NOT_SET" + ] + }, + "matrixMetadataOrBuilder": { + "$ref": "#/components/schemas/MatrixMetadataOrBuilder" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserStrategyMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "currentIteration": { + "type": "integer", + "format": "int32" + }, + "totalIterations": { + "type": "integer", + "format": "int32" + }, + "matrixMetadata": { + "$ref": "#/components/schemas/MatrixMetadata" + }, + "forMetadata": { + "$ref": "#/components/schemas/ForMetadata" + }, + "identifierPostFix": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "StrategyMetadataOrBuilder": { + "type": "object", + "properties": { + "forMetadataOrBuilder": { + "$ref": "#/components/schemas/ForMetadataOrBuilder" + }, + "identifierPostFixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "metadataCase": { + "type": "string", + "enum": [ + "MATRIXMETADATA", + "FORMETADATA", + "METADATA_NOT_SET" + ] + }, + "matrixMetadataOrBuilder": { + "$ref": "#/components/schemas/MatrixMetadataOrBuilder" + }, + "currentIteration": { + "type": "integer", + "format": "int32" + }, + "totalIterations": { + "type": "integer", + "format": "int32" + }, + "matrixMetadata": { + "$ref": "#/components/schemas/MatrixMetadata" + }, + "forMetadata": { + "$ref": "#/components/schemas/ForMetadata" + }, + "identifierPostFix": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "SyncExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/SyncExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserSyncExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "SyncExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "SystemIssuer": { + "type": "object", + "properties": { + "message": { + "type": "string" + } + } + }, + "TaskChainExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "taskCategory": { + "type": "string", + "enum": [ + "UNKNOWN_CATEGORY", + "DELEGATE_TASK_V1", + "DELEGATE_TASK_V2", + "UNRECOGNIZED" + ] + }, + "chainEnd": { + "type": "boolean" + }, + "passThroughData": { + "$ref": "#/components/schemas/ByteString" + }, + "taskIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "taskCategoryValue": { + "type": "integer", + "format": "int32" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "taskNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TaskChainExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTaskChainExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "taskName": { + "type": "string" + }, + "taskId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TaskChainExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "taskCategory": { + "type": "string", + "enum": [ + "UNKNOWN_CATEGORY", + "DELEGATE_TASK_V1", + "DELEGATE_TASK_V2", + "UNRECOGNIZED" + ] + }, + "chainEnd": { + "type": "boolean" + }, + "passThroughData": { + "$ref": "#/components/schemas/ByteString" + }, + "taskIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "taskCategoryValue": { + "type": "integer", + "format": "int32" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "taskNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "taskName": { + "type": "string" + }, + "taskId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "TaskExecutableResponse": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "taskCategory": { + "type": "string", + "enum": [ + "UNKNOWN_CATEGORY", + "DELEGATE_TASK_V1", + "DELEGATE_TASK_V2", + "UNRECOGNIZED" + ] + }, + "taskIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "taskCategoryValue": { + "type": "integer", + "format": "int32" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "taskNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TaskExecutableResponse" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTaskExecutableResponse" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "taskName": { + "type": "string" + }, + "taskId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TaskExecutableResponseOrBuilder": { + "type": "object", + "properties": { + "taskCategory": { + "type": "string", + "enum": [ + "UNKNOWN_CATEGORY", + "DELEGATE_TASK_V1", + "DELEGATE_TASK_V2", + "UNRECOGNIZED" + ] + }, + "taskIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "taskCategoryValue": { + "type": "integer", + "format": "int32" + }, + "unitsCount": { + "type": "integer", + "format": "int32" + }, + "logKeysList": { + "type": "array", + "items": { + "type": "string" + } + }, + "logKeysCount": { + "type": "integer", + "format": "int32" + }, + "unitsList": { + "type": "array", + "items": { + "type": "string" + } + }, + "taskNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "taskName": { + "type": "string" + }, + "taskId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "TimeoutIssuer": { + "required": [ + "timeoutInstanceId" + ], + "type": "object", + "properties": { + "timeoutInstanceId": { + "type": "string" + } + } + }, + "TriggerIssuer": { + "required": [ + "abortPrevConcurrentExecution", + "triggerRef" + ], + "type": "object", + "properties": { + "triggerRef": { + "type": "string" + }, + "abortPrevConcurrentExecution": { + "type": "boolean" + } + } + }, + "TriggeredBy": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TriggeredBy" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTriggeredBy" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "uuidBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "uuid": { + "type": "string" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "extraInfoCount": { + "type": "integer", + "format": "int32" + }, + "extraInfo": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "extraInfoMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "triggerIdentifier": { + "type": "string" + }, + "triggerIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "triggerName": { + "type": "string" + }, + "triggerNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TriggeredByOrBuilder": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "uuidBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "uuid": { + "type": "string" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "extraInfoCount": { + "type": "integer", + "format": "int32" + }, + "extraInfo": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "extraInfoMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "triggerIdentifier": { + "type": "string" + }, + "triggerIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "triggerName": { + "type": "string" + }, + "triggerNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "UnitProgress": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "initialized": { + "type": "boolean" + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string", + "enum": [ + "UNKNOWN", + "SUCCESS", + "FAILURE", + "RUNNING", + "QUEUED", + "SKIPPED", + "EXPIRED", + "UNRECOGNIZED" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/UnitProgress" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserUnitProgress" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "unitNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusValue": { + "type": "integer", + "format": "int32" + }, + "unitName": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ResponseDTOExecutionGraph": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ExecutionGraph" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "NodeExecutionDetails": { + "type": "object", + "properties": { + "executionGraph": { + "$ref": "#/components/schemas/ExecutionGraph" + } + }, + "description": "This contains the Node Execution Graph details." + }, + "ResponseDTONodeExecutionDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NodeExecutionDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "InputSetDetails": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier of the inputset" + }, + "name": { + "type": "string", + "description": "Name of the inputset" + } + }, + "description": "Details of an inputset used in a pipeline execution" + }, + "InputSetTemplateResponse": { + "type": "object", + "properties": { + "inputSetTemplateYaml": { + "type": "string", + "description": "Template Yaml at the time of execution" + }, + "inputSetYaml": { + "type": "string", + "description": "Input set Yaml used during execution" + }, + "inputSetDetails": { + "type": "array", + "description": "Details of inputsets used in this execution", + "items": { + "$ref": "#/components/schemas/InputSetDetails" + } + } + }, + "description": "This contains the Runtime Input YAML used during a Pipeline Execution." + }, + "ResponseDTOInputSetTemplateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InputSetTemplateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageGovernanceMetadata": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelineGovernanceMetadata" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPageGovernanceMetadata": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageGovernanceMetadata" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PagePipelineExecutionIdentifierSummary": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelineExecutionIdentifierSummary" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "PipelineExecutionIdentifierSummary": { + "required": [ + "orgIdentifier", + "projectIdentifier" + ], + "type": "object", + "properties": { + "pipelineIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "status": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "runSequence": { + "type": "integer", + "format": "int32" + } + }, + "description": "This is the view of the Pipeline Execution Identifier Summary" + }, + "ResponseDTOPagePipelineExecutionIdentifierSummary": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PagePipelineExecutionIdentifierSummary" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PagePipelineExecutionSummary": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelineExecutionSummary" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "first": { + "type": "boolean" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPagePipelineExecutionSummary": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PagePipelineExecutionSummary" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CustomPagePipelineExecutionOutline": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelineExecutionOutline" + } + }, + "currentSize": { + "type": "integer", + "format": "int32" + }, + "lastSeenExecutionId": { + "type": "string" + }, + "lastSeenStartTime": { + "type": "integer", + "format": "int64" + }, + "hasMore": { + "type": "boolean" + } + }, + "description": "This is the custom page implementation" + }, + "NodeExecutionOutline": { + "type": "object", + "properties": { + "nodeType": { + "type": "string" + }, + "nodeGroup": { + "type": "string" + }, + "nodeIdentifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "nodeUuid": { + "type": "string" + }, + "status": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "failureInfo": { + "type": "string" + }, + "nodeExecutionId": { + "type": "string" + }, + "edgeLayoutList": { + "$ref": "#/components/schemas/EdgeLayoutList" + } + }, + "description": "This is the view of the Node Execution Outline" + }, + "PipelineExecutionOutline": { + "required": [ + "accountIdentifier", + "orgIdentifier", + "projectIdentifier" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "pipelineIdentifier": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "startingNodeId": { + "type": "string" + }, + "status": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "failureInfo": { + "type": "string" + }, + "stagesMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/NodeExecutionOutline" + } + }, + "modules": { + "type": "array", + "items": { + "type": "string" + } + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "runtimeInputYaml": { + "type": "string" + }, + "runSequence": { + "type": "integer", + "format": "int32" + } + }, + "description": "This is the view of the Pipeline Execution Outline" + }, + "ResponseDTOCustomPagePipelineExecutionOutline": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CustomPagePipelineExecutionOutline" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PipelineExecutionOutlineFilterDTO": { + "type": "object", + "properties": { + "status": { + "type": "array", + "items": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + } + }, + "timeRange": { + "$ref": "#/components/schemas/TimeRange" + }, + "pipelineIdentifier": { + "type": "string" + }, + "planExecutionIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "TimeRange": { + "type": "object", + "properties": { + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "relativeTime": { + "type": "string" + }, + "timeRangeFilterType": { + "type": "string", + "description": "These are the default filters supported for specifying time range", + "enum": [ + "LAST_7_DAYS", + "LAST_30_DAYS", + "THIS_MONTH", + "THIS_YEAR", + "LAST_MONTH", + "LAST_YEAR", + "LAST_3_MONTHS", + "LAST_6_MONTHS", + "LAST_12_MONTHS", + "THIS_QUARTER", + "LAST_QUARTER" + ] + } + } + }, + "PipelineExecutionNotes": { + "type": "object", + "properties": { + "notes": { + "type": "string", + "description": "Notes of a pipeline execution" + } + }, + "description": "Notes of a pipeline execution" + }, + "ResponseDTOPipelineExecutionNotes": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PipelineExecutionNotes" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ExecutionInfo": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string", + "description": "This is the Execution Status of the entity", + "enum": [ + "Running", + "AsyncWaiting", + "TaskWaiting", + "TimedWaiting", + "Failed", + "Errored", + "IgnoreFailed", + "NotStarted", + "Expired", + "Aborted", + "Discontinuing", + "Queued", + "Paused", + "ResourceWaiting", + "InterventionWaiting", + "ApprovalWaiting", + "WaitStepRunning", + "QueuedLicenseLimitReached", + "QueuedExecutionConcurrencyReached", + "Success", + "Suspended", + "Skipped", + "Pausing", + "ApprovalRejected", + "InputWaiting", + "AbortedByFreeze", + "UploadWaiting", + "NOT_STARTED", + "INTERVENTION_WAITING", + "APPROVAL_WAITING", + "APPROVAL_REJECTED", + "Waiting", + "Queued", + "Queued", + "Queued", + "Queued" + ] + }, + "runSequence": { + "type": "integer", + "format": "int32" + } + }, + "description": "This is the view for a particular Execution in Retry History" + }, + "ResponseDTORetryHistoryResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RetryHistoryResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RetryHistoryResponse": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string" + }, + "latestExecutionId": { + "type": "string" + }, + "executionInfos": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExecutionInfo" + } + }, + "retryStagesMetadata": { + "$ref": "#/components/schemas/RetryStagesMetadata" + } + }, + "description": "This is the view of the history of Retry Failed Pipelines." + }, + "RetryStagesMetadata": { + "type": "object", + "properties": { + "retryStagesIdentifier": { + "type": "array", + "items": { + "type": "string" + } + }, + "skipStagesIdentifier": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "description": "This has lists of retried and skipped stage identifiers" + }, + "InterruptResponse": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "AbortAll", + "Abort", + "Pause", + "Resume", + "Ignore", + "StageRollback", + "PipelineRollback", + "StepGroupRollback", + "MarkAsSuccess", + "ExpireAll", + "Retry", + "MarkAsFailure", + "UserMarkedFailure" + ] + }, + "planExecutionId": { + "type": "string" + } + }, + "description": "Contains the ID and type of the interrupt issued along with the execution id." + }, + "ResponseDTOInterruptResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/InterruptResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Ambiance": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "levelsCount": { + "type": "integer", + "format": "int32" + }, + "originalStageExecutionIdForRollbackMode": { + "type": "string" + }, + "planExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "levelsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LevelOrBuilder" + } + }, + "metadataOrBuilder": { + "$ref": "#/components/schemas/ExecutionMetadataOrBuilder" + }, + "planIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "setupAbstractionsCount": { + "type": "integer", + "format": "int32" + }, + "stageExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "originalStageExecutionIdForRollbackModeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "metadata": { + "$ref": "#/components/schemas/ExecutionMetadata" + }, + "initialized": { + "type": "boolean" + }, + "expressionFunctorToken": { + "type": "integer", + "format": "int64" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Ambiance" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserAmbiance" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "planExecutionId": { + "type": "string" + }, + "setupAbstractions": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "setupAbstractionsMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "planId": { + "type": "string" + }, + "levelsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Level" + } + }, + "stageExecutionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ArtifactData": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "buildBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "initialized": { + "type": "boolean" + }, + "build": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ArtifactData" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserArtifactData" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ArtifactDataOrBuilder": { + "type": "object", + "properties": { + "metadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "metadataCount": { + "type": "integer", + "format": "int32" + }, + "buildBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "build": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "BranchHook": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "refOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "ref": { + "$ref": "#/components/schemas/Reference" + }, + "initialized": { + "type": "boolean" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/BranchHook" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserBranchHook" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "BranchHookOrBuilder": { + "type": "object", + "properties": { + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "refOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "ref": { + "$ref": "#/components/schemas/Reference" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Commit": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "link": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "author": { + "$ref": "#/components/schemas/Signature" + }, + "committer": { + "$ref": "#/components/schemas/Signature" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "authorOrBuilder": { + "$ref": "#/components/schemas/SignatureOrBuilder" + }, + "committerOrBuilder": { + "$ref": "#/components/schemas/SignatureOrBuilder" + }, + "shaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "message": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Commit" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserCommit" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "CommitOrBuilder": { + "type": "object", + "properties": { + "link": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "author": { + "$ref": "#/components/schemas/Signature" + }, + "committer": { + "$ref": "#/components/schemas/Signature" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "authorOrBuilder": { + "$ref": "#/components/schemas/SignatureOrBuilder" + }, + "committerOrBuilder": { + "$ref": "#/components/schemas/SignatureOrBuilder" + }, + "shaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "message": { + "type": "string" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ExecutionMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "principalInfo": { + "$ref": "#/components/schemas/ExecutionPrincipalInfo" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExecutionMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExecutionMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "triggerInfo": { + "$ref": "#/components/schemas/ExecutionTriggerInfo" + }, + "triggerInfoOrBuilder": { + "$ref": "#/components/schemas/ExecutionTriggerInfoOrBuilder" + }, + "pipelineIdentifier": { + "type": "string" + }, + "pipelineIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "executionUuid": { + "type": "string" + }, + "executionUuidBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "principalInfoOrBuilder": { + "$ref": "#/components/schemas/ExecutionPrincipalInfoOrBuilder" + }, + "gitSyncBranchContext": { + "$ref": "#/components/schemas/ByteString" + }, + "moduleType": { + "type": "string" + }, + "moduleTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "retryInfo": { + "$ref": "#/components/schemas/RetryExecutionInfo" + }, + "retryInfoOrBuilder": { + "$ref": "#/components/schemas/RetryExecutionInfoOrBuilder" + }, + "isNotificationConfigured": { + "type": "boolean" + }, + "pipelineStoreTypeValue": { + "type": "integer", + "format": "int32" + }, + "pipelineStoreType": { + "type": "string", + "enum": [ + "UNDEFINED", + "INLINE", + "REMOTE", + "UNRECOGNIZED" + ] + }, + "pipelineConnectorRef": { + "type": "string" + }, + "pipelineConnectorRefBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pipelineStageInfo": { + "$ref": "#/components/schemas/PipelineStageInfo" + }, + "pipelineStageInfoOrBuilder": { + "$ref": "#/components/schemas/PipelineStageInfoOrBuilder" + }, + "harnessVersion": { + "type": "string" + }, + "harnessVersionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "isDebug": { + "type": "boolean" + }, + "executionModeValue": { + "type": "integer", + "format": "int32" + }, + "executionMode": { + "type": "string", + "enum": [ + "UNDEFINED_MODE", + "NORMAL", + "POST_EXECUTION_ROLLBACK", + "PIPELINE_ROLLBACK", + "UNRECOGNIZED" + ] + }, + "originalPlanExecutionIdForRollbackMode": { + "type": "string" + }, + "originalPlanExecutionIdForRollbackModeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "settingToValueMapCount": { + "type": "integer", + "format": "int32" + }, + "settingToValueMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "settingToValueMapMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "featureFlagToValueMapCount": { + "type": "integer", + "format": "int32" + }, + "featureFlagToValueMap": { + "type": "object", + "additionalProperties": { + "type": "boolean" + } + }, + "featureFlagToValueMapMap": { + "type": "object", + "additionalProperties": { + "type": "boolean" + } + }, + "processedYamlVersion": { + "type": "string" + }, + "processedYamlVersionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "isStagesExpressionsProvided": { + "type": "boolean" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExecutionMetadataOrBuilder": { + "type": "object", + "properties": { + "principalInfo": { + "$ref": "#/components/schemas/ExecutionPrincipalInfo" + }, + "triggerInfo": { + "$ref": "#/components/schemas/ExecutionTriggerInfo" + }, + "triggerInfoOrBuilder": { + "$ref": "#/components/schemas/ExecutionTriggerInfoOrBuilder" + }, + "pipelineIdentifier": { + "type": "string" + }, + "pipelineIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "executionUuid": { + "type": "string" + }, + "executionUuidBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "principalInfoOrBuilder": { + "$ref": "#/components/schemas/ExecutionPrincipalInfoOrBuilder" + }, + "gitSyncBranchContext": { + "$ref": "#/components/schemas/ByteString" + }, + "moduleType": { + "type": "string" + }, + "moduleTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "retryInfo": { + "$ref": "#/components/schemas/RetryExecutionInfo" + }, + "retryInfoOrBuilder": { + "$ref": "#/components/schemas/RetryExecutionInfoOrBuilder" + }, + "isNotificationConfigured": { + "type": "boolean" + }, + "pipelineStoreTypeValue": { + "type": "integer", + "format": "int32" + }, + "pipelineStoreType": { + "type": "string", + "enum": [ + "UNDEFINED", + "INLINE", + "REMOTE", + "UNRECOGNIZED" + ] + }, + "pipelineConnectorRef": { + "type": "string" + }, + "pipelineConnectorRefBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pipelineStageInfo": { + "$ref": "#/components/schemas/PipelineStageInfo" + }, + "pipelineStageInfoOrBuilder": { + "$ref": "#/components/schemas/PipelineStageInfoOrBuilder" + }, + "harnessVersion": { + "type": "string" + }, + "harnessVersionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "isDebug": { + "type": "boolean" + }, + "executionModeValue": { + "type": "integer", + "format": "int32" + }, + "executionMode": { + "type": "string", + "enum": [ + "UNDEFINED_MODE", + "NORMAL", + "POST_EXECUTION_ROLLBACK", + "PIPELINE_ROLLBACK", + "UNRECOGNIZED" + ] + }, + "originalPlanExecutionIdForRollbackMode": { + "type": "string" + }, + "originalPlanExecutionIdForRollbackModeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "settingToValueMapCount": { + "type": "integer", + "format": "int32" + }, + "settingToValueMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "settingToValueMapMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "featureFlagToValueMapCount": { + "type": "integer", + "format": "int32" + }, + "featureFlagToValueMap": { + "type": "object", + "additionalProperties": { + "type": "boolean" + } + }, + "featureFlagToValueMapMap": { + "type": "object", + "additionalProperties": { + "type": "boolean" + } + }, + "processedYamlVersion": { + "type": "string" + }, + "processedYamlVersionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "isStagesExpressionsProvided": { + "type": "boolean" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ExecutionPrincipalInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ExecutionPrincipalInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserExecutionPrincipalInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "principal": { + "type": "string" + }, + "principalBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "principalTypeValue": { + "type": "integer", + "format": "int32" + }, + "principalType": { + "type": "string", + "enum": [ + "UNKNOWN", + "USER", + "USER_GROUP", + "API_KEY", + "SERVICE", + "SERVICE_ACCOUNT", + "UNRECOGNIZED" + ] + }, + "shouldValidateRbac": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ExecutionPrincipalInfoOrBuilder": { + "type": "object", + "properties": { + "principal": { + "type": "string" + }, + "principalBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "principalTypeValue": { + "type": "integer", + "format": "int32" + }, + "principalType": { + "type": "string", + "enum": [ + "UNKNOWN", + "USER", + "USER_GROUP", + "API_KEY", + "SERVICE", + "SERVICE_ACCOUNT", + "UNRECOGNIZED" + ] + }, + "shouldValidateRbac": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ExecutionTriggerInfoOrBuilder": { + "type": "object", + "properties": { + "triggerType": { + "type": "string", + "enum": [ + "NOOP", + "MANUAL", + "WEBHOOK", + "WEBHOOK_CUSTOM", + "SCHEDULER_CRON", + "ARTIFACT", + "MANIFEST", + "UNRECOGNIZED" + ] + }, + "triggeredBy": { + "$ref": "#/components/schemas/TriggeredBy" + }, + "triggeredByOrBuilder": { + "$ref": "#/components/schemas/TriggeredByOrBuilder" + }, + "isRerun": { + "type": "boolean" + }, + "rerunInfo": { + "$ref": "#/components/schemas/RerunInfo" + }, + "rerunInfoOrBuilder": { + "$ref": "#/components/schemas/RerunInfoOrBuilder" + }, + "buildInfo": { + "$ref": "#/components/schemas/BuildInfo" + }, + "buildInfoOrBuilder": { + "$ref": "#/components/schemas/BuildInfoOrBuilder" + }, + "triggerTypeValue": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FailureData": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "codeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "levelBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stepIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stageIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "failureTypeInfosList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FailureTypeInfo" + } + }, + "failureTypeInfosCount": { + "type": "integer", + "format": "int32" + }, + "failureTypeInfosOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FailureTypeInfoOrBuilder" + } + }, + "message": { + "type": "string" + }, + "level": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "code": { + "type": "string" + }, + "stepIdentifier": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FailureData" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFailureData" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "failureTypesList": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "UNKNOWN_FAILURE", + "DELEGATE_PROVISIONING_FAILURE", + "CONNECTIVITY_FAILURE", + "AUTHENTICATION_FAILURE", + "VERIFICATION_FAILURE", + "APPLICATION_FAILURE", + "AUTHORIZATION_FAILURE", + "TIMEOUT_FAILURE", + "SKIPPING_FAILURE", + "POLICY_EVALUATION_FAILURE", + "INPUT_TIMEOUT_FAILURE", + "FREEZE_ACTIVE_FAILURE", + "APPROVAL_REJECTION", + "DELEGATE_RESTART", + "USER_MARKED_FAILURE", + "UNRECOGNIZED" + ] + } + }, + "failureTypesCount": { + "type": "integer", + "format": "int32" + }, + "failureTypesValueList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stageIdentifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FailureDataOrBuilder": { + "type": "object", + "properties": { + "codeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "levelBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stepIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stageIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "failureTypeInfosList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FailureTypeInfo" + } + }, + "failureTypeInfosCount": { + "type": "integer", + "format": "int32" + }, + "failureTypeInfosOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FailureTypeInfoOrBuilder" + } + }, + "message": { + "type": "string" + }, + "level": { + "type": "string" + }, + "code": { + "type": "string" + }, + "stepIdentifier": { + "type": "string" + }, + "failureTypesList": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "UNKNOWN_FAILURE", + "DELEGATE_PROVISIONING_FAILURE", + "CONNECTIVITY_FAILURE", + "AUTHENTICATION_FAILURE", + "VERIFICATION_FAILURE", + "APPLICATION_FAILURE", + "AUTHORIZATION_FAILURE", + "TIMEOUT_FAILURE", + "SKIPPING_FAILURE", + "POLICY_EVALUATION_FAILURE", + "INPUT_TIMEOUT_FAILURE", + "FREEZE_ACTIVE_FAILURE", + "APPROVAL_REJECTION", + "DELEGATE_RESTART", + "USER_MARKED_FAILURE", + "UNRECOGNIZED" + ] + } + }, + "failureTypesCount": { + "type": "integer", + "format": "int32" + }, + "failureTypesValueList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stageIdentifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "FailureInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "errorMessage": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FailureInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFailureInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "errorMessageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "failureDataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FailureDataOrBuilder" + } + }, + "failureTypesList": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "UNKNOWN_FAILURE", + "DELEGATE_PROVISIONING_FAILURE", + "CONNECTIVITY_FAILURE", + "AUTHENTICATION_FAILURE", + "VERIFICATION_FAILURE", + "APPLICATION_FAILURE", + "AUTHORIZATION_FAILURE", + "TIMEOUT_FAILURE", + "SKIPPING_FAILURE", + "POLICY_EVALUATION_FAILURE", + "INPUT_TIMEOUT_FAILURE", + "FREEZE_ACTIVE_FAILURE", + "APPROVAL_REJECTION", + "DELEGATE_RESTART", + "USER_MARKED_FAILURE", + "UNRECOGNIZED" + ] + } + }, + "failureTypesCount": { + "type": "integer", + "format": "int32" + }, + "failureTypesValueList": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + } + }, + "failureDataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FailureData" + } + }, + "failureDataCount": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FailureTypeInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "failureType": { + "type": "string", + "enum": [ + "UNKNOWN_FAILURE", + "DELEGATE_PROVISIONING_FAILURE", + "CONNECTIVITY_FAILURE", + "AUTHENTICATION_FAILURE", + "VERIFICATION_FAILURE", + "APPLICATION_FAILURE", + "AUTHORIZATION_FAILURE", + "TIMEOUT_FAILURE", + "SKIPPING_FAILURE", + "POLICY_EVALUATION_FAILURE", + "INPUT_TIMEOUT_FAILURE", + "FREEZE_ACTIVE_FAILURE", + "APPROVAL_REJECTION", + "DELEGATE_RESTART", + "USER_MARKED_FAILURE", + "UNRECOGNIZED" + ] + }, + "failureSubTypeValue": { + "type": "integer", + "format": "int32" + }, + "failureSubType": { + "type": "string", + "enum": [ + "UNKNOWN_FAILURE_REASON", + "UNRECOGNIZED" + ] + }, + "failureTypeValue": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/FailureTypeInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserFailureTypeInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "FailureTypeInfoOrBuilder": { + "type": "object", + "properties": { + "failureType": { + "type": "string", + "enum": [ + "UNKNOWN_FAILURE", + "DELEGATE_PROVISIONING_FAILURE", + "CONNECTIVITY_FAILURE", + "AUTHENTICATION_FAILURE", + "VERIFICATION_FAILURE", + "APPLICATION_FAILURE", + "AUTHORIZATION_FAILURE", + "TIMEOUT_FAILURE", + "SKIPPING_FAILURE", + "POLICY_EVALUATION_FAILURE", + "INPUT_TIMEOUT_FAILURE", + "FREEZE_ACTIVE_FAILURE", + "APPROVAL_REJECTION", + "DELEGATE_RESTART", + "USER_MARKED_FAILURE", + "UNRECOGNIZED" + ] + }, + "failureSubTypeValue": { + "type": "integer", + "format": "int32" + }, + "failureSubType": { + "type": "string", + "enum": [ + "UNKNOWN_FAILURE_REASON", + "UNRECOGNIZED" + ] + }, + "failureTypeValue": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "HeaderConfig": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Label": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "colorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "color": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Label" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserLabel" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "LabelOrBuilder": { + "type": "object", + "properties": { + "colorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "color": { + "type": "string" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Level": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "runtimeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "originalIdentifier": { + "type": "string" + }, + "stepTypeOrBuilder": { + "$ref": "#/components/schemas/StepTypeOrBuilder" + }, + "groupBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "retryIndex": { + "type": "integer", + "format": "int32" + }, + "setupId": { + "type": "string" + }, + "setupIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nodeTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "strategyMetadataOrBuilder": { + "$ref": "#/components/schemas/StrategyMetadataOrBuilder" + }, + "originalIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "strategyInfo": { + "$ref": "#/components/schemas/StrategyInfo" + }, + "strategyInfoOrBuilder": { + "$ref": "#/components/schemas/StrategyInfoOrBuilder" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "group": { + "type": "string" + }, + "nodeType": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Level" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserLevel" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "strategyMetadata": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "stepType": { + "$ref": "#/components/schemas/StepType" + }, + "runtimeId": { + "type": "string" + }, + "skipExpressionChain": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "LevelOrBuilder": { + "type": "object", + "properties": { + "runtimeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "originalIdentifier": { + "type": "string" + }, + "stepTypeOrBuilder": { + "$ref": "#/components/schemas/StepTypeOrBuilder" + }, + "groupBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "retryIndex": { + "type": "integer", + "format": "int32" + }, + "setupId": { + "type": "string" + }, + "setupIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "nodeTypeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "strategyMetadataOrBuilder": { + "$ref": "#/components/schemas/StrategyMetadataOrBuilder" + }, + "originalIdentifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "strategyInfo": { + "$ref": "#/components/schemas/StrategyInfo" + }, + "strategyInfoOrBuilder": { + "$ref": "#/components/schemas/StrategyInfoOrBuilder" + }, + "identifier": { + "type": "string" + }, + "group": { + "type": "string" + }, + "nodeType": { + "type": "string" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "strategyMetadata": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "stepType": { + "$ref": "#/components/schemas/StepType" + }, + "runtimeId": { + "type": "string" + }, + "skipExpressionChain": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ManifestData": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "versionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "version": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ManifestData" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserManifestData" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ManifestDataOrBuilder": { + "type": "object", + "properties": { + "versionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "version": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ParsedPayload": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "payloadCase": { + "type": "string", + "enum": [ + "PR", + "PUSH", + "RELEASE", + "BRANCH", + "TAG", + "PAYLOAD_NOT_SET" + ] + }, + "pr": { + "$ref": "#/components/schemas/PullRequestHook" + }, + "push": { + "$ref": "#/components/schemas/PushHook" + }, + "release": { + "$ref": "#/components/schemas/ReleaseHook" + }, + "pushOrBuilder": { + "$ref": "#/components/schemas/PushHookOrBuilder" + }, + "branchOrBuilder": { + "$ref": "#/components/schemas/BranchHookOrBuilder" + }, + "releaseOrBuilder": { + "$ref": "#/components/schemas/ReleaseHookOrBuilder" + }, + "tagOrBuilder": { + "$ref": "#/components/schemas/TagHookOrBuilder" + }, + "prOrBuilder": { + "$ref": "#/components/schemas/PullRequestHookOrBuilder" + }, + "tag": { + "$ref": "#/components/schemas/TagHook" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ParsedPayload" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserParsedPayload" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "branch": { + "$ref": "#/components/schemas/BranchHook" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ParsedPayloadOrBuilder": { + "type": "object", + "properties": { + "payloadCase": { + "type": "string", + "enum": [ + "PR", + "PUSH", + "RELEASE", + "BRANCH", + "TAG", + "PAYLOAD_NOT_SET" + ] + }, + "pr": { + "$ref": "#/components/schemas/PullRequestHook" + }, + "push": { + "$ref": "#/components/schemas/PushHook" + }, + "release": { + "$ref": "#/components/schemas/ReleaseHook" + }, + "pushOrBuilder": { + "$ref": "#/components/schemas/PushHookOrBuilder" + }, + "branchOrBuilder": { + "$ref": "#/components/schemas/BranchHookOrBuilder" + }, + "releaseOrBuilder": { + "$ref": "#/components/schemas/ReleaseHookOrBuilder" + }, + "tagOrBuilder": { + "$ref": "#/components/schemas/TagHookOrBuilder" + }, + "prOrBuilder": { + "$ref": "#/components/schemas/PullRequestHookOrBuilder" + }, + "tag": { + "$ref": "#/components/schemas/TagHook" + }, + "branch": { + "$ref": "#/components/schemas/BranchHook" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ParserAmbiance": { + "type": "object" + }, + "ParserArtifactData": { + "type": "object" + }, + "ParserBranchHook": { + "type": "object" + }, + "ParserCommit": { + "type": "object" + }, + "ParserExecutionMetadata": { + "type": "object" + }, + "ParserExecutionPrincipalInfo": { + "type": "object" + }, + "ParserFailureData": { + "type": "object" + }, + "ParserFailureInfo": { + "type": "object" + }, + "ParserFailureTypeInfo": { + "type": "object" + }, + "ParserLabel": { + "type": "object" + }, + "ParserLevel": { + "type": "object" + }, + "ParserManifestData": { + "type": "object" + }, + "ParserParsedPayload": { + "type": "object" + }, + "ParserPerm": { + "type": "object" + }, + "ParserPostExecutionRollbackInfo": { + "type": "object" + }, + "ParserPullRequest": { + "type": "object" + }, + "ParserPullRequestHook": { + "type": "object" + }, + "ParserPushHook": { + "type": "object" + }, + "ParserReference": { + "type": "object" + }, + "ParserRelease": { + "type": "object" + }, + "ParserReleaseHook": { + "type": "object" + }, + "ParserRepository": { + "type": "object" + }, + "ParserRetryExecutionInfo": { + "type": "object" + }, + "ParserSignature": { + "type": "object" + }, + "ParserStepType": { + "type": "object" + }, + "ParserStrategyInfo": { + "type": "object" + }, + "ParserTagHook": { + "type": "object" + }, + "ParserTimestamp": { + "type": "object" + }, + "ParserTriggerPayload": { + "type": "object" + }, + "ParserUser": { + "type": "object" + }, + "Perm": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "pull": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Perm" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPerm" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PermOrBuilder": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "PipelineStageInfoOrBuilder": { + "type": "object", + "properties": { + "stageNodeIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "executionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pipelineNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifier": { + "type": "string" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pipelineName": { + "type": "string" + }, + "hasParentPipeline": { + "type": "boolean" + }, + "stageNodeId": { + "type": "string" + }, + "executionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "PlanExecution": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "planId": { + "type": "string" + }, + "setupAbstractions": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "validUntil": { + "type": "string", + "format": "date-time" + }, + "status": { + "type": "string", + "enum": [ + "NO_OP", + "RUNNING", + "INTERVENTION_WAITING", + "TIMED_WAITING", + "ASYNC_WAITING", + "TASK_WAITING", + "DISCONTINUING", + "PAUSING", + "QUEUED", + "SKIPPED", + "PAUSED", + "ABORTED", + "ERRORED", + "FAILED", + "EXPIRED", + "SUSPENDED", + "SUCCEEDED", + "IGNORE_FAILED", + "APPROVAL_WAITING", + "RESOURCE_WAITING", + "APPROVAL_REJECTED", + "INPUT_WAITING", + "WAIT_STEP_RUNNING", + "FREEZE_FAILED", + "QUEUED_LICENSE_LIMIT_REACHED", + "QUEUED_EXECUTION_CONCURRENCY_REACHED", + "QUEUED_STEP_LIMIT_REACHED", + "STARTING_QUEUED_STEP", + "UPLOAD_WAITING", + "QUEUED_PLAN_CREATION", + "STARTING_PLAN_CREATION", + "UNRECOGNIZED" + ] + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + }, + "metadata": { + "$ref": "#/components/schemas/ExecutionMetadata" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/PipelineGovernanceMetadata" + }, + "triggerHeader": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HeaderConfig" + } + }, + "triggerJsonPayload": { + "type": "string" + }, + "expressionFunctorToken": { + "type": "integer", + "format": "int64" + }, + "triggerPayload": { + "$ref": "#/components/schemas/TriggerPayload" + }, + "stageExpressionValuesMap": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "stagesExecutionMetadata": { + "$ref": "#/components/schemas/StagesExecutionMetadata" + }, + "processedYaml": { + "type": "string" + }, + "postExecutionRollbackInfos": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PostExecutionRollbackInfo" + } + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "version": { + "type": "integer", + "format": "int64" + }, + "nextIteration": { + "type": "integer", + "format": "int64" + }, + "ambiance": { + "$ref": "#/components/schemas/Ambiance" + }, + "failureInfo": { + "$ref": "#/components/schemas/FailureInfo" + }, + "priorityType": { + "type": "string", + "enum": [ + "HIGH", + "LOW", + "NORMAL" + ] + }, + "nodeType": { + "type": "string", + "enum": [ + "PLAN", + "PLAN_NODE", + "IDENTITY_PLAN_NODE" + ] + }, + "nodeId": { + "type": "string" + } + } + }, + "PlanExecutionResponse": { + "type": "object", + "properties": { + "planExecution": { + "$ref": "#/components/schemas/PlanExecution" + }, + "gitDetails": { + "$ref": "#/components/schemas/PipelineEntityGitDetails" + } + }, + "description": "This contains info about the Pipeline Execution" + }, + "PostExecutionRollbackInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "postExecutionRollbackStageId": { + "type": "string" + }, + "rollbackStageStrategyMetadata": { + "$ref": "#/components/schemas/StrategyMetadata" + }, + "postExecutionRollbackStageIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "rollbackStageStrategyMetadataOrBuilder": { + "$ref": "#/components/schemas/StrategyMetadataOrBuilder" + }, + "originalStageExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PostExecutionRollbackInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPostExecutionRollbackInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "originalStageExecutionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PullRequest": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "link": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "author": { + "$ref": "#/components/schemas/PipelineUser" + }, + "closed": { + "type": "boolean" + }, + "merged": { + "type": "boolean" + }, + "commitsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Commit" + } + }, + "commitsCount": { + "type": "integer", + "format": "int32" + }, + "commitsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommitOrBuilder" + } + }, + "refBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "updatedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "authorOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "shaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "targetBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "titleBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "bodyBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "sourceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "fork": { + "type": "string" + }, + "forkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "baseOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "headOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "labelsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Label" + } + }, + "labelsCount": { + "type": "integer", + "format": "int32" + }, + "labelsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LabelOrBuilder" + } + }, + "mergeSha": { + "type": "string" + }, + "mergeShaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "head": { + "$ref": "#/components/schemas/Reference" + }, + "target": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int64" + }, + "base": { + "$ref": "#/components/schemas/Reference" + }, + "source": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "body": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PullRequest" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPullRequest" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "updated": { + "$ref": "#/components/schemas/Timestamp" + }, + "title": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PullRequestHook": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "pr": { + "$ref": "#/components/schemas/PullRequest" + }, + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "prOrBuilder": { + "$ref": "#/components/schemas/PullRequestOrBuilder" + }, + "initialized": { + "type": "boolean" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PullRequestHook" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPullRequestHook" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PullRequestHookOrBuilder": { + "type": "object", + "properties": { + "pr": { + "$ref": "#/components/schemas/PullRequest" + }, + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "prOrBuilder": { + "$ref": "#/components/schemas/PullRequestOrBuilder" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "PullRequestOrBuilder": { + "type": "object", + "properties": { + "link": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "author": { + "$ref": "#/components/schemas/PipelineUser" + }, + "closed": { + "type": "boolean" + }, + "merged": { + "type": "boolean" + }, + "commitsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Commit" + } + }, + "commitsCount": { + "type": "integer", + "format": "int32" + }, + "commitsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommitOrBuilder" + } + }, + "refBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "updatedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "authorOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "shaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "targetBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "titleBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "bodyBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "sourceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "fork": { + "type": "string" + }, + "forkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "baseOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "headOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "labelsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Label" + } + }, + "labelsCount": { + "type": "integer", + "format": "int32" + }, + "labelsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LabelOrBuilder" + } + }, + "mergeSha": { + "type": "string" + }, + "mergeShaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "head": { + "$ref": "#/components/schemas/Reference" + }, + "target": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "number": { + "type": "integer", + "format": "int64" + }, + "base": { + "$ref": "#/components/schemas/Reference" + }, + "source": { + "type": "string" + }, + "body": { + "type": "string" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "updated": { + "$ref": "#/components/schemas/Timestamp" + }, + "title": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "PushHook": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "after": { + "type": "string" + }, + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "commit": { + "$ref": "#/components/schemas/Commit" + }, + "commitsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Commit" + } + }, + "before": { + "type": "string" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "commitsCount": { + "type": "integer", + "format": "int32" + }, + "commitsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommitOrBuilder" + } + }, + "refBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "baseRef": { + "type": "string" + }, + "baseRefBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "beforeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "afterBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "commitOrBuilder": { + "$ref": "#/components/schemas/CommitOrBuilder" + }, + "ref": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PushHook" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPushHook" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PushHookOrBuilder": { + "type": "object", + "properties": { + "after": { + "type": "string" + }, + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "commit": { + "$ref": "#/components/schemas/Commit" + }, + "commitsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Commit" + } + }, + "before": { + "type": "string" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "commitsCount": { + "type": "integer", + "format": "int32" + }, + "commitsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommitOrBuilder" + } + }, + "refBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "baseRef": { + "type": "string" + }, + "baseRefBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "beforeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "afterBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "commitOrBuilder": { + "$ref": "#/components/schemas/CommitOrBuilder" + }, + "ref": { + "type": "string" + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Reference": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "sha": { + "type": "string" + }, + "shaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pathBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Reference" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserReference" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ReferenceOrBuilder": { + "type": "object", + "properties": { + "sha": { + "type": "string" + }, + "shaBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "pathBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Release": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "prerelease": { + "type": "boolean" + }, + "tagBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "published": { + "$ref": "#/components/schemas/Timestamp" + }, + "publishedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "link": { + "type": "string" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "titleBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "draft": { + "type": "boolean" + }, + "tag": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "description": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Release" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserRelease" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "title": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ReleaseHook": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "release": { + "$ref": "#/components/schemas/Release" + }, + "releaseOrBuilder": { + "$ref": "#/components/schemas/ReleaseOrBuilder" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/ReleaseHook" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserReleaseHook" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "ReleaseHookOrBuilder": { + "type": "object", + "properties": { + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "release": { + "$ref": "#/components/schemas/Release" + }, + "releaseOrBuilder": { + "$ref": "#/components/schemas/ReleaseOrBuilder" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ReleaseOrBuilder": { + "type": "object", + "properties": { + "prerelease": { + "type": "boolean" + }, + "tagBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "published": { + "$ref": "#/components/schemas/Timestamp" + }, + "publishedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "link": { + "type": "string" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "titleBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "draft": { + "type": "boolean" + }, + "tag": { + "type": "string" + }, + "description": { + "type": "string" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "title": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Repository": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "link": { + "type": "string" + }, + "clone": { + "type": "string" + }, + "cloneSsh": { + "type": "string" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "updatedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "perm": { + "$ref": "#/components/schemas/Perm" + }, + "permOrBuilder": { + "$ref": "#/components/schemas/PermOrBuilder" + }, + "branchBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "cloneBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "cloneSshBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "namespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "private": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "id": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "namespace": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Repository" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserRepository" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "updated": { + "$ref": "#/components/schemas/Timestamp" + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "branch": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "RepositoryOrBuilder": { + "type": "object", + "properties": { + "link": { + "type": "string" + }, + "clone": { + "type": "string" + }, + "cloneSsh": { + "type": "string" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "updatedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "perm": { + "$ref": "#/components/schemas/Perm" + }, + "permOrBuilder": { + "$ref": "#/components/schemas/PermOrBuilder" + }, + "branchBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "cloneBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "cloneSshBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "linkBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "namespaceBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "private": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "id": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "updated": { + "$ref": "#/components/schemas/Timestamp" + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "branch": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ResponseDTOPlanExecutionResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PlanExecutionResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RetryExecutionInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "rootExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "parentRetryId": { + "type": "string" + }, + "parentRetryIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/RetryExecutionInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserRetryExecutionInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "isRetry": { + "type": "boolean" + }, + "rootExecutionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "RetryExecutionInfoOrBuilder": { + "type": "object", + "properties": { + "rootExecutionIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "parentRetryId": { + "type": "string" + }, + "parentRetryIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "isRetry": { + "type": "boolean" + }, + "rootExecutionId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Signature": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "dateOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "login": { + "type": "string" + }, + "avatar": { + "type": "string" + }, + "emailBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "avatarBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "loginBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "date": { + "$ref": "#/components/schemas/Timestamp" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Signature" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserSignature" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "email": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "SignatureOrBuilder": { + "type": "object", + "properties": { + "dateOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "login": { + "type": "string" + }, + "avatar": { + "type": "string" + }, + "emailBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "avatarBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "loginBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "date": { + "$ref": "#/components/schemas/Timestamp" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "email": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "StagesExecutionMetadata": { + "type": "object", + "properties": { + "isStagesExecution": { + "type": "boolean", + "writeOnly": true + }, + "fullPipelineYaml": { + "type": "string" + }, + "stageIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "expressionValues": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "stageIdentifierToNameMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "stagesExecution": { + "type": "boolean" + } + } + }, + "StepType": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "type": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/StepType" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserStepType" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stepCategoryValue": { + "type": "integer", + "format": "int32" + }, + "stepCategory": { + "type": "string", + "enum": [ + "UNKNOWN", + "PIPELINE", + "STAGE", + "STEP", + "STAGES", + "FORK", + "STEP_GROUP", + "STRATEGY", + "INSERT", + "UNRECOGNIZED" + ] + }, + "subCategoryValue": { + "type": "integer", + "format": "int32" + }, + "subCategory": { + "type": "string", + "enum": [ + "NONE", + "STEP_LEVEL", + "STAGE_LEVEL", + "UNRECOGNIZED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "StepTypeOrBuilder": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "stepCategoryValue": { + "type": "integer", + "format": "int32" + }, + "stepCategory": { + "type": "string", + "enum": [ + "UNKNOWN", + "PIPELINE", + "STAGE", + "STEP", + "STAGES", + "FORK", + "STEP_GROUP", + "STRATEGY", + "INSERT", + "UNRECOGNIZED" + ] + }, + "subCategoryValue": { + "type": "integer", + "format": "int32" + }, + "subCategory": { + "type": "string", + "enum": [ + "NONE", + "STEP_LEVEL", + "STAGE_LEVEL", + "UNRECOGNIZED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "StrategyInfo": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "forMetadataOrBuilder": { + "$ref": "#/components/schemas/ForMetadataOrBuilder" + }, + "identifierPostFixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "metadataCase": { + "type": "string", + "enum": [ + "FORMETADATA", + "METADATA_NOT_SET" + ] + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/StrategyInfo" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserStrategyInfo" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "currentIteration": { + "type": "integer", + "format": "int32" + }, + "totalIterations": { + "type": "integer", + "format": "int32" + }, + "forMetadata": { + "$ref": "#/components/schemas/ForMetadata" + }, + "identifierPostFix": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "StrategyInfoOrBuilder": { + "type": "object", + "properties": { + "forMetadataOrBuilder": { + "$ref": "#/components/schemas/ForMetadataOrBuilder" + }, + "identifierPostFixBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "metadataCase": { + "type": "string", + "enum": [ + "FORMETADATA", + "METADATA_NOT_SET" + ] + }, + "currentIteration": { + "type": "integer", + "format": "int32" + }, + "totalIterations": { + "type": "integer", + "format": "int32" + }, + "forMetadata": { + "$ref": "#/components/schemas/ForMetadata" + }, + "identifierPostFix": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "TagHook": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "refOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "ref": { + "$ref": "#/components/schemas/Reference" + }, + "initialized": { + "type": "boolean" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TagHook" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTagHook" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TagHookOrBuilder": { + "type": "object", + "properties": { + "sender": { + "$ref": "#/components/schemas/PipelineUser" + }, + "repoOrBuilder": { + "$ref": "#/components/schemas/RepositoryOrBuilder" + }, + "senderOrBuilder": { + "$ref": "#/components/schemas/UserOrBuilder" + }, + "actionValue": { + "type": "integer", + "format": "int32" + }, + "refOrBuilder": { + "$ref": "#/components/schemas/ReferenceOrBuilder" + }, + "ref": { + "$ref": "#/components/schemas/Reference" + }, + "action": { + "type": "string", + "enum": [ + "UNKNOWN", + "CREATE", + "UPDATE", + "DELETE", + "OPEN", + "REOPEN", + "CLOSE", + "LABEL", + "UNLABEL", + "SYNC", + "MERGE", + "EDIT", + "PUBLISH", + "UNPUBLISH", + "PRERELEASE", + "RELEASE", + "REVIEWREADY", + "UNRECOGNIZED" + ] + }, + "repo": { + "$ref": "#/components/schemas/Repository" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "Timestamp": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "seconds": { + "type": "integer", + "format": "int64" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Timestamp" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTimestamp" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "nanos": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TimestampOrBuilder": { + "type": "object", + "properties": { + "seconds": { + "type": "integer", + "format": "int64" + }, + "nanos": { + "type": "integer", + "format": "int32" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "TriggerPayload": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "changedFilesList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "headersMap": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "parsedPayload": { + "$ref": "#/components/schemas/ParsedPayload" + }, + "artifactData": { + "$ref": "#/components/schemas/ArtifactData" + }, + "manifestData": { + "$ref": "#/components/schemas/ManifestData" + }, + "typeValue": { + "type": "integer", + "format": "int32" + }, + "headersCount": { + "type": "integer", + "format": "int32" + }, + "parsedPayloadOrBuilder": { + "$ref": "#/components/schemas/ParsedPayloadOrBuilder" + }, + "sourceTypeValue": { + "type": "integer", + "format": "int32" + }, + "artifactDataOrBuilder": { + "$ref": "#/components/schemas/ArtifactDataOrBuilder" + }, + "manifestDataOrBuilder": { + "$ref": "#/components/schemas/ManifestDataOrBuilder" + }, + "connectorRefBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "imagePathBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "changedFilesCount": { + "type": "integer", + "format": "int32" + }, + "buildDataCase": { + "type": "string", + "enum": [ + "ARTIFACTDATA", + "MANIFESTDATA", + "BUILDDATA_NOT_SET" + ] + }, + "type": { + "type": "string", + "enum": [ + "CUSTOM", + "GIT", + "SCHEDULED", + "WEBHOOK", + "ARTIFACT", + "MANIFEST", + "UNRECOGNIZED" + ] + }, + "version": { + "type": "integer", + "format": "int64" + }, + "imagePath": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "headers": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TriggerPayload" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserTriggerPayload" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "connectorRef": { + "type": "string" + }, + "sourceType": { + "type": "string", + "enum": [ + "CUSTOM_REPO", + "GITHUB_REPO", + "GITLAB_REPO", + "BITBUCKET_REPO", + "AWS_CODECOMMIT_REPO", + "AZURE_REPO", + "HARNESS_REPO", + "UNRECOGNIZED" + ] + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "PipelineUser": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "login": { + "type": "string" + }, + "avatar": { + "type": "string" + }, + "emailBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "avatarBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "updatedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "loginBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "id": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/PipelineUser" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserUser" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "updated": { + "$ref": "#/components/schemas/Timestamp" + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "email": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "UserOrBuilder": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "avatar": { + "type": "string" + }, + "emailBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "avatarBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "createdOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "updatedOrBuilder": { + "$ref": "#/components/schemas/TimestampOrBuilder" + }, + "loginBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "name": { + "type": "string" + }, + "id": { + "type": "string" + }, + "nameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "$ref": "#/components/schemas/Timestamp" + }, + "updated": { + "$ref": "#/components/schemas/Timestamp" + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "email": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "MergeInputSetRequest": { + "type": "object", + "properties": { + "inputSetReferences": { + "type": "array", + "description": "List of Input Set References to be merged", + "items": { + "type": "string", + "description": "List of Input Set References to be merged" + } + }, + "withMergedPipelineYaml": { + "type": "boolean", + "description": "This is a boolean value that indicates if the response must contain the YAML for the merged Pipeline. The default value is False." + }, + "stageIdentifiers": { + "type": "array", + "description": "List of Stage Ids. Input Sets corresponding to these Ids will be merged.", + "items": { + "type": "string", + "description": "List of Stage Ids. Input Sets corresponding to these Ids will be merged." + } + }, + "lastYamlToMerge": { + "type": "string", + "description": "Runtime Input Yaml needed to be merged into the result of the merged Yaml of the inputSetReferences" + } + }, + "description": "Contains list of Input Set references and Stage Ids" + }, + "RunStageRequest": { + "type": "object", + "properties": { + "runtimeInputYaml": { + "type": "string" + }, + "stageIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "expressionValues": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Request Parameters needed to run specific Stages of a Pipeline" + }, + "ResponseDTOValidateTemplateInputsResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ValidateTemplateInputsResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AuthzError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/AuthzErrorMetadata" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "AuthzErrorMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "AccessCheckResponse": { + "type": "object", + "properties": { + "principal": { + "$ref": "#/components/schemas/AuthzPrincipal" + }, + "accessControlList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AccessControl" + } + } + } + }, + "AccessControl": { + "type": "object", + "properties": { + "permission": { + "type": "string" + }, + "resourceScope": { + "$ref": "#/components/schemas/ResourceScope" + }, + "resourceType": { + "type": "string" + }, + "resourceAttributes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "resourceIdentifier": { + "type": "string" + }, + "permitted": { + "type": "boolean" + } + } + }, + "AuthzPrincipal": { + "type": "object", + "properties": { + "scopeLevel": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "type": { + "type": "string", + "description": "Principal Type in Harness", + "enum": [ + "USER", + "USER_GROUP", + "SERVICE_ACCOUNT" + ] + }, + "uniqueId": { + "type": "string" + } + } + }, + "ResourceScope": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + } + } + }, + "ResponseDTOAccessCheckResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AccessCheckResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AccessCheckRequest": { + "required": [ + "permissions" + ], + "type": "object", + "properties": { + "permissions": { + "maxItems": 10000, + "minItems": 0, + "type": "array", + "description": "List of permission checks to perform", + "items": { + "$ref": "#/components/schemas/PermissionCheck" + } + }, + "principal": { + "$ref": "#/components/schemas/AuthzPrincipal" + } + } + }, + "PermissionCheck": { + "required": [ + "permission", + "resourceType" + ], + "type": "object", + "properties": { + "resourceScope": { + "$ref": "#/components/schemas/ResourceScope" + }, + "resourceType": { + "type": "string" + }, + "resourceAttributes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "resourceIdentifier": { + "type": "string" + }, + "permission": { + "type": "string" + } + } + }, + "AuthzPermission": { + "required": [ + "action", + "identifier", + "name", + "resourceType" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "STAGING", + "EXPERIMENTAL", + "ACTIVE", + "DEPRECATED", + "INACTIVE" + ] + }, + "includeInAllRoles": { + "type": "boolean" + }, + "allowedScopeLevels": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "resourceType": { + "type": "string" + }, + "action": { + "type": "string" + } + } + }, + "PermissionResponse": { + "required": [ + "permission" + ], + "type": "object", + "properties": { + "permission": { + "$ref": "#/components/schemas/AuthzPermission" + } + } + }, + "ResponseDTOListPermissionResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PermissionResponse" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOSetString": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AccessDeniedError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/AuthzErrorMetadata" + }, + "failedPermissionChecks": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PermissionCheck" + } + } + } + }, + "AuthzGovernanceMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "message": { + "type": "string" + }, + "id": { + "type": "string" + }, + "type": { + "type": "string" + }, + "detailsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzPolicySetMetadata" + } + }, + "detailsCount": { + "type": "integer", + "format": "int32" + }, + "detailsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzPolicySetMetadataOrBuilder" + } + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "entityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "actionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "action": { + "type": "string" + }, + "entity": { + "type": "string" + }, + "projectId": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/AuthzGovernanceMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserGovernanceMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string" + }, + "deny": { + "type": "boolean" + }, + "orgId": { + "type": "string" + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + }, + "description": "GovernanceMetadata for OPA evaluation" + }, + "AuthzPolicyMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "severity": { + "type": "string" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "denyMessagesList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "policyId": { + "type": "string" + }, + "policyName": { + "type": "string" + }, + "denyMessagesCount": { + "type": "integer", + "format": "int32" + }, + "policyIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "errorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/AuthzPolicyMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicyMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "error": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "updated": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string" + }, + "orgId": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "AuthzPolicySetMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzPolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/AuthzPolicySetMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicySetMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "initialized": { + "type": "boolean" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "created": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string" + }, + "deny": { + "type": "boolean" + }, + "orgId": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "AuthzPolicySetMetadataOrBuilder": { + "type": "object", + "properties": { + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzPolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "created": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string" + }, + "deny": { + "type": "boolean" + }, + "orgId": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ResponseDTORoleAssignmentDeleteResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RoleAssignmentDeleteResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RoleAssignmentDeleteResponseDTO": { + "type": "object", + "properties": { + "successfullyDeleted": { + "type": "integer", + "description": "Number of roleassignings that are successfully deleted.", + "format": "int32" + }, + "failedToDelete": { + "type": "integer", + "description": "Number of roleassignings that are not deleted", + "format": "int32" + }, + "roleAssignmentErrorResponseDTOList": { + "type": "array", + "description": "List of roleassignments along with error message that are not deleted.", + "items": { + "$ref": "#/components/schemas/RoleAssignmentErrorResponseDTO" + } + } + } + }, + "RoleAssignmentErrorResponseDTO": { + "type": "object", + "properties": { + "roleAssignmentId": { + "type": "string", + "description": "Identifier of roleassignment that is not deleted." + }, + "errorMessage": { + "type": "string", + "description": "Error message due to which roleassignment cannot be deleted." + }, + "governanceMetadata": { + "$ref": "#/components/schemas/AuthzGovernanceMetadata" + } + }, + "description": "List of roleassignments along with error message that are not deleted." + }, + "ResponseDTOListRoleAssignmentResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzRoleAssignmentResponse" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AuthzRoleAssignment": { + "required": [ + "principal", + "resourceGroupIdentifier", + "roleIdentifier" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "resourceGroupIdentifier": { + "type": "string" + }, + "roleIdentifier": { + "type": "string" + }, + "roleReference": { + "$ref": "#/components/schemas/AuthzRoleReference" + }, + "principal": { + "$ref": "#/components/schemas/AuthzPrincipal" + }, + "disabled": { + "type": "boolean" + }, + "managed": { + "type": "boolean" + }, + "internal": { + "type": "boolean" + } + }, + "description": "Role Assignment to validate" + }, + "AuthzRoleAssignmentResponse": { + "type": "object", + "properties": { + "roleAssignment": { + "$ref": "#/components/schemas/AuthzRoleAssignment" + }, + "scope": { + "$ref": "#/components/schemas/AuthzScope" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "harnessManaged": { + "type": "boolean" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/AuthzGovernanceMetadata" + } + } + }, + "AuthzRoleReference": { + "required": [ + "identifier", + "scopeLevel" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Unique identifier of the role" + }, + "scopeLevel": { + "type": "string", + "description": "scope level of the role. Valid values are account, organization and project." + } + } + }, + "AuthzScope": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + } + } + }, + "RoleAssignmentCreateRequest": { + "required": [ + "roleAssignments" + ], + "type": "object", + "properties": { + "roleAssignments": { + "maxItems": 100, + "minItems": 0, + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzRoleAssignment" + } + } + } + }, + "ResponseDTORoleAssignmentResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AuthzRoleAssignmentResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseRoleAssignmentResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzRoleAssignmentResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseRoleAssignmentResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseRoleAssignmentResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RoleAssignmentFilter": { + "type": "object", + "properties": { + "resourceGroupFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on resource group identifiers", + "items": { + "type": "string", + "description": "Filter role assignments based on resource group identifiers" + } + }, + "roleFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on role identifiers", + "items": { + "type": "string", + "description": "Filter role assignments based on role identifiers" + } + }, + "roleReferenceFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on roles", + "items": { + "$ref": "#/components/schemas/AuthzRoleReference" + } + }, + "principalTypeFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on principal type", + "items": { + "type": "string", + "description": "Principal Type in Harness", + "enum": [ + "USER", + "USER_GROUP", + "SERVICE_ACCOUNT" + ] + } + }, + "principalScopeLevelFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on principal scope level", + "items": { + "type": "string", + "description": "Filter role assignments based on principal scope level" + } + }, + "principalFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on principals", + "items": { + "$ref": "#/components/schemas/AuthzPrincipal" + } + }, + "harnessManagedFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on role assignments being harness managed", + "items": { + "type": "boolean", + "description": "Filter role assignments based on role assignments being harness managed" + } + }, + "disabledFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on whether they are enabled or disabled", + "items": { + "type": "boolean", + "description": "Filter role assignments based on whether they are enabled or disabled" + } + } + } + }, + "ResourceGroup": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + } + } + }, + "ResponseDTORoleAssignmentAggregateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RoleAssignmentAggregateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Role": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Unique identifier of the role" + }, + "name": { + "type": "string", + "description": "Name of the role" + }, + "permissions": { + "uniqueItems": true, + "type": "array", + "description": "List of the permission identifiers (Subset of the list returned by GET /authz/api/permissions)", + "items": { + "type": "string", + "description": "List of the permission identifiers (Subset of the list returned by GET /authz/api/permissions)" + } + }, + "allowedScopeLevels": { + "uniqueItems": true, + "type": "array", + "description": "The scope levels at which this role can be used", + "items": { + "type": "string", + "description": "The scope levels at which this role can be used", + "enum": [ + "account", + "organization", + "project" + ] + } + }, + "description": { + "type": "string", + "description": "Description of the role" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Tags" + }, + "description": "Tags" + } + } + }, + "RoleAssignmentAggregateResponse": { + "type": "object", + "properties": { + "roleAssignments": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzRoleAssignment" + } + }, + "scope": { + "$ref": "#/components/schemas/AuthzScope" + }, + "roles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuthzRoleResponse" + } + }, + "resourceGroups": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceGroup" + } + } + } + }, + "AuthzRoleResponse": { + "required": [ + "role" + ], + "type": "object", + "properties": { + "role": { + "$ref": "#/components/schemas/Role" + }, + "scope": { + "$ref": "#/components/schemas/AuthzScope" + }, + "harnessManaged": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + } + } + }, + "AttributeFilter": { + "type": "object", + "properties": { + "attributeName": { + "type": "string" + }, + "attributeValues": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "description": "Used to filter resources on their attributes" + }, + "PageResponseRoleAssignmentAggregate": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RoleAssignmentAggregate" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "PrincipalV2": { + "type": "object", + "properties": { + "scopeLevel": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "type": { + "type": "string", + "description": "Principal Type in Harness", + "enum": [ + "USER", + "USER_GROUP", + "SERVICE_ACCOUNT" + ] + } + } + }, + "AuthzResourceFilter": { + "type": "object", + "properties": { + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceSelectorV2" + } + }, + "includeAllResources": { + "type": "boolean" + } + }, + "description": "Contains resource filter for a resource group" + }, + "ResourceGroupV2": { + "required": [ + "accountIdentifier", + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "maxLength": 128, + "minLength": 0, + "type": "string" + }, + "name": { + "maxLength": 128, + "minLength": 0, + "type": "string" + }, + "color": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "allowedScopeLevels": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "includedScopes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScopeSelector" + } + }, + "resourceFilter": { + "$ref": "#/components/schemas/AuthzResourceFilter" + } + }, + "description": "Contains information of Resource Group" + }, + "ResourceSelectorV2": { + "required": [ + "resourceType" + ], + "type": "object", + "properties": { + "resourceType": { + "type": "string" + }, + "identifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "attributeFilter": { + "$ref": "#/components/schemas/AttributeFilter" + } + }, + "description": "Used to specify resources in resource group" + }, + "ResponseDTOPageResponseRoleAssignmentAggregate": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseRoleAssignmentAggregate" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RoleAssignmentAggregate": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "principal": { + "$ref": "#/components/schemas/PrincipalV2" + }, + "disabled": { + "type": "boolean" + }, + "role": { + "$ref": "#/components/schemas/AuthzRoleResponse" + }, + "resourceGroup": { + "$ref": "#/components/schemas/ResourceGroupV2" + }, + "scope": { + "$ref": "#/components/schemas/ScopeResponse" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "harnessManaged": { + "type": "boolean" + } + } + }, + "ScopeResponse": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "accountName": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "orgName": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "projectName": { + "type": "string" + } + } + }, + "ScopeSelector": { + "required": [ + "filter" + ], + "type": "object", + "properties": { + "filter": { + "type": "string", + "enum": [ + "EXCLUDING_CHILD_SCOPES", + "INCLUDING_CHILD_SCOPES" + ] + }, + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + } + }, + "description": "Contains information of scope to which resource filter is applied" + }, + "RoleAssignmentFilterV2": { + "type": "object", + "properties": { + "resourceGroupFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on resource group identifiers", + "items": { + "type": "string", + "description": "Filter role assignments based on resource group identifiers" + } + }, + "roleFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on role identifiers", + "items": { + "type": "string", + "description": "Filter role assignments based on role identifiers" + } + }, + "roleReferenceFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on roles", + "items": { + "$ref": "#/components/schemas/AuthzRoleReference" + } + }, + "scopeFilters": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on scope filters", + "items": { + "$ref": "#/components/schemas/ScopeSelector" + } + }, + "principalFilter": { + "$ref": "#/components/schemas/AuthzPrincipal" + }, + "harnessManagedFilter": { + "type": "boolean", + "description": "Filter role assignments based on role assignments being harness managed" + }, + "disabledFilter": { + "type": "boolean", + "description": "Filter role assignments based on whether they are enabled or disabled" + }, + "principalTypeFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter role assignments based on principal type", + "items": { + "type": "string", + "description": "Principal Type in Harness", + "enum": [ + "USER", + "USER_GROUP", + "SERVICE_ACCOUNT" + ] + } + } + } + }, + "ResponseDTORoleAssignmentValidationResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RoleAssignmentValidationResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RoleAssignmentValidationResponse": { + "type": "object", + "properties": { + "principalValidationResult": { + "$ref": "#/components/schemas/AuthzValidationResult" + }, + "roleValidationResult": { + "$ref": "#/components/schemas/AuthzValidationResult" + }, + "resourceGroupValidationResult": { + "$ref": "#/components/schemas/AuthzValidationResult" + } + } + }, + "AuthzValidationResult": { + "type": "object", + "properties": { + "isValid": { + "type": "boolean", + "writeOnly": true + }, + "errorMessage": { + "type": "string" + }, + "valid": { + "type": "boolean" + } + } + }, + "RoleAssignmentValidationRequest": { + "required": [ + "roleAssignment" + ], + "type": "object", + "properties": { + "roleAssignment": { + "$ref": "#/components/schemas/AuthzRoleAssignment" + }, + "validatePrincipal": { + "type": "boolean", + "description": "Set it to true if the principal needs to be validated" + }, + "validateRole": { + "type": "boolean", + "description": "Set it to true if the role needs to be validated" + }, + "validateResourceGroup": { + "type": "boolean", + "description": "Set it to true if the resource group needs to be validated" + } + } + }, + "ResponseDTORoleResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AuthzRoleResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageResponseRoleWithPrincipalCountResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RoleWithPrincipalCountResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseRoleWithPrincipalCountResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseRoleWithPrincipalCountResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RoleWithPrincipalCountResponse": { + "required": [ + "role" + ], + "type": "object", + "properties": { + "role": { + "$ref": "#/components/schemas/Role" + }, + "scope": { + "$ref": "#/components/schemas/AuthzScope" + }, + "harnessManaged": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "roleAssignedToUserCount": { + "type": "integer", + "format": "int32" + }, + "roleAssignedToUserGroupCount": { + "type": "integer", + "format": "int32" + }, + "roleAssignedToServiceAccountCount": { + "type": "integer", + "format": "int32" + } + } + }, + "ResourcegroupError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/ResourcegroupErrorMetadata" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "ResourcegroupErrorMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "ResourceType": { + "required": [ + "resourceTypes" + ], + "type": "object", + "properties": { + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceType" + } + } + }, + "description": "Contains list of Resource Type" + }, + "ResponseDTOResourceType": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ResourceType" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOZendeskResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ZendeskResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ZendeskResponseDTO": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "code": { + "type": "integer", + "format": "int32" + } + } + }, + "CoveoResponseDTO": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "code": { + "type": "integer", + "format": "int32" + }, + "token": { + "type": "string" + } + } + }, + "ResponseDTOCoveoResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CoveoResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResourcegroupResourceFilter": { + "type": "object", + "properties": { + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceSelectorV2" + } + }, + "includeAllResources": { + "type": "boolean" + } + }, + "description": "Contains resource filter for a resource group" + }, + "ResourcegroupResourceGroupV2": { + "required": [ + "accountIdentifier", + "identifier", + "name" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "maxLength": 128, + "minLength": 0, + "type": "string" + }, + "name": { + "maxLength": 128, + "minLength": 0, + "type": "string" + }, + "color": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "allowedScopeLevels": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + }, + "includedScopes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScopeSelector" + } + }, + "resourceFilter": { + "$ref": "#/components/schemas/ResourcegroupResourceFilter" + } + }, + "description": "Contains information of Resource Group" + }, + "ResourceGroupV2Response": { + "required": [ + "resourceGroup" + ], + "type": "object", + "properties": { + "resourceGroup": { + "$ref": "#/components/schemas/ResourcegroupResourceGroupV2" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "harnessManaged": { + "type": "boolean" + } + }, + "description": "This has details of the Resource Group along with its metadata." + }, + "ResponseDTOResourceGroupV2Response": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ResourceGroupV2Response" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResourceGroupV2Request": { + "required": [ + "resourceGroup" + ], + "type": "object", + "properties": { + "resourceGroup": { + "$ref": "#/components/schemas/ResourcegroupResourceGroupV2" + } + }, + "description": "Contains resource group request" + }, + "PageResponseResourceGroupV2Response": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceGroupV2Response" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseResourceGroupV2Response": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseResourceGroupV2Response" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResourceGroupFilter": { + "required": [ + "accountIdentifier" + ], + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Filter by account identifier" + }, + "orgIdentifier": { + "type": "string", + "description": "Filter by organization identifier" + }, + "projectIdentifier": { + "type": "string", + "description": "Filter by project identifier" + }, + "searchTerm": { + "type": "string", + "description": "Filter resource group matching by identifier/name" + }, + "identifierFilter": { + "uniqueItems": true, + "type": "array", + "description": "Filter by resource group identifiers", + "items": { + "type": "string", + "description": "Filter by resource group identifiers" + } + }, + "resourceSelectorFilterList": { + "uniqueItems": true, + "type": "array", + "description": "Filter based on whether it has a particular resource", + "items": { + "$ref": "#/components/schemas/ResourcegroupResourceSelectorFilter" + } + }, + "managedFilter": { + "type": "string", + "description": "Filter based on whether the resource group is Harness managed", + "enum": [ + "NO_FILTER", + "ONLY_MANAGED", + "ONLY_CUSTOM" + ] + }, + "includedScopes": { + "type": "array", + "description": "Filter by included scopes", + "items": { + "$ref": "#/components/schemas/ScopeSelector" + } + } + }, + "description": "Contains information of filters for Resource Group" + }, + "ResourcegroupResourceSelectorFilter": { + "required": [ + "resourceType" + ], + "type": "object", + "properties": { + "resourceType": { + "type": "string" + }, + "resourceIdentifier": { + "type": "string" + } + }, + "description": "Filter based on whether it has a particular resource" + }, + "CcmError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/CcmErrorMetadata" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "CcmErrorMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "AnomalySummary": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "count": { + "type": "number", + "format": "double" + }, + "actualCost": { + "type": "number", + "format": "double" + }, + "expectedCost": { + "type": "number", + "format": "double" + }, + "anomalousCost": { + "type": "number", + "format": "double" + }, + "costImpact": { + "type": "number", + "format": "double" + } + }, + "description": "This object details summary of an anomaly query result" + }, + "ResponseDTOListAnomalySummary": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnomalySummary" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyFilterProperties": { + "type": "object", + "properties": { + "k8sClusterNames": { + "type": "array", + "description": "This is the list of Cluster Names on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Cluster Names on which filter will be applied." + } + }, + "k8sNamespaces": { + "type": "array", + "description": "This is the list of Namespaces on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Namespaces on which filter will be applied." + } + }, + "k8sWorkloadNames": { + "type": "array", + "description": "This is the list of Workload Names on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Workload Names on which filter will be applied." + } + }, + "k8sServiceNames": { + "type": "array", + "description": "This is the list of Service Names on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Service Names on which filter will be applied." + } + }, + "gcpProjects": { + "type": "array", + "description": "This is the list of GCP Projects on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of GCP Projects on which filter will be applied." + } + }, + "gcpProducts": { + "type": "array", + "description": "This is the list of GCP Products on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of GCP Products on which filter will be applied." + } + }, + "gcpSKUDescriptions": { + "type": "array", + "description": "This is the list of GCP SKU Descriptions on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of GCP SKU Descriptions on which filter will be applied." + } + }, + "awsAccounts": { + "type": "array", + "description": "This is the list of AWS Accounts on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of AWS Accounts on which filter will be applied." + } + }, + "awsServices": { + "type": "array", + "description": "This is the list of AWS Services on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of AWS Services on which filter will be applied." + } + }, + "awsUsageTypes": { + "type": "array", + "description": "This is the list of AWS Usage Types on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of AWS Usage Types on which filter will be applied." + } + }, + "azureSubscriptionGuids": { + "type": "array", + "description": "This is the list of Azure Subscription Guids on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Azure Subscription Guids on which filter will be applied." + } + }, + "azureResourceGroups": { + "type": "array", + "description": "This is the list of Azure Resource Groups on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Azure Resource Groups on which filter will be applied." + } + }, + "azureMeterCategories": { + "type": "array", + "description": "This is the list of Azure Meter Categories on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of Azure Meter Categories on which filter will be applied." + } + }, + "minActualAmount": { + "type": "number", + "description": "Fetch anomalies with Actual Amount greater-than or equal-to minActualAmount", + "format": "double" + }, + "minAnomalousSpend": { + "type": "number", + "description": "Fetch anomalies with Anomalous Spend greater-than or equal-to minAnomalousSpend", + "format": "double" + }, + "timeFilters": { + "type": "array", + "description": "List of filters to be applied on Anomaly Time", + "items": { + "$ref": "#/components/schemas/CCMTimeFilter" + } + }, + "orderBy": { + "type": "array", + "description": "The order by condition for anomaly query", + "items": { + "$ref": "#/components/schemas/CCMSort" + } + }, + "groupBy": { + "type": "array", + "description": "The group by clause for anomaly query", + "items": { + "$ref": "#/components/schemas/CCMGroupBy" + } + }, + "aggregations": { + "type": "array", + "description": "The aggregations for anomaly query", + "items": { + "$ref": "#/components/schemas/CCMAggregation" + } + }, + "searchText": { + "type": "array", + "description": "The search text entered to filter out rows", + "items": { + "type": "string", + "description": "The search text entered to filter out rows" + } + }, + "offset": { + "type": "integer", + "description": "Query Offset", + "format": "int32" + }, + "limit": { + "type": "integer", + "description": "Query Limit", + "format": "int32" + }, + "status": { + "type": "array", + "description": "This is the status of the anomaly [ACTIVE/IGNORED/ARCHIVED/RESOLVED]", + "items": { + "type": "string", + "description": "This is the status of the anomaly [ACTIVE/IGNORED/ARCHIVED/RESOLVED]", + "enum": [ + "ACTIVE", + "IGNORED", + "ARCHIVED", + "RESOLVED" + ] + } + }, + "anomalyIds": { + "type": "array", + "description": "This is the list of anomaly IDs on which filter will be applied.", + "items": { + "type": "string", + "description": "This is the list of anomaly IDs on which filter will be applied." + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "enum": [ + "Anomaly" + ] + } + }, + "description": "Properties of the Anomaly Filter defined in Harness" + }, + "CCMAggregation": { + "type": "object", + "properties": { + "operationType": { + "type": "string", + "enum": [ + "SUM", + "MAX", + "MIN", + "AVG", + "COUNT" + ] + }, + "field": { + "type": "string", + "description": "List of all possible Fields", + "enum": [ + "PERSPECTIVE_ID", + "ANOMALY_ID", + "WORKLOAD", + "WORKLOAD_TYPE", + "CLUSTER_ID", + "CLUSTER_NAME", + "CLUSTER_NAMESPACE", + "CLUSTER_NAMESPACE_ID", + "CLUSTER_WORKLOAD", + "CLUSTER_WORKLOAD_ID", + "CLUSTER_NODE", + "CLUSTER_POD", + "CLUSTER_PARENT_INSTANCE_ID", + "CLUSTER_STORAGE", + "CLUSTER_APPLICATION", + "CLUSTER_ENVIRONMENT", + "CLUSTER_SERVICE", + "CLUSTER_CLOUD_PROVIDER", + "CLUSTER_ECS_SERVICE", + "CLUSTER_ECS_SERVICE_ID", + "CLUSTER_ECS_TASK", + "CLUSTER_ECS_TASK_ID", + "CLUSTER_ECS_LAUNCH_TYPE", + "CLUSTER_ECS_LAUNCH_TYPE_ID", + "NAMESPACE", + "SERVICE", + "SERVICE_NAME", + "GCP_PRODUCT", + "GCP_PROJECT", + "GCP_SKU_ID", + "GCP_SKU_DESCRIPTION", + "AWS_ACCOUNT", + "AWS_SERVICE", + "AWS_INSTANCE_TYPE", + "AWS_USAGE_TYPE", + "AWS_BILLING_ENTITY", + "AWS_LINE_ITEM_TYPE", + "AZURE_SUBSCRIPTION_GUID", + "AZURE_METER_NAME", + "AZURE_METER_CATEGORY", + "AZURE_METER_SUBCATEGORY", + "AZURE_RESOURCE_ID", + "AZURE_RESOURCE_GROUP_NAME", + "AZURE_RESOURCE_TYPE", + "AZURE_RESOURCE", + "AZURE_SERVICE_NAME", + "AZURE_SERVICE_TIER", + "AZURE_INSTANCE_ID", + "AZURE_SUBSCRIPTION_NAME", + "AZURE_PUBLISHER_NAME", + "AZURE_PUBLISHER_TYPE", + "AZURE_RESERVATION_ID", + "AZURE_RESERVATION_NAME", + "AZURE_FREQUENCY", + "AZURE_CHARGE_TYPE", + "AZURE_PRICING_MODEL", + "AZURE_BENEFIT_NAME", + "AZURE_RESOURCE_NAME", + "COMMON_PRODUCT", + "COMMON_REGION", + "COMMON_NONE", + "CLOUD_PROVIDER", + "STATUS", + "REGION", + "ANOMALY_TIME", + "ACTUAL_COST", + "EXPECTED_COST", + "ANOMALOUS_SPEND", + "COST_IMPACT", + "ALL", + "ANOMALOUS_SPEND_PERCENTAGE", + "TOTAL_COST", + "IDLE_COST", + "UNALLOCATED_COST", + "RULE_NAME", + "RULE_SET_NAME", + "POTENTIAL_SAVINGS", + "LAST_EVALUATED_AT", + "ANOMALY_STATUS", + "RECOMMENDATIONS_COUNT", + "ACTUAL_AMOUNT", + "CRITICALITY", + "DURATION", + "UPDATED_AT", + "UPDATED_BY", + "UPDATED_AT_RELATIVE" + ] + } + }, + "description": "Fields which will be aggregated in the response" + }, + "CCMGroupBy": { + "type": "object", + "properties": { + "groupByField": { + "type": "string", + "description": "List of all possible Fields", + "enum": [ + "PERSPECTIVE_ID", + "ANOMALY_ID", + "WORKLOAD", + "WORKLOAD_TYPE", + "CLUSTER_ID", + "CLUSTER_NAME", + "CLUSTER_NAMESPACE", + "CLUSTER_NAMESPACE_ID", + "CLUSTER_WORKLOAD", + "CLUSTER_WORKLOAD_ID", + "CLUSTER_NODE", + "CLUSTER_POD", + "CLUSTER_PARENT_INSTANCE_ID", + "CLUSTER_STORAGE", + "CLUSTER_APPLICATION", + "CLUSTER_ENVIRONMENT", + "CLUSTER_SERVICE", + "CLUSTER_CLOUD_PROVIDER", + "CLUSTER_ECS_SERVICE", + "CLUSTER_ECS_SERVICE_ID", + "CLUSTER_ECS_TASK", + "CLUSTER_ECS_TASK_ID", + "CLUSTER_ECS_LAUNCH_TYPE", + "CLUSTER_ECS_LAUNCH_TYPE_ID", + "NAMESPACE", + "SERVICE", + "SERVICE_NAME", + "GCP_PRODUCT", + "GCP_PROJECT", + "GCP_SKU_ID", + "GCP_SKU_DESCRIPTION", + "AWS_ACCOUNT", + "AWS_SERVICE", + "AWS_INSTANCE_TYPE", + "AWS_USAGE_TYPE", + "AWS_BILLING_ENTITY", + "AWS_LINE_ITEM_TYPE", + "AZURE_SUBSCRIPTION_GUID", + "AZURE_METER_NAME", + "AZURE_METER_CATEGORY", + "AZURE_METER_SUBCATEGORY", + "AZURE_RESOURCE_ID", + "AZURE_RESOURCE_GROUP_NAME", + "AZURE_RESOURCE_TYPE", + "AZURE_RESOURCE", + "AZURE_SERVICE_NAME", + "AZURE_SERVICE_TIER", + "AZURE_INSTANCE_ID", + "AZURE_SUBSCRIPTION_NAME", + "AZURE_PUBLISHER_NAME", + "AZURE_PUBLISHER_TYPE", + "AZURE_RESERVATION_ID", + "AZURE_RESERVATION_NAME", + "AZURE_FREQUENCY", + "AZURE_CHARGE_TYPE", + "AZURE_PRICING_MODEL", + "AZURE_BENEFIT_NAME", + "AZURE_RESOURCE_NAME", + "COMMON_PRODUCT", + "COMMON_REGION", + "COMMON_NONE", + "CLOUD_PROVIDER", + "STATUS", + "REGION", + "ANOMALY_TIME", + "ACTUAL_COST", + "EXPECTED_COST", + "ANOMALOUS_SPEND", + "COST_IMPACT", + "ALL", + "ANOMALOUS_SPEND_PERCENTAGE", + "TOTAL_COST", + "IDLE_COST", + "UNALLOCATED_COST", + "RULE_NAME", + "RULE_SET_NAME", + "POTENTIAL_SAVINGS", + "LAST_EVALUATED_AT", + "ANOMALY_STATUS", + "RECOMMENDATIONS_COUNT", + "ACTUAL_AMOUNT", + "CRITICALITY", + "DURATION", + "UPDATED_AT", + "UPDATED_BY", + "UPDATED_AT_RELATIVE" + ] + } + }, + "description": "The group by clause for anomaly query" + }, + "CCMSort": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "List of all possible Fields", + "enum": [ + "PERSPECTIVE_ID", + "ANOMALY_ID", + "WORKLOAD", + "WORKLOAD_TYPE", + "CLUSTER_ID", + "CLUSTER_NAME", + "CLUSTER_NAMESPACE", + "CLUSTER_NAMESPACE_ID", + "CLUSTER_WORKLOAD", + "CLUSTER_WORKLOAD_ID", + "CLUSTER_NODE", + "CLUSTER_POD", + "CLUSTER_PARENT_INSTANCE_ID", + "CLUSTER_STORAGE", + "CLUSTER_APPLICATION", + "CLUSTER_ENVIRONMENT", + "CLUSTER_SERVICE", + "CLUSTER_CLOUD_PROVIDER", + "CLUSTER_ECS_SERVICE", + "CLUSTER_ECS_SERVICE_ID", + "CLUSTER_ECS_TASK", + "CLUSTER_ECS_TASK_ID", + "CLUSTER_ECS_LAUNCH_TYPE", + "CLUSTER_ECS_LAUNCH_TYPE_ID", + "NAMESPACE", + "SERVICE", + "SERVICE_NAME", + "GCP_PRODUCT", + "GCP_PROJECT", + "GCP_SKU_ID", + "GCP_SKU_DESCRIPTION", + "AWS_ACCOUNT", + "AWS_SERVICE", + "AWS_INSTANCE_TYPE", + "AWS_USAGE_TYPE", + "AWS_BILLING_ENTITY", + "AWS_LINE_ITEM_TYPE", + "AZURE_SUBSCRIPTION_GUID", + "AZURE_METER_NAME", + "AZURE_METER_CATEGORY", + "AZURE_METER_SUBCATEGORY", + "AZURE_RESOURCE_ID", + "AZURE_RESOURCE_GROUP_NAME", + "AZURE_RESOURCE_TYPE", + "AZURE_RESOURCE", + "AZURE_SERVICE_NAME", + "AZURE_SERVICE_TIER", + "AZURE_INSTANCE_ID", + "AZURE_SUBSCRIPTION_NAME", + "AZURE_PUBLISHER_NAME", + "AZURE_PUBLISHER_TYPE", + "AZURE_RESERVATION_ID", + "AZURE_RESERVATION_NAME", + "AZURE_FREQUENCY", + "AZURE_CHARGE_TYPE", + "AZURE_PRICING_MODEL", + "AZURE_BENEFIT_NAME", + "AZURE_RESOURCE_NAME", + "COMMON_PRODUCT", + "COMMON_REGION", + "COMMON_NONE", + "CLOUD_PROVIDER", + "STATUS", + "REGION", + "ANOMALY_TIME", + "ACTUAL_COST", + "EXPECTED_COST", + "ANOMALOUS_SPEND", + "COST_IMPACT", + "ALL", + "ANOMALOUS_SPEND_PERCENTAGE", + "TOTAL_COST", + "IDLE_COST", + "UNALLOCATED_COST", + "RULE_NAME", + "RULE_SET_NAME", + "POTENTIAL_SAVINGS", + "LAST_EVALUATED_AT", + "ANOMALY_STATUS", + "RECOMMENDATIONS_COUNT", + "ACTUAL_AMOUNT", + "CRITICALITY", + "DURATION", + "UPDATED_AT", + "UPDATED_BY", + "UPDATED_AT_RELATIVE" + ] + }, + "order": { + "type": "string", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + } + }, + "description": "The order by condition for Rule Set query" + }, + "CCMTimeFilter": { + "type": "object", + "properties": { + "operator": { + "type": "string", + "description": "List of all possible Operators", + "enum": [ + "NOT_IN", + "IN", + "EQUALS", + "NOT_NULL", + "NULL", + "LIKE", + "GREATER_THAN", + "LESS_THAN", + "GREATER_THAN_EQUALS_TO", + "LESS_THAN_EQUALS_TO", + "AFTER", + "BEFORE" + ] + }, + "timestamp": { + "type": "integer", + "format": "int64" + } + }, + "description": "Time" + }, + "FilterStats": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "description": "Filter values available for a particular column/key." + }, + "ResponseDTOListFilterStats": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FilterStats" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyData": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "time": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "anomalyRelativeTime": { + "type": "string" + }, + "actualAmount": { + "type": "number", + "format": "double" + }, + "expectedAmount": { + "type": "number", + "format": "double" + }, + "anomalousSpend": { + "type": "number", + "format": "double" + }, + "anomalousSpendPercentage": { + "type": "number", + "format": "double" + }, + "resourceName": { + "type": "string" + }, + "resourceInfo": { + "type": "string" + }, + "entity": { + "$ref": "#/components/schemas/EntityInfo" + }, + "details": { + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "ACTIVE", + "IGNORED", + "ARCHIVED", + "RESOLVED" + ] + }, + "statusRelativeTime": { + "type": "string" + }, + "comment": { + "type": "string" + }, + "cloudProvider": { + "type": "string" + }, + "anomalyScore": { + "type": "number", + "format": "double" + }, + "userFeedback": { + "type": "string", + "enum": [ + "TRUE_ANOMALY", + "TRUE_EXPECTED_ANOMALY", + "FALSE_ANOMALY", + "NOT_RESPONDED" + ] + }, + "perspectiveId": { + "type": "string" + }, + "perspectiveName": { + "type": "string" + }, + "criticality": { + "type": "string", + "enum": [ + "CRITICAL", + "MEDIUM", + "LOW" + ] + }, + "duration": { + "type": "integer", + "format": "int32" + }, + "isOngoingAnomaly": { + "type": "boolean", + "writeOnly": true + }, + "expectedCostUpper": { + "type": "number", + "format": "double" + }, + "expectedCostLower": { + "type": "number", + "format": "double" + }, + "statusUpdatedBy": { + "type": "string" + }, + "statusUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "statusUpdateRelativeTime": { + "type": "integer", + "format": "int32" + }, + "ongoingAnomaly": { + "type": "boolean" + } + }, + "description": "This object contains details of a cost anomaly" + }, + "EntityInfo": { + "type": "object", + "properties": { + "field": { + "type": "string" + }, + "clusterName": { + "type": "string" + }, + "clusterId": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "workloadName": { + "type": "string" + }, + "workloadType": { + "type": "string" + }, + "service": { + "type": "string" + }, + "serviceName": { + "type": "string" + }, + "gcpProjectId": { + "type": "string" + }, + "gcpProduct": { + "type": "string" + }, + "gcpSKUId": { + "type": "string" + }, + "gcpSKUDescription": { + "type": "string" + }, + "awsUsageAccountId": { + "type": "string" + }, + "awsServiceCode": { + "type": "string" + }, + "awsInstancetype": { + "type": "string" + }, + "awsUsageType": { + "type": "string" + }, + "azureSubscriptionGuid": { + "type": "string" + }, + "azureResourceGroup": { + "type": "string" + }, + "azureMeterCategory": { + "type": "string" + }, + "azureServiceName": { + "type": "string" + }, + "azureInstanceId": { + "type": "string" + }, + "cloudProvider": { + "type": "string" + } + } + }, + "ResponseDTOListAnomalyData": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnomalyData" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyRequestDTO": { + "type": "object", + "properties": { + "anomalyFilterPropertiesDTO": { + "$ref": "#/components/schemas/AnomalyFilterProperties" + }, + "perspectiveQueryDTO": { + "$ref": "#/components/schemas/PerspectiveQueryDTO" + } + } + }, + "PerspectiveQueryDTO": { + "type": "object", + "properties": { + "filters": { + "type": "array", + "description": "The filters for perspective query", + "items": { + "$ref": "#/components/schemas/QLCEViewFilterWrapper" + } + }, + "groupBy": { + "type": "array", + "description": "The group by clause for perspective query", + "items": { + "$ref": "#/components/schemas/QLCEViewGroupBy" + } + } + }, + "description": "The query object for perspective cost anomalies" + }, + "QLCEViewFieldInput": { + "type": "object", + "properties": { + "fieldId": { + "type": "string" + }, + "fieldName": { + "type": "string" + }, + "identifier": { + "type": "string", + "description": "Perspective filter Category, CLUSTER means Kubernetes", + "enum": [ + "CLUSTER", + "AWS", + "GCP", + "AZURE", + "EXTERNAL_DATA", + "COMMON", + "CUSTOM", + "BUSINESS_MAPPING", + "LABEL", + "LABEL_V2" + ] + }, + "identifierName": { + "type": "string" + } + } + }, + "QLCEViewFilter": { + "type": "object", + "properties": { + "field": { + "$ref": "#/components/schemas/QLCEViewFieldInput" + }, + "operator": { + "type": "string", + "enum": [ + "NOT_IN", + "IN", + "EQUALS", + "NOT_NULL", + "NULL", + "LIKE", + "SEARCH" + ] + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "QLCEViewFilterWrapper": { + "type": "object", + "properties": { + "idFilter": { + "$ref": "#/components/schemas/QLCEViewFilter" + }, + "timeFilter": { + "$ref": "#/components/schemas/QLCEViewTimeFilter" + }, + "timeRangeTypeFilter": { + "type": "string", + "enum": [ + "LAST_MONTH", + "CURRENT_MONTH" + ] + }, + "viewMetadataFilter": { + "$ref": "#/components/schemas/QLCEViewMetadataFilter" + }, + "ruleFilter": { + "$ref": "#/components/schemas/QLCEViewRule" + } + }, + "description": "Get Recommendations for a perspective" + }, + "QLCEViewGroupBy": { + "type": "object", + "properties": { + "entityGroupBy": { + "$ref": "#/components/schemas/QLCEViewFieldInput" + }, + "timeTruncGroupBy": { + "$ref": "#/components/schemas/QLCEViewTimeTruncGroupBy" + } + }, + "description": "The group by clause for perspective query" + }, + "QLCEViewMetadataFilter": { + "type": "object", + "properties": { + "viewId": { + "type": "string" + }, + "isPreview": { + "type": "boolean" + }, + "preview": { + "type": "boolean" + } + } + }, + "QLCEViewRule": { + "type": "object", + "properties": { + "conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/QLCEViewFilter" + } + } + } + }, + "QLCEViewTimeFilter": { + "type": "object", + "properties": { + "field": { + "$ref": "#/components/schemas/QLCEViewFieldInput" + }, + "operator": { + "type": "string", + "enum": [ + "AFTER", + "BEFORE" + ] + }, + "value": { + "type": "number" + } + } + }, + "QLCEViewTimeTruncGroupBy": { + "type": "object", + "properties": { + "resolution": { + "type": "string", + "enum": [ + "HOUR", + "DAY", + "MONTH", + "WEEK", + "QUARTER", + "YEAR" + ] + } + } + }, + "PerspectiveAnomalyData": { + "type": "object", + "properties": { + "timestamp": { + "type": "integer", + "format": "int64" + }, + "anomalyCount": { + "type": "integer", + "format": "int32" + }, + "actualCost": { + "type": "number", + "format": "double" + }, + "differenceFromExpectedCost": { + "type": "number", + "format": "double" + }, + "associatedResources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityInfo" + } + }, + "resourceType": { + "type": "string" + } + }, + "description": "This object contains the Anomalies associated with a perspective" + }, + "ResponseDTOListPerspectiveAnomalyData": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PerspectiveAnomalyData" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyFeedback": { + "type": "object", + "properties": { + "feedback": { + "type": "string", + "description": "Anomaly feedback", + "enum": [ + "TRUE_ANOMALY", + "TRUE_EXPECTED_ANOMALY", + "FALSE_ANOMALY", + "NOT_RESPONDED" + ] + } + }, + "description": "The query object for cost anomaly feedback" + }, + "BIDashboardSummary": { + "type": "object", + "properties": { + "dashboardName": { + "type": "string", + "description": "Name of the BI Dashboard" + }, + "dashboardId": { + "type": "string", + "description": "Static Dashboard ID used in the dashboard's URL" + }, + "cloudProvider": { + "type": "string", + "description": "Cloud Provider associated with the dashboard" + }, + "description": { + "type": "string", + "description": "Brief Description about the dashboard" + }, + "serviceType": { + "type": "string", + "description": "Service Type" + }, + "redirectionURL": { + "type": "string", + "description": "URL of the dashboard page to which user should be redirected" + } + }, + "description": "BI Dashboard Summary" + }, + "ResponseDTOListBIDashboardSummary": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BIDashboardSummary" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AlertThreshold": { + "type": "object", + "properties": { + "percentage": { + "type": "number", + "format": "double" + }, + "basedOn": { + "type": "string", + "description": "Whether the alert is based on Actual cost or next 30 days Forecasted Cost", + "enum": [ + "ACTUAL_COST", + "FORECASTED_COST", + "PARTIAL_COST" + ] + }, + "emailAddresses": { + "type": "array", + "items": { + "type": "string" + } + }, + "userGroupIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "slackWebhooks": { + "type": "array", + "items": { + "type": "string" + } + }, + "alertsSent": { + "type": "integer", + "format": "int32" + }, + "crossedAt": { + "type": "integer", + "format": "int64" + } + }, + "description": "A description of a single Alert" + }, + "BudgetCostData": { + "type": "object", + "properties": { + "time": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "actualCost": { + "type": "number", + "format": "double" + }, + "forecastCost": { + "type": "number", + "format": "double" + }, + "budgeted": { + "type": "number", + "format": "double" + }, + "budgetVariance": { + "type": "number", + "format": "double" + }, + "budgetVariancePercentage": { + "type": "number", + "format": "double" + } + } + }, + "BudgetGroup": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "budgetGroupMonthlyBreakdown": { + "$ref": "#/components/schemas/BudgetMonthlyBreakdown" + }, + "period": { + "type": "string", + "enum": [ + "DAILY", + "WEEKLY", + "MONTHLY", + "QUARTERLY", + "YEARLY" + ] + }, + "budgetGroupAmount": { + "type": "number", + "format": "double" + }, + "actualCost": { + "type": "number", + "format": "double" + }, + "forecastCost": { + "type": "number", + "format": "double" + }, + "lastMonthCost": { + "type": "number", + "format": "double" + }, + "alertThresholds": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlertThreshold" + } + }, + "childEntities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BudgetGroupChildEntityDTO" + } + }, + "parentBudgetGroupId": { + "type": "string" + }, + "cascadeType": { + "type": "string", + "enum": [ + "EQUAL", + "PROPORTIONAL", + "NO_CASCADE" + ] + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "budgetGroupHistory": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/BudgetCostData" + } + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "The Cloud Cost Budget Group definition" + }, + "BudgetGroupChildEntityDTO": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "proportion": { + "type": "number", + "format": "double" + }, + "isBudgetGroup": { + "type": "boolean", + "writeOnly": true + }, + "budgetGroup": { + "type": "boolean" + } + } + }, + "BudgetMonthlyBreakdown": { + "type": "object", + "properties": { + "budgetBreakdown": { + "type": "string", + "description": "Whether the Yearly budget breakdown is yearly or monthly", + "enum": [ + "YEARLY", + "MONTHLY" + ] + }, + "budgetMonthlyAmount": { + "type": "array", + "description": "Budgeted monthly amount for yearly budget", + "items": { + "$ref": "#/components/schemas/ValueDataPoint" + } + }, + "actualMonthlyCost": { + "type": "array", + "description": "Actual monthly cost for yearly budget", + "items": { + "type": "number", + "description": "Actual monthly cost for yearly budget", + "format": "double" + } + }, + "forecastMonthlyCost": { + "type": "array", + "description": "Forecasted monthly cost for yearly budget", + "items": { + "type": "number", + "description": "Forecasted monthly cost for yearly budget", + "format": "double" + } + }, + "yearlyLastPeriodCost": { + "type": "array", + "description": "Yearly monthly cost for last year budget", + "items": { + "type": "number", + "description": "Yearly monthly cost for last year budget", + "format": "double" + } + }, + "forecastCostConfigured": { + "type": "boolean", + "description": "Indicates whether forecast cost has been ingested by the user" + } + }, + "description": "The budget monthly breakdown of a Yearly Budget" + }, + "ResponseDTOBudgetGroup": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/BudgetGroup" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ValueDataPoint": { + "type": "object", + "properties": { + "time": { + "type": "integer", + "format": "int64" + }, + "value": { + "type": "number", + "format": "double" + } + } + }, + "ResponseDTOListValueDataPoint": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ValueDataPoint" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "BudgetSummary": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "perspectiveId": { + "type": "string" + }, + "perspectiveName": { + "type": "string" + }, + "folderId": { + "type": "string" + }, + "budgetAmount": { + "type": "number", + "format": "double" + }, + "actualCost": { + "type": "number", + "format": "double" + }, + "forecastCost": { + "type": "number", + "format": "double" + }, + "timeLeft": { + "type": "integer", + "format": "int32" + }, + "timeUnit": { + "type": "string" + }, + "timeScope": { + "type": "string" + }, + "actualCostAlerts": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "forecastCostAlerts": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "alertThresholds": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlertThreshold" + } + }, + "period": { + "type": "string", + "enum": [ + "DAILY", + "WEEKLY", + "MONTHLY", + "QUARTERLY", + "YEARLY" + ] + }, + "type": { + "type": "string", + "description": "Whether the Budget is based on a specified amount or based on previous month's actual spend", + "enum": [ + "SPECIFIED_AMOUNT", + "PREVIOUS_MONTH_SPEND", + "PREVIOUS_PERIOD_SPEND" + ] + }, + "growthRate": { + "type": "number", + "format": "double" + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "budgetMonthlyBreakdown": { + "$ref": "#/components/schemas/BudgetMonthlyBreakdown" + }, + "childEntityProportions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BudgetGroupChildEntityDTO" + } + }, + "isBudgetGroup": { + "type": "boolean", + "writeOnly": true + }, + "cascadeType": { + "type": "string", + "enum": [ + "EQUAL", + "PROPORTIONAL", + "NO_CASCADE" + ] + }, + "parentId": { + "type": "string" + }, + "disableCurrencyWarning": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "budgetGroup": { + "type": "boolean" + } + } + }, + "ResponseDTOListBudgetSummary": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BudgetSummary" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListBudgetGroup": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BudgetGroup" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ApplicationBudgetScope": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/BudgetScope" + }, + { + "type": "object", + "properties": { + "applicationIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "environmentType": { + "type": "string", + "enum": [ + "PROD", + "NON_PROD", + "ALL" + ] + } + } + } + ] + }, + "Budget": { + "required": [ + "accountId", + "name" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "scope": { + "$ref": "#/components/schemas/BudgetScope" + }, + "type": { + "type": "string", + "description": "Whether the Budget is based on a specified amount or based on previous month's actual spend", + "enum": [ + "SPECIFIED_AMOUNT", + "PREVIOUS_MONTH_SPEND", + "PREVIOUS_PERIOD_SPEND" + ] + }, + "budgetMonthlyBreakdown": { + "$ref": "#/components/schemas/BudgetMonthlyBreakdown" + }, + "budgetAmount": { + "type": "number", + "format": "double" + }, + "period": { + "type": "string", + "enum": [ + "DAILY", + "WEEKLY", + "MONTHLY", + "QUARTERLY", + "YEARLY" + ] + }, + "growthRate": { + "type": "number", + "format": "double" + }, + "actualCost": { + "type": "number", + "format": "double" + }, + "forecastCost": { + "type": "number", + "format": "double" + }, + "lastMonthCost": { + "type": "number", + "format": "double" + }, + "alertThresholds": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlertThreshold" + } + }, + "emailAddresses": { + "type": "array", + "items": { + "type": "string" + } + }, + "userGroupIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "parentBudgetGroupId": { + "type": "string" + }, + "notifyOnSlack": { + "type": "boolean" + }, + "isNgBudget": { + "type": "boolean", + "writeOnly": true + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "budgetHistory": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/BudgetCostData" + } + }, + "disableCurrencyWarning": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "ngBudget": { + "type": "boolean" + } + }, + "description": "The Cloud Cost Budget definition" + }, + "BudgetScope": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "budgetScopeType": { + "type": "string" + }, + "entityIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "entityNames": { + "type": "array", + "items": { + "type": "string" + } + }, + "type": { + "type": "string" + } + }, + "description": "The scope in which the Budget was created", + "discriminator": { + "propertyName": "type" + } + }, + "ClusterBudgetScope": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/BudgetScope" + }, + { + "type": "object", + "properties": { + "clusterIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + ] + }, + "PerspectiveBudgetScope": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/BudgetScope" + }, + { + "type": "object", + "properties": { + "viewId": { + "type": "string" + }, + "viewName": { + "type": "string" + } + } + } + ] + }, + "ResponseDTOBudget": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/Budget" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "BudgetData": { + "type": "object", + "properties": { + "costData": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BudgetCostData" + } + }, + "forecastCost": { + "type": "number", + "format": "double" + } + }, + "description": "This object contains the Cost Data associated with a Budget" + }, + "ResponseDTOBudgetData": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/BudgetData" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListBudget": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Budget" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CostCategoryDeleteDTO": { + "type": "object", + "properties": { + "linkedPerspectives": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "message": { + "type": "string" + }, + "deleted": { + "type": "boolean" + } + } + }, + "RestResponseCostCategoryDeleteDTO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/CostCategoryDeleteDTO" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "BusinessMapping": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[^\\d][^'\"\\\\]*$", + "type": "string" + }, + "accountId": { + "type": "string" + }, + "costTargets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CostTarget" + } + }, + "sharedCosts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SharedCost" + } + }, + "unallocatedCost": { + "$ref": "#/components/schemas/UnallocatedCost" + }, + "dataSources": { + "type": "array", + "items": { + "type": "string", + "description": "Perspective filter Category, CLUSTER means Kubernetes", + "enum": [ + "CLUSTER", + "AWS", + "GCP", + "AZURE", + "EXTERNAL_DATA", + "COMMON", + "CUSTOM", + "BUSINESS_MAPPING", + "LABEL", + "LABEL_V2" + ] + } + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "costTargetsWithUUID": { + "type": "array", + "writeOnly": true, + "items": { + "$ref": "#/components/schemas/CostTarget" + } + } + } + }, + "CostTarget": { + "type": "object", + "properties": { + "name": { + "pattern": "^[^'\"\\\\]*$", + "type": "string" + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ViewRule" + } + } + } + }, + "RestResponseBusinessMapping": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/BusinessMapping" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "SharedCost": { + "type": "object", + "properties": { + "name": { + "pattern": "^[^\\d][^'\"\\\\]*$", + "type": "string" + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ViewRule" + } + }, + "strategy": { + "type": "string", + "enum": [ + "EQUAL", + "PROPORTIONAL", + "FIXED" + ] + }, + "splits": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SharedCostSplit" + } + } + } + }, + "SharedCostSplit": { + "type": "object", + "properties": { + "costTargetName": { + "type": "string" + }, + "percentageContribution": { + "type": "number", + "format": "double" + } + } + }, + "UnallocatedCost": { + "type": "object", + "properties": { + "strategy": { + "type": "string", + "enum": [ + "DISPLAY_NAME", + "HIDE", + "SHARE" + ] + }, + "label": { + "pattern": "^[^'\"\\\\]*$", + "type": "string" + }, + "sharingStrategy": { + "type": "string", + "enum": [ + "EQUAL", + "PROPORTIONAL", + "FIXED" + ] + }, + "splits": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SharedCostSplit" + } + } + } + }, + "ViewCondition": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This object defines a filter Condition, an array of filter Conditions are combined using AND operator", + "discriminator": { + "propertyName": "type" + } + }, + "ViewField": { + "type": "object", + "properties": { + "fieldId": { + "type": "string" + }, + "fieldName": { + "type": "string" + }, + "identifier": { + "type": "string", + "description": "Perspective filter Category, CLUSTER means Kubernetes", + "enum": [ + "CLUSTER", + "AWS", + "GCP", + "AZURE", + "EXTERNAL_DATA", + "COMMON", + "CUSTOM", + "BUSINESS_MAPPING", + "LABEL", + "LABEL_V2" + ] + }, + "identifierName": { + "type": "string" + } + }, + "description": "An individual Perspective field" + }, + "ViewIdCondition": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ViewCondition" + }, + { + "type": "object", + "properties": { + "viewField": { + "$ref": "#/components/schemas/ViewField" + }, + "viewOperator": { + "type": "string", + "enum": [ + "NOT_IN", + "IN", + "EQUALS", + "NOT_NULL", + "NULL", + "LIKE" + ] + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + ] + }, + "ViewRule": { + "type": "object", + "properties": { + "viewConditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ViewCondition" + } + } + }, + "description": "This object will contain a Perspective Rule, an array of Perspective Rules are combined using OR operator" + }, + "BusinessMappingListDTO": { + "type": "object", + "properties": { + "businessMappings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BusinessMapping" + } + }, + "totalCount": { + "type": "integer", + "format": "int64" + } + } + }, + "RestResponseBusinessMappingListDTO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/BusinessMappingListDTO" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "CcmK8sMetaInfo": { + "type": "object", + "properties": { + "clusterId": { + "type": "string" + }, + "clusterName": { + "type": "string" + }, + "ccmk8sConnectorId": { + "type": "string" + }, + "visibility": { + "type": "array", + "items": { + "type": "string" + } + }, + "optimisation": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CcmK8sMetaInfoResponseDTO": { + "type": "object", + "properties": { + "ccmK8sMeta": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CcmK8sMetaInfo" + } + } + } + }, + "ResponseDTOCcmK8sMetaInfoResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CcmK8sMetaInfoResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CcmK8sMetaDTO": { + "type": "object", + "properties": { + "ccmK8sConnectorId": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AnomalyAlertPreferences": { + "type": "object", + "properties": { + "costThreshold": { + "type": "number", + "format": "double" + }, + "costThresholdPercentage": { + "type": "number", + "format": "double" + } + }, + "description": "This object stores threshold preferences for an anomaly alert" + }, + "EmailNotificationChannel": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationChannel" + }, + { + "type": "object", + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + ] + }, + "MicrosoftTeamsNotificationChannel": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationChannel" + }, + { + "type": "object", + "properties": { + "microsoftTeamsUrl": { + "type": "string" + } + } + } + ] + }, + "NotificationChannel": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "notificationChannelType": { + "type": "string", + "enum": [ + "EMAIL", + "SLACK", + "PAGERDUTY", + "MSTEAMS", + "WEBHOOK", + "DATADOG" + ] + }, + "channelUrls": { + "type": "array", + "items": { + "type": "string" + } + }, + "type": { + "type": "string" + } + }, + "description": "The Cloud Cost Notification Channel definition", + "discriminator": { + "propertyName": "type" + } + }, + "NotificationSetting": { + "required": [ + "accountId", + "scope" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "scope": { + "type": "string", + "enum": [ + "ALL_DATA", + "PERSPECTIVE", + "COST_CATEGORY" + ] + }, + "perspectiveId": { + "type": "string" + }, + "perspectiveName": { + "type": "string" + }, + "channels": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationChannel" + } + }, + "anomalyAlertPreferences": { + "$ref": "#/components/schemas/AnomalyAlertPreferences" + }, + "enabled": { + "type": "boolean" + }, + "defaultPreferences": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "The Cloud Cost Notification Setting definition" + }, + "ResponseDTOListNotificationSetting": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationSetting" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SlackNotificationChannel": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationChannel" + }, + { + "type": "object", + "properties": { + "slackWebHookUrl": { + "type": "string" + } + } + } + ] + }, + "ResponseDTONotificationSetting": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NotificationSetting" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CCMOverview": { + "type": "object", + "properties": { + "costPerDay": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + }, + "totalCost": { + "type": "number", + "format": "double" + }, + "totalCostTrend": { + "type": "number", + "format": "double" + }, + "recommendationsCount": { + "type": "integer", + "format": "int32" + } + }, + "description": "This object contains CCM Overview details" + }, + "CcmDataPoint": { + "type": "object", + "properties": { + "key": { + "$ref": "#/components/schemas/CcmReference" + }, + "value": { + "type": "number" + } + } + }, + "CcmReference": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "type": "string" + } + } + }, + "ResponseDTOCCMOverview": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CCMOverview" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TimeSeriesDataPoints": { + "type": "object", + "properties": { + "values": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CcmDataPoint" + } + }, + "time": { + "type": "integer", + "format": "int64" + } + } + }, + "AnomalyComment": { + "required": [ + "accountId", + "anomalyId" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "anomalyId": { + "type": "string", + "description": "Identifier of the anomaly this comment belongs to" + }, + "comment": { + "type": "string" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "createdAt": { + "type": "integer", + "format": "int64" + } + } + }, + "ResponseDTOListAnomalyComment": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnomalyComment" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyCostTimeSeries": { + "type": "object", + "properties": { + "time": { + "type": "integer", + "format": "int64" + }, + "anomalousCost": { + "type": "number", + "format": "double" + }, + "cost": { + "type": "number", + "format": "double" + } + }, + "description": "This object details cost data about a particular anomaly for given timeStamp" + }, + "ResponseDTOListAnomalyCostTimeSeries": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnomalyCostTimeSeries" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOAnomalyData": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AnomalyData" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyForecastCostTimeSeries": { + "type": "object", + "properties": { + "time": { + "type": "integer", + "description": "The timestamp for the forecasted data in milliseconds since epoch", + "format": "int64" + }, + "forecastValue": { + "type": "number", + "description": "The forecasted cost value at the given time", + "format": "double" + }, + "predictionIntervalUpperBound": { + "type": "number", + "description": "The upper bound of the confidence interval for the forecast", + "format": "double" + }, + "predictionIntervalLowerBound": { + "type": "number", + "description": "The lower bound of the confidence interval for the forecast", + "format": "double" + } + }, + "description": "This object details forecasted cost data about a particular resource associated with an anomaly for given timeStamp, including confidence intervals" + }, + "ResponseDTOListAnomalyForecastCostTimeSeries": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnomalyForecastCostTimeSeries" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyResourceCostTimeSeries": { + "type": "object", + "properties": { + "time": { + "type": "integer", + "format": "int64" + }, + "cost": { + "type": "number", + "format": "double" + } + }, + "description": "This object details cost data about a particular resource associated with an anomaly for given timeStamp" + }, + "ResponseDTOListAnomalyResourceCostTimeSeries": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnomalyResourceCostTimeSeries" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyResourceDetails": { + "type": "object", + "properties": { + "resource": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "cost": { + "type": "number", + "format": "double" + }, + "anomalousCost": { + "type": "number", + "format": "double" + }, + "anomalousCostPercentage": { + "type": "number", + "format": "double" + } + }, + "description": "This object details data about a particular anomalous resource" + }, + "ResponseDTOListAnomalyResourceDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnomalyResourceDetails" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomalyMetrics": { + "type": "object", + "properties": { + "count": { + "type": "number", + "format": "double" + }, + "costImpact": { + "type": "number", + "format": "double" + }, + "status": { + "type": "string" + } + }, + "description": "This object details data about a particular anomaly type" + }, + "AnomalyOverview": { + "type": "object", + "properties": { + "active": { + "$ref": "#/components/schemas/AnomalyMetrics" + }, + "ignored": { + "$ref": "#/components/schemas/AnomalyMetrics" + }, + "archived": { + "$ref": "#/components/schemas/AnomalyMetrics" + }, + "resolved": { + "$ref": "#/components/schemas/AnomalyMetrics" + } + }, + "description": "This object details data about different anomaly type" + }, + "ResponseDTOAnomalyOverview": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AnomalyOverview" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOAnomalyMetrics": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AnomalyMetrics" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOTreeMapLongAnomalyOverview": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/AnomalyOverview" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTODouble": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "number", + "format": "double" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CostOverview": { + "type": "object", + "properties": { + "Trend": { + "type": "number", + "description": "Cost trend" + }, + "Cost": { + "type": "number", + "description": "Total cost" + } + }, + "description": "Overview of the cost." + }, + "ResponseDTOCostOverview": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CostOverview" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CostDetailsQueryParams": { + "type": "object", + "properties": { + "filters": { + "type": "array", + "description": "Filters to be applied on the response.", + "items": { + "$ref": "#/components/schemas/FieldFilter" + } + }, + "groupBy": { + "type": "array", + "description": "Fields on which the response will be grouped by.", + "items": { + "type": "string", + "description": "List of all possible Fields", + "enum": [ + "PERSPECTIVE_ID", + "ANOMALY_ID", + "WORKLOAD", + "WORKLOAD_TYPE", + "CLUSTER_ID", + "CLUSTER_NAME", + "CLUSTER_NAMESPACE", + "CLUSTER_NAMESPACE_ID", + "CLUSTER_WORKLOAD", + "CLUSTER_WORKLOAD_ID", + "CLUSTER_NODE", + "CLUSTER_POD", + "CLUSTER_PARENT_INSTANCE_ID", + "CLUSTER_STORAGE", + "CLUSTER_APPLICATION", + "CLUSTER_ENVIRONMENT", + "CLUSTER_SERVICE", + "CLUSTER_CLOUD_PROVIDER", + "CLUSTER_ECS_SERVICE", + "CLUSTER_ECS_SERVICE_ID", + "CLUSTER_ECS_TASK", + "CLUSTER_ECS_TASK_ID", + "CLUSTER_ECS_LAUNCH_TYPE", + "CLUSTER_ECS_LAUNCH_TYPE_ID", + "NAMESPACE", + "SERVICE", + "SERVICE_NAME", + "GCP_PRODUCT", + "GCP_PROJECT", + "GCP_SKU_ID", + "GCP_SKU_DESCRIPTION", + "AWS_ACCOUNT", + "AWS_SERVICE", + "AWS_INSTANCE_TYPE", + "AWS_USAGE_TYPE", + "AWS_BILLING_ENTITY", + "AWS_LINE_ITEM_TYPE", + "AZURE_SUBSCRIPTION_GUID", + "AZURE_METER_NAME", + "AZURE_METER_CATEGORY", + "AZURE_METER_SUBCATEGORY", + "AZURE_RESOURCE_ID", + "AZURE_RESOURCE_GROUP_NAME", + "AZURE_RESOURCE_TYPE", + "AZURE_RESOURCE", + "AZURE_SERVICE_NAME", + "AZURE_SERVICE_TIER", + "AZURE_INSTANCE_ID", + "AZURE_SUBSCRIPTION_NAME", + "AZURE_PUBLISHER_NAME", + "AZURE_PUBLISHER_TYPE", + "AZURE_RESERVATION_ID", + "AZURE_RESERVATION_NAME", + "AZURE_FREQUENCY", + "AZURE_CHARGE_TYPE", + "AZURE_PRICING_MODEL", + "AZURE_BENEFIT_NAME", + "AZURE_RESOURCE_NAME", + "COMMON_PRODUCT", + "COMMON_REGION", + "COMMON_NONE", + "CLOUD_PROVIDER", + "STATUS", + "REGION", + "ANOMALY_TIME", + "ACTUAL_COST", + "EXPECTED_COST", + "ANOMALOUS_SPEND", + "COST_IMPACT", + "ALL", + "ANOMALOUS_SPEND_PERCENTAGE", + "TOTAL_COST", + "IDLE_COST", + "UNALLOCATED_COST", + "RULE_NAME", + "RULE_SET_NAME", + "POTENTIAL_SAVINGS", + "LAST_EVALUATED_AT", + "ANOMALY_STATUS", + "RECOMMENDATIONS_COUNT", + "ACTUAL_AMOUNT", + "CRITICALITY", + "DURATION", + "UPDATED_AT", + "UPDATED_BY", + "UPDATED_AT_RELATIVE" + ] + } + }, + "timeResolution": { + "type": "string", + "description": "Only applicable for Time Series Endpoints, defaults to DAY", + "enum": [ + "HOUR", + "DAY", + "MONTH", + "WEEK", + "QUARTER", + "YEAR" + ] + }, + "limit": { + "type": "integer", + "description": "Limit on the number of cost values returned, 0 by default.", + "format": "int32" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorting on cost, Descending by default.", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + }, + "offset": { + "type": "integer", + "description": "Offset on the cost values returned, 10 by default.", + "format": "int32" + }, + "skipRoundOff": { + "type": "boolean", + "description": "Skip Rounding off the cost values returned, false by default." + } + }, + "description": "Common query parameters for all cost details APIs" + }, + "FieldFilter": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "List of all possible Fields", + "enum": [ + "PERSPECTIVE_ID", + "ANOMALY_ID", + "WORKLOAD", + "WORKLOAD_TYPE", + "CLUSTER_ID", + "CLUSTER_NAME", + "CLUSTER_NAMESPACE", + "CLUSTER_NAMESPACE_ID", + "CLUSTER_WORKLOAD", + "CLUSTER_WORKLOAD_ID", + "CLUSTER_NODE", + "CLUSTER_POD", + "CLUSTER_PARENT_INSTANCE_ID", + "CLUSTER_STORAGE", + "CLUSTER_APPLICATION", + "CLUSTER_ENVIRONMENT", + "CLUSTER_SERVICE", + "CLUSTER_CLOUD_PROVIDER", + "CLUSTER_ECS_SERVICE", + "CLUSTER_ECS_SERVICE_ID", + "CLUSTER_ECS_TASK", + "CLUSTER_ECS_TASK_ID", + "CLUSTER_ECS_LAUNCH_TYPE", + "CLUSTER_ECS_LAUNCH_TYPE_ID", + "NAMESPACE", + "SERVICE", + "SERVICE_NAME", + "GCP_PRODUCT", + "GCP_PROJECT", + "GCP_SKU_ID", + "GCP_SKU_DESCRIPTION", + "AWS_ACCOUNT", + "AWS_SERVICE", + "AWS_INSTANCE_TYPE", + "AWS_USAGE_TYPE", + "AWS_BILLING_ENTITY", + "AWS_LINE_ITEM_TYPE", + "AZURE_SUBSCRIPTION_GUID", + "AZURE_METER_NAME", + "AZURE_METER_CATEGORY", + "AZURE_METER_SUBCATEGORY", + "AZURE_RESOURCE_ID", + "AZURE_RESOURCE_GROUP_NAME", + "AZURE_RESOURCE_TYPE", + "AZURE_RESOURCE", + "AZURE_SERVICE_NAME", + "AZURE_SERVICE_TIER", + "AZURE_INSTANCE_ID", + "AZURE_SUBSCRIPTION_NAME", + "AZURE_PUBLISHER_NAME", + "AZURE_PUBLISHER_TYPE", + "AZURE_RESERVATION_ID", + "AZURE_RESERVATION_NAME", + "AZURE_FREQUENCY", + "AZURE_CHARGE_TYPE", + "AZURE_PRICING_MODEL", + "AZURE_BENEFIT_NAME", + "AZURE_RESOURCE_NAME", + "COMMON_PRODUCT", + "COMMON_REGION", + "COMMON_NONE", + "CLOUD_PROVIDER", + "STATUS", + "REGION", + "ANOMALY_TIME", + "ACTUAL_COST", + "EXPECTED_COST", + "ANOMALOUS_SPEND", + "COST_IMPACT", + "ALL", + "ANOMALOUS_SPEND_PERCENTAGE", + "TOTAL_COST", + "IDLE_COST", + "UNALLOCATED_COST", + "RULE_NAME", + "RULE_SET_NAME", + "POTENTIAL_SAVINGS", + "LAST_EVALUATED_AT", + "ANOMALY_STATUS", + "RECOMMENDATIONS_COUNT", + "ACTUAL_AMOUNT", + "CRITICALITY", + "DURATION", + "UPDATED_AT", + "UPDATED_BY", + "UPDATED_AT_RELATIVE" + ] + }, + "operator": { + "type": "string", + "description": "List of all possible Operators", + "enum": [ + "NOT_IN", + "IN", + "EQUALS", + "NOT_NULL", + "NULL", + "LIKE", + "GREATER_THAN", + "LESS_THAN", + "GREATER_THAN_EQUALS_TO", + "LESS_THAN_EQUALS_TO", + "AFTER", + "BEFORE" + ] + }, + "values": { + "type": "array", + "description": "List of all values of the filter.", + "items": { + "type": "string", + "description": "List of all values of the filter." + } + } + }, + "description": "Filters return values as per the field, operator & List of string values provided" + }, + "CCMEcsEntity": { + "type": "object", + "properties": { + "launchType": { + "type": "string" + }, + "service": { + "type": "string" + }, + "taskId": { + "type": "string" + } + } + }, + "CCMK8sEntity": { + "type": "object", + "properties": { + "namespace": { + "type": "string" + }, + "workload": { + "type": "string" + }, + "selectedLabels": { + "type": "array", + "items": { + "$ref": "#/components/schemas/K8sLabel" + } + } + } + }, + "ClusterCostDetails": { + "type": "object", + "properties": { + "totalCost": { + "type": "number", + "format": "double" + }, + "idleCost": { + "type": "number", + "format": "double" + }, + "unallocatedCost": { + "type": "number", + "format": "double" + }, + "clusterType": { + "type": "string" + }, + "cluster": { + "type": "string" + }, + "clusterId": { + "type": "string" + }, + "k8s": { + "$ref": "#/components/schemas/CCMK8sEntity" + }, + "ecs": { + "$ref": "#/components/schemas/CCMEcsEntity" + } + }, + "description": "Details of cluster cost" + }, + "K8sLabel": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "ResponseDTOListClusterCostDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ClusterCostDetails" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ClusterCostDetailsQueryParams": { + "type": "object", + "properties": { + "aggregations": { + "type": "array", + "description": "Fields which will be aggregated in the response", + "items": { + "$ref": "#/components/schemas/CCMAggregation" + } + }, + "filters": { + "type": "array", + "description": "Filters to be applied on the response.", + "items": { + "$ref": "#/components/schemas/FieldFilter" + } + }, + "groupBy": { + "type": "array", + "description": "Fields on which the response will be grouped by.", + "items": { + "type": "string", + "description": "List of all possible Fields", + "enum": [ + "PERSPECTIVE_ID", + "ANOMALY_ID", + "WORKLOAD", + "WORKLOAD_TYPE", + "CLUSTER_ID", + "CLUSTER_NAME", + "CLUSTER_NAMESPACE", + "CLUSTER_NAMESPACE_ID", + "CLUSTER_WORKLOAD", + "CLUSTER_WORKLOAD_ID", + "CLUSTER_NODE", + "CLUSTER_POD", + "CLUSTER_PARENT_INSTANCE_ID", + "CLUSTER_STORAGE", + "CLUSTER_APPLICATION", + "CLUSTER_ENVIRONMENT", + "CLUSTER_SERVICE", + "CLUSTER_CLOUD_PROVIDER", + "CLUSTER_ECS_SERVICE", + "CLUSTER_ECS_SERVICE_ID", + "CLUSTER_ECS_TASK", + "CLUSTER_ECS_TASK_ID", + "CLUSTER_ECS_LAUNCH_TYPE", + "CLUSTER_ECS_LAUNCH_TYPE_ID", + "NAMESPACE", + "SERVICE", + "SERVICE_NAME", + "GCP_PRODUCT", + "GCP_PROJECT", + "GCP_SKU_ID", + "GCP_SKU_DESCRIPTION", + "AWS_ACCOUNT", + "AWS_SERVICE", + "AWS_INSTANCE_TYPE", + "AWS_USAGE_TYPE", + "AWS_BILLING_ENTITY", + "AWS_LINE_ITEM_TYPE", + "AZURE_SUBSCRIPTION_GUID", + "AZURE_METER_NAME", + "AZURE_METER_CATEGORY", + "AZURE_METER_SUBCATEGORY", + "AZURE_RESOURCE_ID", + "AZURE_RESOURCE_GROUP_NAME", + "AZURE_RESOURCE_TYPE", + "AZURE_RESOURCE", + "AZURE_SERVICE_NAME", + "AZURE_SERVICE_TIER", + "AZURE_INSTANCE_ID", + "AZURE_SUBSCRIPTION_NAME", + "AZURE_PUBLISHER_NAME", + "AZURE_PUBLISHER_TYPE", + "AZURE_RESERVATION_ID", + "AZURE_RESERVATION_NAME", + "AZURE_FREQUENCY", + "AZURE_CHARGE_TYPE", + "AZURE_PRICING_MODEL", + "AZURE_BENEFIT_NAME", + "AZURE_RESOURCE_NAME", + "COMMON_PRODUCT", + "COMMON_REGION", + "COMMON_NONE", + "CLOUD_PROVIDER", + "STATUS", + "REGION", + "ANOMALY_TIME", + "ACTUAL_COST", + "EXPECTED_COST", + "ANOMALOUS_SPEND", + "COST_IMPACT", + "ALL", + "ANOMALOUS_SPEND_PERCENTAGE", + "TOTAL_COST", + "IDLE_COST", + "UNALLOCATED_COST", + "RULE_NAME", + "RULE_SET_NAME", + "POTENTIAL_SAVINGS", + "LAST_EVALUATED_AT", + "ANOMALY_STATUS", + "RECOMMENDATIONS_COUNT", + "ACTUAL_AMOUNT", + "CRITICALITY", + "DURATION", + "UPDATED_AT", + "UPDATED_BY", + "UPDATED_AT_RELATIVE" + ] + } + }, + "timeResolution": { + "type": "string", + "description": "Only applicable for Time Series Endpoints, defaults to DAY", + "enum": [ + "HOUR", + "DAY", + "MONTH", + "WEEK", + "QUARTER", + "YEAR" + ] + }, + "limit": { + "type": "integer", + "description": "Limit on the number of cost values returned, 0 by default.", + "format": "int32" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorting on cost, Descending by default.", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + }, + "offset": { + "type": "integer", + "description": "Offset on the cost values returned, 10 by default.", + "format": "int32" + }, + "skipRoundOff": { + "type": "boolean", + "description": "Skip Rounding off the cost values returned, false by default." + }, + "selectedLabels": { + "type": "array", + "description": "The response will contain values corresponding to these labels", + "items": { + "type": "string", + "description": "The response will contain values corresponding to these labels" + } + } + }, + "description": "Common query parameters for all cluster cost details APIs" + }, + "PerspectiveEntityStatsData": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/QLCEViewEntityStatsDataPoint" + } + } + } + }, + "QLCEViewEntityStatsDataPoint": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "cost": { + "type": "number" + }, + "costTrend": { + "type": "number" + }, + "isClusterPerspective": { + "type": "boolean", + "writeOnly": true + }, + "clusterPerspective": { + "type": "boolean" + } + } + }, + "ResponseDTOPerspectiveEntityStatsData": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PerspectiveEntityStatsData" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PerspectiveTimeSeriesData": { + "type": "object", + "properties": { + "stats": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + }, + "cpuUtilValues": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + }, + "memoryUtilValues": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + }, + "cpuRequest": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + }, + "cpuLimit": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + }, + "memoryRequest": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + }, + "memoryLimit": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesDataPoints" + } + } + } + }, + "ResponseDTOPerspectiveTimeSeriesData": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PerspectiveTimeSeriesData" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ExternalDataFiles": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "providerName": { + "type": "string", + "description": "providerName" + }, + "name": { + "type": "string", + "description": "filename" + }, + "uploadStatus": { + "type": "string", + "description": "status of upload", + "enum": [ + "INPROGRESS", + "COMPLETE", + "FAILED", + "UNKNOWN" + ] + }, + "invoiceMonth": { + "type": "string", + "description": "invoice_month" + }, + "ingestionStatus": { + "type": "string", + "description": "status of file ingestion" + }, + "description": { + "type": "string", + "description": "description" + }, + "md5": { + "type": "string", + "description": "md5 of the file" + }, + "signedUrlUsed": { + "type": "boolean", + "description": "signedUrlUsed - truncated" + }, + "cloudStoragePath": { + "type": "string", + "description": "cloudStoragePath" + }, + "fileExtension": { + "type": "string", + "description": "externalDataFileExtension", + "enum": [ + "CSV" + ] + }, + "providerId": { + "type": "string", + "description": "Identifier of the external data provider" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the information on the external data file uploads for an account" + }, + "ResponseDTOExternalDataFiles": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ExternalDataFiles" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CreateExternalDataFilesDTO": { + "type": "object", + "properties": { + "externalDataFiles": { + "$ref": "#/components/schemas/ExternalDataFiles" + } + } + }, + "ExternalDataProvider": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "providerType": { + "type": "string", + "description": "providerType", + "enum": [ + "SNOWFLAKE", + "MONGO", + "CUSTOM" + ] + }, + "name": { + "type": "string", + "description": "name" + }, + "providerName": { + "type": "string", + "description": "providerName" + }, + "status": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/InvoicePeriodStatus" + }, + "description": "data exists" + }, + "fileExists": { + "type": "boolean", + "description": "files exists" + }, + "invoicePeriod": { + "type": "string", + "description": "invoice period", + "enum": [ + "MONTHLY", + "YEARLY", + "QUARTERLY" + ] + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "lastSyncedAt": { + "type": "integer", + "description": "lastSyncedAt", + "format": "int64" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the information on the external data providers for an account" + }, + "InvoicePeriodStatus": { + "type": "object", + "properties": { + "status": { + "type": "string" + }, + "message": { + "type": "string" + }, + "lastSyncedAt": { + "type": "integer", + "format": "int64" + } + }, + "description": "data exists" + }, + "ResponseDTOExternalDataProvider": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ExternalDataProvider" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CreateExternalDataProviderDTO": { + "type": "object", + "properties": { + "externalDataProvider": { + "$ref": "#/components/schemas/ExternalDataProvider" + } + } + }, + "ExternalDataIngestionRequest": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "accountId" + }, + "providerId": { + "type": "string", + "description": "providerId" + }, + "invoicePeriod": { + "type": "array", + "description": "invoicePeriod", + "items": { + "type": "string", + "description": "invoicePeriod" + } + } + }, + "description": "This has the query to list Enforcement Count" + }, + "ResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "object" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListExternalDataProvider": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExternalDataProvider" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOMapStringListExternalDataFiles": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExternalDataFiles" + } + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ExternalDataProviderList": { + "type": "object", + "properties": { + "providerList": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "GovernancePromptRule": { + "type": "object", + "properties": { + "description": { + "type": "string" + }, + "ruleYaml": { + "type": "string" + } + } + }, + "ResponseDTOListGovernancePromptRule": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GovernancePromptRule" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EnforcementDetails": { + "type": "object", + "properties": { + "enforcementName": { + "type": "string", + "description": "Enforcement Name" + }, + "schedule": { + "type": "string", + "description": "schedule" + }, + "description": { + "type": "string", + "description": "description" + }, + "accounts": { + "type": "array", + "description": "Target Account/Subscription/Project Ids", + "items": { + "type": "string", + "description": "Target Account/Subscription/Project Ids" + } + }, + "regions": { + "type": "array", + "description": "Target Region", + "items": { + "type": "string", + "description": "Target Region" + } + }, + "ruleIds": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "rules ids and list of enforcement" + }, + "description": "rules ids and list of enforcement" + }, + "ruleSetIds": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "rules pack ids and list of enforcement" + }, + "description": "rules pack ids and list of enforcement" + }, + "isDryRun": { + "type": "boolean", + "description": "isDryRun" + }, + "isEnabled": { + "type": "boolean", + "description": "isEnabled" + }, + "executionTimezone": { + "type": "string", + "description": "executionTimezone" + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "accountIdAndNames": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Target Account/Subscription/Project Id and Names" + }, + "description": "Target Account/Subscription/Project Id and Names" + } + }, + "description": "This object will contain the complete definition of a ExecutionEnforcementDetails" + }, + "ResponseDTOEnforcementDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnforcementDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTORuleEnforcementRecommendationList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleEnforcementRecommendationList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleEnforcementRecommendation": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "name": { + "type": "string", + "description": "name" + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "tags": { + "type": "array", + "description": "Tags", + "items": { + "type": "string", + "description": "Tags" + } + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "ruleIds": { + "type": "array", + "description": "rulesIds", + "items": { + "type": "string", + "description": "rulesIds" + } + }, + "ruleSetIDs": { + "type": "array", + "description": "ruleSetIDs", + "items": { + "type": "string", + "description": "ruleSetIDs" + } + }, + "executionSchedule": { + "type": "string", + "description": "executionSchedule" + }, + "executionTimezone": { + "type": "string", + "description": "executionTimezone" + }, + "targetAccounts": { + "type": "array", + "description": "targetAccounts", + "items": { + "type": "string", + "description": "targetAccounts" + } + }, + "targetRegions": { + "type": "array", + "description": "targetRegions", + "items": { + "type": "string", + "description": "targetRegions" + } + }, + "isDryRun": { + "type": "boolean", + "description": "isDryRun" + }, + "runCount": { + "type": "integer", + "description": "runCount", + "format": "int32" + }, + "isEnabled": { + "type": "boolean", + "description": "isEnabled" + }, + "ruleEnforcementRecommendationStatus": { + "type": "string", + "description": "ruleEnforcementRecommendationStatus", + "enum": [ + "NEW", + "DISMISSED", + "ACCEPTED" + ] + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Rule Enforcement generated by AI assistant" + }, + "RuleEnforcementRecommendationList": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total items", + "format": "int64" + }, + "ruleEnforcementRecommendations": { + "type": "array", + "description": "List of Rule Enforcement Recommendations", + "items": { + "$ref": "#/components/schemas/RuleEnforcementRecommendation" + } + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Rule Enforcement Recommendation List" + }, + "ResponseDTORuleEnforcementRecommendation": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleEnforcementRecommendation" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "GovernanceNotification": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "name": { + "type": "string", + "description": "name" + }, + "cloudProvider": { + "type": "string", + "description": "cloud provider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "resourceTypes": { + "type": "array", + "description": "resource types", + "items": { + "type": "string", + "description": "resource types" + } + }, + "cloudAccountIds": { + "type": "array", + "description": "cloud account ids", + "items": { + "type": "string", + "description": "cloud account ids" + } + }, + "resourceCount": { + "type": "integer", + "description": "resource count", + "format": "int64" + }, + "cost": { + "type": "number", + "description": "cost", + "format": "double" + }, + "emailIds": { + "type": "array", + "description": "email ids", + "items": { + "type": "string", + "description": "email ids" + } + }, + "isAttachmentRequired": { + "type": "boolean", + "description": "is attachment required" + }, + "isEnabled": { + "type": "boolean", + "description": "is enabled" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the complete definition of a Governance Notification" + }, + "ResponseDTOGovernanceNotification": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GovernanceNotification" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListGovernanceNotification": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GovernanceNotification" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOMapStringMapStringInteger": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "object", + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "integer", + "format": "int32" + } + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOLong": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "integer", + "format": "int64" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOMapStringDouble": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "object", + "additionalProperties": { + "type": "number", + "format": "double" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTORuleRecommendationSummary": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleRecommendationSummary" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleRecommendationExecution": { + "type": "object", + "properties": { + "connectorId": { + "type": "string" + }, + "targetId": { + "type": "string" + }, + "targetName": { + "type": "string" + }, + "targetRegion": { + "type": "string" + }, + "executionId": { + "type": "string" + }, + "statusMessage": { + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "FAILED", + "IN_PROGRESS", + "PARTIAL_SUCCESS", + "SUCCESS", + "IGNORED" + ] + }, + "potentialSavings": { + "type": "number", + "format": "double" + }, + "isHarnessError": { + "type": "boolean" + } + } + }, + "RuleRecommendationSummary": { + "type": "object", + "properties": { + "id": { + "$ref": "#/components/schemas/RuleRecommendationSummaryId" + }, + "cloudProvider": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "ruleName": { + "type": "string" + }, + "isOOTB": { + "type": "boolean" + }, + "lastEvaluatedAt": { + "type": "integer", + "format": "int64" + }, + "potentialSavings": { + "type": "number", + "format": "double" + }, + "status": { + "type": "string", + "enum": [ + "FAILED", + "IN_PROGRESS", + "PARTIAL_SUCCESS", + "SUCCESS", + "IGNORED" + ] + }, + "executions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RuleRecommendationExecution" + } + }, + "totalExecutions": { + "type": "integer", + "format": "int32" + }, + "totalFailedExecutions": { + "type": "integer", + "format": "int32" + }, + "totalRecommendations": { + "type": "integer", + "format": "int64" + } + }, + "description": "List of rule recommendation summaries" + }, + "RuleRecommendationSummaryId": { + "type": "object", + "properties": { + "ruleId": { + "type": "string" + }, + "accountId": { + "type": "string" + } + } + }, + "ResourceBreakdown": { + "type": "object", + "properties": { + "resourceId": { + "type": "string" + }, + "cost": { + "type": "number", + "format": "double" + }, + "savings": { + "type": "number", + "format": "double" + }, + "actionApplied": { + "type": "boolean" + } + }, + "description": "This object stores resource details for a policy execution." + }, + "ResponseDTORuleExecutionList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleExecutionList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleExecution": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "jobId": { + "type": "string", + "description": "faktory job id" + }, + "ruleEnforcementRecommendationIdentifier": { + "type": "string", + "description": "ruleEnforcementRecommendationIdentifier" + }, + "ruleEnforcementRecommendationName": { + "type": "string", + "description": "ruleEnforcementRecommendationName" + }, + "ruleEnforcementIdentifier": { + "type": "string", + "description": "ruleEnforcementIdentifier" + }, + "ruleEnforcementName": { + "type": "string", + "description": "ruleEnforcementName" + }, + "ruleIdentifier": { + "type": "string", + "description": "ruleIdentifier" + }, + "ruleName": { + "type": "string", + "description": "ruleName" + }, + "OOTB": { + "type": "boolean", + "writeOnly": true + }, + "rulePackIdentifier": { + "type": "string", + "description": "rulePackIdentifier" + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "isDryRun": { + "type": "boolean", + "description": "isDryRun" + }, + "targetAccount": { + "type": "string", + "description": "targetAccount" + }, + "targetAccountName": { + "type": "string", + "description": "targetAccountName" + }, + "targetRegions": { + "type": "array", + "description": "targetRegions", + "items": { + "type": "string", + "description": "targetRegions" + } + }, + "executionLogPath": { + "type": "string", + "description": "executionLogPath" + }, + "resourceCount": { + "type": "integer", + "description": "resourceCount", + "format": "int64" + }, + "actionedResourceCount": { + "type": "integer", + "description": "actionedResourceCount", + "format": "int64" + }, + "actionFilePresent": { + "type": "boolean", + "description": "actionFilePresent" + }, + "actionedResourceFileName": { + "type": "string", + "description": "actionedResourceFileName" + }, + "executionLogBucketType": { + "type": "string", + "description": "executionLogBucketType" + }, + "executionType": { + "type": "string", + "description": "executionType", + "enum": [ + "INTERNAL", + "EXTERNAL" + ] + }, + "executionStatus": { + "type": "string", + "description": "executionStatus", + "enum": [ + "FAILED", + "ENQUEUED", + "PARTIAL_SUCCESS", + "SUCCESS" + ] + }, + "executionCompletedAt": { + "type": "integer", + "description": "executionCompletedAt", + "format": "int64" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "errorMessage": { + "type": "string", + "description": "error generated by custodian" + }, + "resourceType": { + "type": "string", + "description": "resourceType" + }, + "actionType": { + "type": "string", + "description": "actionType" + }, + "costComputed": { + "type": "boolean", + "description": "costComputed" + }, + "costComputationMessage": { + "type": "string", + "description": "costComputationMessage" + }, + "cost": { + "type": "number", + "description": "cost", + "format": "double" + }, + "savings": { + "type": "number", + "description": "savings", + "format": "double" + }, + "costType": { + "type": "string", + "description": "costType", + "enum": [ + "POTENTIAL", + "REALIZED" + ] + }, + "bqDataIngestionStatus": { + "type": "string", + "description": "bqDataIngestionStatus", + "enum": [ + "NOT_STARTED", + "FAILED", + "IN_PROGRESS", + "SUCCESSFUL" + ] + }, + "ttl": { + "type": "string", + "format": "date-time" + }, + "isMultiPolicyRule": { + "type": "boolean", + "description": "isMultiPolicyRule", + "default": false + }, + "subRuleExecutionDetails": { + "type": "array", + "description": "subRuleExecutionDetails", + "items": { + "$ref": "#/components/schemas/SubRuleExecutionDetails" + } + }, + "isCostBreakdownGenerated": { + "type": "boolean", + "description": "isCostBreakdownGenerated" + }, + "resourceBreakdownList": { + "type": "array", + "description": "resourceBreakdownList", + "items": { + "$ref": "#/components/schemas/ResourceBreakdown" + } + }, + "ootb": { + "type": "boolean" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Policy Execution" + }, + "RuleExecutionList": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total items", + "format": "int32" + }, + "ruleExecution": { + "type": "array", + "description": "List of rules executions", + "items": { + "$ref": "#/components/schemas/RuleExecution" + } + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Enforcement List" + }, + "SubRuleExecutionDetails": { + "type": "object", + "properties": { + "policyName": { + "type": "string" + }, + "executionLogPath": { + "type": "string" + }, + "resourceCount": { + "type": "integer", + "format": "int64" + }, + "actionedResourceCount": { + "type": "integer", + "format": "int64" + }, + "actionFilePresent": { + "type": "boolean" + }, + "actionedResourceFileName": { + "type": "string" + }, + "executionLogBucketType": { + "type": "string" + }, + "executionType": { + "type": "string", + "enum": [ + "INTERNAL", + "EXTERNAL" + ] + }, + "executionStatus": { + "type": "string", + "enum": [ + "FAILED", + "ENQUEUED", + "PARTIAL_SUCCESS", + "SUCCESS" + ] + }, + "bqDataIngestionStatus": { + "type": "string", + "enum": [ + "NOT_STARTED", + "FAILED", + "IN_PROGRESS", + "SUCCESSFUL" + ] + }, + "errorMessage": { + "type": "string" + }, + "executionCompletedAt": { + "type": "integer", + "format": "int64" + }, + "resourceType": { + "type": "string" + }, + "actionType": { + "type": "string" + }, + "costComputed": { + "type": "boolean" + }, + "costComputationMessage": { + "type": "string" + }, + "cost": { + "type": "number", + "format": "double" + }, + "savings": { + "type": "number", + "format": "double" + }, + "resourceBreakdownList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceBreakdown" + } + }, + "isCostBreakdownGenerated": { + "type": "boolean" + } + }, + "description": "This object stores execution details for a policy execution of a multi policy rule." + }, + "ResponseDTORuleRecommendationSummaryList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleRecommendationSummaryList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleRecommendationSummaryList": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total items", + "format": "int32" + }, + "ruleRecommendationSummaries": { + "type": "array", + "description": "List of rule recommendation summaries", + "items": { + "$ref": "#/components/schemas/RuleRecommendationSummary" + } + } + }, + "description": "This object will contain the complete definition of CCM Governance Rule Health Summary List" + }, + "RuleRecommendationHealthSummaryFilter": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "accountId" + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "isOOTB": { + "type": "boolean", + "description": "isOOTB" + }, + "healthStatus": { + "type": "string", + "description": "healthStatus", + "enum": [ + "FAILED", + "IN_PROGRESS", + "PARTIAL_SUCCESS", + "SUCCESS", + "IGNORED" + ] + }, + "search": { + "type": "string", + "description": "search" + }, + "limit": { + "type": "integer", + "description": "limit", + "format": "int32" + }, + "offset": { + "type": "integer", + "description": "offset", + "format": "int32" + }, + "orderBy": { + "type": "array", + "description": "orderBy", + "items": { + "$ref": "#/components/schemas/CCMSort" + } + } + }, + "description": "This has the query to list the Rule Recommendation Health Summary" + }, + "ResponseDTORuleEnforcement": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleEnforcement" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleEnforcement": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "name": { + "type": "string", + "description": "name" + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "tags": { + "type": "array", + "description": "Tags", + "items": { + "type": "string", + "description": "Tags" + } + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "ruleIds": { + "type": "array", + "description": "rulesIds", + "items": { + "type": "string", + "description": "rulesIds" + } + }, + "ruleSetIDs": { + "type": "array", + "description": "ruleSetIDs", + "items": { + "type": "string", + "description": "ruleSetIDs" + } + }, + "executionSchedule": { + "type": "string", + "description": "executionSchedule" + }, + "executionTimezone": { + "type": "string", + "description": "executionTimezone" + }, + "targetAccounts": { + "type": "array", + "description": "targetAccounts", + "items": { + "type": "string", + "description": "targetAccounts" + } + }, + "targetRegions": { + "type": "array", + "description": "targetRegions", + "items": { + "type": "string", + "description": "targetRegions" + } + }, + "isDryRun": { + "type": "boolean", + "description": "isDryRun" + }, + "deleted": { + "type": "boolean", + "description": "deleted" + }, + "runCount": { + "type": "integer", + "description": "runCount", + "format": "int32" + }, + "isEnabled": { + "type": "boolean", + "description": "isEnabled" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Policy enforcement" + }, + "CreateRuleEnforcementDTO": { + "type": "object", + "properties": { + "ruleEnforcement": { + "$ref": "#/components/schemas/RuleEnforcement" + } + } + }, + "EnforcementCount": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "account id" + }, + "ruleIds": { + "type": "object", + "additionalProperties": { + "type": "array", + "description": "rules ids and list of enforcement", + "items": { + "$ref": "#/components/schemas/LinkedEnforcements" + } + }, + "description": "rules ids and list of enforcement" + }, + "ruleSetIds": { + "type": "object", + "additionalProperties": { + "type": "array", + "description": "rules pack ids and list of enforcement", + "items": { + "$ref": "#/components/schemas/LinkedEnforcements" + } + }, + "description": "rules pack ids and list of enforcement" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Enforcement Count" + }, + "LinkedEnforcements": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "description": "rules pack ids and list of enforcement" + }, + "ResponseDTOEnforcementCount": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EnforcementCount" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "EnforcementCountDTO": { + "type": "object", + "properties": { + "enforcementCount": { + "$ref": "#/components/schemas/EnforcementCountRequest" + } + } + }, + "EnforcementCountRequest": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "account id" + }, + "ruleIds": { + "type": "array", + "description": "rulesName", + "items": { + "type": "string", + "description": "rulesName" + } + }, + "ruleSetIds": { + "type": "array", + "description": "rulesSetName", + "items": { + "type": "string", + "description": "rulesSetName" + } + } + }, + "description": "This has the query to list Enforcement Count" + }, + "ResponseDTORuleEnforcementList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleEnforcementList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleEnforcementList": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total items", + "format": "int64" + }, + "ruleEnforcements": { + "type": "array", + "description": "List of Rule Enforcements", + "items": { + "$ref": "#/components/schemas/RuleEnforcement" + } + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Rule Enforcement List" + }, + "CreateRuleExecutionFilterDTO": { + "type": "object", + "properties": { + "policyExecutionFilter": { + "$ref": "#/components/schemas/RuleExecutionFilter" + } + } + }, + "RuleExecutionFilter": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "accountId" + }, + "targetAccount": { + "type": "array", + "description": "Account Name", + "items": { + "type": "string", + "description": "Account Name" + } + }, + "executionStatus": { + "type": "string", + "description": "Execution Status", + "enum": [ + "FAILED", + "ENQUEUED", + "PARTIAL_SUCCESS", + "SUCCESS" + ] + }, + "region": { + "type": "array", + "description": "region", + "items": { + "type": "string", + "description": "region" + } + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "cloudProviders": { + "type": "array", + "description": "cloudProviders", + "items": { + "type": "string", + "description": "cloudProviders", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + } + }, + "ruleIds": { + "type": "array", + "description": "ruleId", + "items": { + "type": "string", + "description": "ruleId" + } + }, + "ruleSetIds": { + "type": "array", + "description": "rulePackId", + "items": { + "type": "string", + "description": "rulePackId" + } + }, + "executionIds": { + "type": "array", + "description": "executionIds", + "items": { + "type": "string", + "description": "executionIds" + } + }, + "ruleEnforcementId": { + "type": "array", + "description": "ruleEnforcementId", + "items": { + "type": "string", + "description": "ruleEnforcementId" + } + }, + "ruleEnforcementRecommendationId": { + "type": "array", + "description": "ruleEnforcementRecommendationId", + "items": { + "type": "string", + "description": "ruleEnforcementRecommendationId" + } + }, + "time": { + "type": "array", + "description": "Time", + "items": { + "$ref": "#/components/schemas/CCMTimeFilter" + } + }, + "limit": { + "type": "integer", + "description": "limit", + "format": "int32" + }, + "offset": { + "type": "integer", + "description": "offset", + "format": "int32" + }, + "savings": { + "type": "number", + "description": "savings", + "format": "double" + }, + "ruleExecutionSortType": { + "type": "string", + "description": "ruleExecutionSortType", + "enum": [ + "COST", + "LAST_UPDATED_AT", + "RESOURCE_COUNT" + ] + }, + "sortOrder": { + "type": "string", + "description": "sortOrder", + "enum": [ + "ASCENDING", + "DESCENDING" + ] + }, + "resourceCountGreaterThanZero": { + "type": "boolean", + "description": "resourceCountGreaterThanZero" + }, + "costType": { + "type": "string", + "description": "costType", + "enum": [ + "POTENTIAL", + "REALIZED" + ] + }, + "isDryRun": { + "type": "boolean", + "description": "isDryRun" + } + }, + "description": "This has the query to list the RuleExecution" + }, + "FilterValues": { + "type": "object", + "properties": { + "columns": { + "type": "array", + "items": { + "type": "string" + } + }, + "filter": { + "$ref": "#/components/schemas/CCMRecommendationFilterProperties" + } + }, + "description": "The applicable 'columns' values are 'name', 'resourceType', 'namespace', 'clusterName'" + }, + "ResponseDTOFilterValues": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/FilterValues" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTORuleExecution": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleExecution" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListSubRuleResponseDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SubRuleResponseDetails" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SubRuleResponseDetails": { + "type": "object", + "properties": { + "policyName": { + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "FAILED", + "ENQUEUED", + "PARTIAL_SUCCESS", + "SUCCESS" + ] + }, + "response": { + "type": "string" + }, + "errorMessage": { + "type": "string" + }, + "actionFilePresent": { + "type": "boolean" + } + }, + "description": "This object stores response details for a sub rule of a multi policy rule." + }, + "ResponseDTOListRuleExecution": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RuleExecution" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTORule": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CcmRule" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CcmRule": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "name": { + "type": "string", + "description": "name" + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "rulesYaml": { + "type": "string", + "description": "Get YAML of the policy" + }, + "tags": { + "type": "array", + "description": "Tags", + "items": { + "type": "string", + "description": "Tags" + } + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "versionLabel": { + "type": "string", + "description": "versionLabel" + }, + "isStablePolicy": { + "type": "boolean", + "description": "isStablePolicy" + }, + "storeType": { + "type": "string", + "description": "storeType", + "enum": [ + "INLINE", + "REMOTE" + ] + }, + "isOOTB": { + "type": "boolean", + "description": "isOOTB" + }, + "deleted": { + "type": "boolean", + "description": "deleted" + }, + "forRecommendation": { + "type": "boolean", + "description": "forRecommendation" + }, + "resourceType": { + "type": "string", + "description": "resourceType" + }, + "isMultiPolicyRule": { + "type": "boolean", + "description": "isMultiPolicyRule", + "default": false + }, + "subRulePolicyDetails": { + "type": "array", + "description": "subRulePolicyDetails", + "items": { + "$ref": "#/components/schemas/SubRulePolicyDetails" + } + }, + "savings": { + "maximum": 100, + "minimum": 0, + "type": "number", + "description": "savings", + "format": "double" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Policies" + }, + "SubRulePolicyDetails": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "yaml": { + "type": "string" + }, + "resourceType": { + "type": "string" + } + }, + "description": "This object stores policy details for a multi policy rule." + }, + "CloneRuleDTO": { + "type": "object", + "properties": { + "ruleClone": { + "$ref": "#/components/schemas/RuleClone" + } + } + }, + "RuleClone": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + } + }, + "description": "This is the view of Rule Clone as defined in Cloud asset Governance Harness." + }, + "CreateRuleDTO": { + "type": "object", + "properties": { + "rule": { + "$ref": "#/components/schemas/CcmRule" + } + } + }, + "GovernanceEnqueueResponseDTO": { + "type": "object", + "properties": { + "ruleExecutionId": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ResponseDTOGovernanceEnqueueResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/GovernanceEnqueueResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AwsRecommendationAdhocDTO": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/RecommendationAdhocDTO" + }, + { + "type": "object", + "properties": { + "roleArn": { + "type": "string" + }, + "externalId": { + "type": "string" + }, + "targetAccountId": { + "type": "string" + }, + "targetAccountName": { + "type": "string" + } + } + } + ] + }, + "AzureRecommendationAdhocDTO": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/RecommendationAdhocDTO" + }, + { + "type": "object", + "properties": { + "tenantId": { + "type": "string" + }, + "subscriptionId": { + "type": "string" + }, + "subscriptionName": { + "type": "string" + }, + "clientId": { + "type": "string" + } + } + } + ] + }, + "GcpRecommendationAdhocDTO": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/RecommendationAdhocDTO" + }, + { + "type": "object", + "properties": { + "projectId": { + "type": "string" + }, + "serviceAccountEmail": { + "type": "string" + } + } + } + ] + }, + "GovernanceJobEnqueueDTO": { + "type": "object", + "properties": { + "ruleEnforcementId": { + "type": "string" + }, + "ruleEnforcementRecommendationId": { + "type": "string" + }, + "targetAccountDetails": { + "$ref": "#/components/schemas/RecommendationAdhocDTO" + }, + "ruleCloudProviderType": { + "type": "string", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "ruleId": { + "type": "string" + }, + "policy": { + "type": "string" + }, + "targetRegion": { + "type": "string" + }, + "isDryRun": { + "type": "boolean" + }, + "isOOTB": { + "type": "boolean" + }, + "executionType": { + "type": "string", + "enum": [ + "INTERNAL", + "EXTERNAL" + ] + }, + "isMultiPolicyRule": { + "type": "boolean", + "writeOnly": true + }, + "subRulePolicyDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SubRulePolicyDetails" + } + }, + "isGovCloudConnector": { + "type": "boolean", + "writeOnly": true + }, + "ruleExecutionId": { + "type": "string" + }, + "govCloudConnector": { + "type": "boolean" + }, + "multiPolicyRule": { + "type": "boolean" + } + } + }, + "Oidcauthparams": { + "type": "object", + "properties": { + "workloadIdentityPoolID": { + "type": "string" + }, + "providerID": { + "type": "string" + }, + "projectNumberID": { + "type": "string" + }, + "serviceAccountEmail": { + "type": "string" + } + } + }, + "RecommendationAdhocDTO": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "targetInfo": { + "type": "string" + }, + "authType": { + "type": "string" + }, + "roleInfo": { + "type": "string" + }, + "roleId": { + "type": "string" + }, + "targetName": { + "type": "string" + }, + "tenantInfo": { + "type": "string" + }, + "cloudConnectorId": { + "type": "string" + }, + "isGovCloudConnector": { + "type": "boolean" + }, + "isCostBreakdownRequired": { + "type": "boolean" + }, + "oidcauthparams": { + "$ref": "#/components/schemas/Oidcauthparams" + }, + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "GovernanceAdhocEnqueueDTOV2": { + "required": [ + "ruleId", + "targetAccounts" + ], + "type": "object", + "properties": { + "targetAccounts": { + "type": "array", + "description": "Target account_id/subscription_id/project_id", + "items": { + "type": "string", + "description": "Target account_id/subscription_id/project_id" + } + }, + "targetRegions": { + "type": "array", + "description": "Target region required for AWS/AZURE", + "items": { + "type": "string", + "description": "Target region required for AWS/AZURE" + } + }, + "ruleId": { + "type": "string", + "description": "Rule id/uuid" + }, + "isDryRun": { + "type": "boolean", + "description": "Set to true for dry run or false for actual run", + "default": true + } + } + }, + "ResponseDTORuleList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleList": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total items", + "format": "int32" + }, + "rules": { + "type": "array", + "description": "List of rules executions", + "items": { + "$ref": "#/components/schemas/CcmRule" + } + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Rule List" + }, + "ListDTO": { + "type": "object", + "properties": { + "query": { + "$ref": "#/components/schemas/RuleRequest" + } + } + }, + "RuleRequest": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "account id" + }, + "isOOTB": { + "type": "boolean", + "description": "isOOTBPolicy" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "tags": { + "type": "string", + "description": "Tags" + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider" + }, + "policyIds": { + "type": "array", + "description": "policyIds", + "items": { + "type": "string", + "description": "policyIds" + } + }, + "isStablePolicy": { + "type": "boolean", + "description": "isStablePolicy" + }, + "search": { + "type": "string", + "description": "search" + }, + "limit": { + "type": "integer", + "description": "limit", + "format": "int32" + }, + "offset": { + "type": "integer", + "description": "offset", + "format": "int32" + }, + "orderBy": { + "type": "array", + "description": "The order by condition for Rule query", + "items": { + "$ref": "#/components/schemas/CCMSort" + } + }, + "resourceType": { + "type": "string", + "description": "resourceType" + }, + "forRecommendation": { + "type": "boolean", + "description": "forRecommendation" + } + }, + "description": "This has the query to list the policies" + }, + "ResponseDTORuleSet": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleSet" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleSet": { + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "name": { + "type": "string", + "description": "name" + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "tags": { + "type": "array", + "description": "Tags", + "items": { + "type": "string", + "description": "Tags" + } + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider", + "enum": [ + "AWS", + "AZURE", + "GCP" + ] + }, + "rulesIdentifier": { + "type": "array", + "description": "List of rules identifiers from governancePolicy collection", + "items": { + "type": "string", + "description": "List of rules identifiers from governancePolicy collection" + } + }, + "isOOTB": { + "type": "boolean", + "description": "is OOTB flag" + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Policy set" + }, + "CreateRuleSetDTO": { + "type": "object", + "properties": { + "ruleSet": { + "$ref": "#/components/schemas/RuleSet" + } + } + }, + "ResponseDTORuleSetList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RuleSetList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RuleSetList": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total items", + "format": "int32" + }, + "ruleSet": { + "type": "array", + "description": "List of rules executions", + "items": { + "$ref": "#/components/schemas/RuleSet" + } + } + }, + "description": "This object will contain the complete definition of a Cloud Cost RuleSet List" + }, + "CreateRuleSetFilterDTO": { + "type": "object", + "properties": { + "ruleSet": { + "$ref": "#/components/schemas/RuleSetRequest" + } + } + }, + "RuleSetRequest": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "account id" + }, + "isOOTB": { + "type": "boolean", + "description": "isOOTBPolicy" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "tags": { + "type": "string", + "description": "Tags" + }, + "cloudProvider": { + "type": "string", + "description": "cloudProvider" + }, + "ruleSetIds": { + "type": "array", + "description": "ruleSetIds", + "items": { + "type": "string", + "description": "ruleSetIds" + } + }, + "ruleIds": { + "type": "array", + "description": "ruleIds", + "items": { + "type": "string", + "description": "ruleIds" + } + }, + "search": { + "type": "string", + "description": "search" + }, + "limit": { + "type": "integer", + "description": "limit", + "format": "int32" + }, + "offset": { + "type": "integer", + "description": "offset", + "format": "int32" + }, + "orderBy": { + "type": "array", + "description": "The order by condition for Rule Set query", + "items": { + "$ref": "#/components/schemas/CCMSort" + } + } + }, + "description": "This has the query to list the policy packs" + }, + "CEViewFolder": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string", + "description": "unique id" + }, + "accountId": { + "type": "string", + "description": "account id" + }, + "name": { + "maxLength": 80, + "minLength": 1, + "type": "string", + "description": "name" + }, + "pinned": { + "type": "boolean", + "description": "pinned" + }, + "tags": { + "type": "array", + "description": "Tags", + "items": { + "type": "string", + "description": "Tags" + } + }, + "description": { + "type": "string", + "description": "Description of the entity" + }, + "viewType": { + "type": "string", + "description": "view type", + "enum": [ + "SAMPLE", + "CUSTOMER", + "DEFAULT" + ] + }, + "createdAt": { + "type": "integer", + "description": "Time at which the entity was created", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "description": "Time at which the entity was last updated", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Perspective" + }, + "ResponseDTOCEViewFolder": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CEViewFolder" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CreatePerspectiveFolderDTO": { + "type": "object", + "properties": { + "ceViewFolder": { + "$ref": "#/components/schemas/CEViewFolder" + }, + "perspectiveIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ResponseDTOListCEViewFolder": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CEViewFolder" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Perspective": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "folderId": { + "type": "string" + }, + "folderName": { + "type": "string" + }, + "isReportScheduledConfigured": { + "type": "boolean", + "writeOnly": true + }, + "reportScheduledConfigured": { + "type": "boolean" + } + }, + "description": "Perspective ID to name mapping" + }, + "ResponseDTOListPerspective": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Perspective" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AWSViewPreferences": { + "type": "object", + "properties": { + "includeDiscounts": { + "type": "boolean" + }, + "includeCredits": { + "type": "boolean" + }, + "includeRefunds": { + "type": "boolean" + }, + "includeTaxes": { + "type": "boolean" + }, + "awsCost": { + "type": "string", + "description": "Show AWS Cost As", + "enum": [ + "AMORTISED", + "NET_AMORTISED", + "BLENDED", + "UNBLENDED", + "EFFECTIVE" + ] + } + } + }, + "AzureViewPreferences": { + "type": "object", + "properties": { + "costType": { + "type": "string", + "enum": [ + "ACTUAL", + "AMORTIZED" + ] + } + } + }, + "CEView": { + "required": [ + "name", + "viewVersion" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "accountId": { + "type": "string" + }, + "folderId": { + "type": "string" + }, + "viewVersion": { + "type": "string" + }, + "viewTimeRange": { + "$ref": "#/components/schemas/ViewTimeRange" + }, + "viewRules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ViewRule" + } + }, + "dataSources": { + "type": "array", + "items": { + "type": "string", + "description": "Perspective filter Category, CLUSTER means Kubernetes", + "enum": [ + "CLUSTER", + "AWS", + "GCP", + "AZURE", + "EXTERNAL_DATA", + "COMMON", + "CUSTOM", + "BUSINESS_MAPPING", + "LABEL", + "LABEL_V2" + ] + } + }, + "viewVisualization": { + "$ref": "#/components/schemas/ViewVisualization" + }, + "viewPreferences": { + "$ref": "#/components/schemas/ViewPreferences" + }, + "viewType": { + "type": "string", + "enum": [ + "SAMPLE", + "CUSTOMER", + "DEFAULT" + ] + }, + "viewState": { + "type": "string", + "enum": [ + "DRAFT", + "COMPLETED" + ] + }, + "totalCost": { + "type": "number", + "format": "double" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + } + }, + "description": "This object will contain the complete definition of a Cloud Cost Perspective" + }, + "GCPViewPreferences": { + "type": "object", + "properties": { + "includeDiscounts": { + "type": "boolean" + }, + "includeTaxes": { + "type": "boolean" + } + } + }, + "ResponseDTOListCEView": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CEView" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ViewPreferences": { + "type": "object", + "properties": { + "showAnomalies": { + "type": "boolean" + }, + "includeOthers": { + "type": "boolean" + }, + "includeUnallocatedCost": { + "type": "boolean" + }, + "awsPreferences": { + "$ref": "#/components/schemas/AWSViewPreferences" + }, + "gcpPreferences": { + "$ref": "#/components/schemas/GCPViewPreferences" + }, + "azureViewPreferences": { + "$ref": "#/components/schemas/AzureViewPreferences" + } + } + }, + "ViewTimeRange": { + "type": "object", + "properties": { + "viewTimeRangeType": { + "type": "string", + "description": "The type of Perspective time range filter, select CUSTOM is you want a Perspective between a fixed set of startTime and endTime", + "enum": [ + "LAST_7", + "LAST_30", + "LAST_MONTH", + "CURRENT_MONTH", + "CUSTOM" + ] + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + } + }, + "description": "The time interval on which you want to create a Perspective" + }, + "ViewVisualization": { + "type": "object", + "properties": { + "granularity": { + "type": "string", + "description": "Granularity of Perspective timeseries data", + "enum": [ + "DAY", + "MONTH" + ] + }, + "groupBy": { + "$ref": "#/components/schemas/ViewField" + }, + "chartType": { + "type": "string", + "description": "Perspective chart type", + "enum": [ + "STACKED_TIME_SERIES", + "STACKED_LINE_CHART" + ] + } + } + }, + "MovePerspectiveDTO": { + "type": "object", + "properties": { + "newFolderId": { + "type": "string" + }, + "perspectiveIds": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CEReportSchedule": { + "required": [ + "name", + "recipients", + "userCron", + "viewsId" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "description": { + "maxLength": 100, + "minLength": 0, + "type": "string" + }, + "viewsId": { + "maxItems": 1, + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "userCron": { + "type": "string" + }, + "recipients": { + "maxItems": 50, + "minItems": 0, + "type": "array", + "items": { + "type": "string" + } + }, + "accountId": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "userCronTimeZone": { + "type": "string" + }, + "createdBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "lastUpdatedBy": { + "$ref": "#/components/schemas/EmbeddedUser" + }, + "nextExecution": { + "type": "string", + "format": "date-time" + } + }, + "description": "Cloud Cost Report Schedule contains definition of 'how often' and 'to whom' the Report will be sent" + }, + "ResponseDTOListCEReportSchedule": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CEReportSchedule" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOCEView": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CEView" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PerspectiveData": { + "type": "object", + "properties": { + "totalCount": { + "type": "integer", + "format": "int64" + }, + "views": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Perspective" + } + } + } + }, + "ResponseDTOPerspectiveData": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PerspectiveData" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AzureVmDTO": { + "type": "object", + "properties": { + "vmSize": { + "type": "string" + }, + "region": { + "type": "string" + }, + "memory": { + "type": "integer", + "format": "int32" + }, + "cores": { + "type": "integer", + "format": "int32" + }, + "monthlyCost": { + "type": "number", + "format": "double" + }, + "avgCpuUtilization": { + "type": "number", + "format": "double" + }, + "maxCpuUtilization": { + "type": "number", + "format": "double" + }, + "avgMemoryUtilization": { + "type": "number", + "format": "double" + }, + "maxMemoryUtilization": { + "type": "number", + "format": "double" + } + }, + "description": "Target vm configurations" + }, + "AzureVmRecommendation": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "tenantId": { + "type": "string" + }, + "subscriptionId": { + "type": "string" + }, + "resourceGroupId": { + "type": "string" + }, + "vmName": { + "type": "string" + }, + "vmId": { + "type": "string" + }, + "connectorName": { + "type": "string" + }, + "connectorId": { + "type": "string" + }, + "duration": { + "type": "integer", + "format": "int32" + }, + "CurrentConfigurations": { + "$ref": "#/components/schemas/AzureVmDTO" + }, + "showTerminated": { + "type": "boolean" + }, + "TargetConfigurations": { + "$ref": "#/components/schemas/AzureVmDTO" + }, + "jiraDetails": { + "$ref": "#/components/schemas/CCMJiraDetails" + }, + "serviceNowDetails": { + "$ref": "#/components/schemas/CCMServiceNowDetails" + } + }, + "description": "Azure VM recommendation" + }, + "CCMJiraDetails": { + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "jiraIssue": { + "$ref": "#/components/schemas/JiraIssueNG" + } + } + }, + "CCMServiceNowDetails": { + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "serviceNowTicket": { + "$ref": "#/components/schemas/ServiceNowTicketNG" + } + } + }, + "JiraIssueNG": { + "required": [ + "fields", + "id", + "key", + "restUrl" + ], + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "restUrl": { + "type": "string" + }, + "id": { + "type": "string" + }, + "key": { + "type": "string" + }, + "fields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "fieldNameToKeys": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ResponseDTOAzureVmRecommendation": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/AzureVmRecommendation" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ServiceNowFieldValueNG": { + "type": "object", + "properties": { + "value": { + "type": "string" + }, + "displayValue": { + "type": "string" + } + } + }, + "ServiceNowTicketNG": { + "required": [ + "fields", + "number", + "url" + ], + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "number": { + "type": "string" + }, + "fields": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/ServiceNowFieldValueNG" + } + } + } + }, + "EC2InstanceDTO": { + "type": "object", + "properties": { + "instanceFamily": { + "type": "string" + }, + "region": { + "type": "string" + }, + "memory": { + "type": "string" + }, + "vcpu": { + "type": "string" + }, + "cpuUtilisation": { + "type": "string" + }, + "memoryUtilisation": { + "type": "string" + }, + "monthlyCost": { + "type": "string" + }, + "monthlySavings": { + "type": "string" + } + }, + "description": "Recommendation with cross instance family" + }, + "EC2InstanceRecommendation": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "awsAccountId": { + "type": "string" + }, + "CurrentConfigurations": { + "$ref": "#/components/schemas/EC2InstanceDTO" + }, + "showTerminated": { + "type": "boolean" + }, + "SameFamilyRecommendation": { + "$ref": "#/components/schemas/EC2InstanceDTO" + }, + "CrossFamilyRecommendation": { + "$ref": "#/components/schemas/EC2InstanceDTO" + }, + "jiraDetails": { + "$ref": "#/components/schemas/CCMJiraDetails" + }, + "serviceNowDetails": { + "$ref": "#/components/schemas/CCMServiceNowDetails" + } + }, + "description": "EC2 instance recommendation" + }, + "ResponseDTOEC2InstanceRecommendation": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/EC2InstanceRecommendation" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "Cost": { + "type": "object", + "properties": { + "cpu": { + "type": "number" + }, + "memory": { + "type": "number" + } + } + }, + "ECSRecommendationDTO": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "clusterName": { + "type": "string" + }, + "serviceArn": { + "type": "string" + }, + "serviceName": { + "type": "string" + }, + "launchType": { + "type": "string", + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ] + }, + "current": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "percentileBased": { + "type": "object", + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "lastDayCost": { + "$ref": "#/components/schemas/Cost" + }, + "cpuHistogram": { + "$ref": "#/components/schemas/HistogramExp" + }, + "memoryHistogram": { + "$ref": "#/components/schemas/HistogramExp" + }, + "jiraDetails": { + "$ref": "#/components/schemas/CCMJiraDetails" + }, + "serviceNowDetails": { + "$ref": "#/components/schemas/CCMServiceNowDetails" + } + } + }, + "HistogramExp": { + "type": "object", + "properties": { + "firstBucketSize": { + "type": "number", + "format": "double" + }, + "growthRatio": { + "type": "number", + "format": "double" + }, + "numBuckets": { + "type": "integer", + "format": "int32" + }, + "minBucket": { + "type": "integer", + "format": "int32" + }, + "maxBucket": { + "type": "integer", + "format": "int32" + }, + "bucketWeights": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + }, + "totalWeight": { + "type": "number", + "format": "double" + }, + "precomputed": { + "type": "array", + "items": { + "type": "number", + "format": "double" + } + } + } + }, + "ResponseDTOECSRecommendationDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ECSRecommendationDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ClusterRecommendationAccuracy": { + "type": "object", + "properties": { + "cpu": { + "type": "number", + "format": "double" + }, + "masterPrice": { + "type": "number", + "format": "double" + }, + "memory": { + "type": "number", + "format": "double" + }, + "nodes": { + "type": "integer", + "format": "int64" + }, + "regularNodes": { + "type": "integer", + "format": "int64" + }, + "regularPrice": { + "type": "number", + "format": "double" + }, + "spotNodes": { + "type": "integer", + "format": "int64" + }, + "spotPrice": { + "type": "number", + "format": "double" + }, + "totalPrice": { + "type": "number", + "format": "double" + }, + "workerPrice": { + "type": "number", + "format": "double" + }, + "zone": { + "type": "string" + } + } + }, + "NodePool": { + "type": "object", + "properties": { + "role": { + "type": "string" + }, + "sumNodes": { + "type": "integer", + "format": "int64" + }, + "vm": { + "$ref": "#/components/schemas/VirtualMachine" + }, + "vmClass": { + "type": "string" + } + } + }, + "NodePoolId": { + "type": "object", + "properties": { + "nodepoolname": { + "type": "string" + }, + "clusterid": { + "type": "string" + } + } + }, + "NodeRecommendationDTO": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "nodePoolId": { + "$ref": "#/components/schemas/NodePoolId" + }, + "resourceRequirement": { + "$ref": "#/components/schemas/RecommendClusterRequest" + }, + "current": { + "$ref": "#/components/schemas/RecommendationResponse" + }, + "recommended": { + "$ref": "#/components/schemas/RecommendationResponse" + }, + "totalResourceUsage": { + "$ref": "#/components/schemas/TotalResourceUsage" + }, + "jiraDetails": { + "$ref": "#/components/schemas/CCMJiraDetails" + }, + "serviceNowDetails": { + "$ref": "#/components/schemas/CCMServiceNowDetails" + } + } + }, + "RecommendClusterRequest": { + "type": "object", + "properties": { + "allowBurst": { + "type": "boolean" + }, + "allowOlderGen": { + "type": "boolean" + }, + "excludeSeries": { + "type": "array", + "items": { + "type": "string" + } + }, + "excludeTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "includeSeries": { + "type": "array", + "items": { + "type": "string" + } + }, + "includeTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "maxNodes": { + "type": "integer", + "format": "int64" + }, + "minNodes": { + "type": "integer", + "format": "int64" + }, + "networkPerf": { + "type": "array", + "items": { + "type": "string" + } + }, + "onDemandPct": { + "type": "integer", + "format": "int64" + }, + "sameSize": { + "type": "boolean" + }, + "sumCpu": { + "type": "number", + "format": "double" + }, + "sumGpu": { + "type": "integer", + "format": "int64" + }, + "sumMem": { + "type": "number", + "format": "double" + }, + "zone": { + "type": "string" + }, + "minCpu": { + "type": "number", + "format": "double" + }, + "minMem": { + "type": "number", + "format": "double" + } + } + }, + "RecommendationResponse": { + "type": "object", + "properties": { + "accuracy": { + "$ref": "#/components/schemas/ClusterRecommendationAccuracy" + }, + "nodePools": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NodePool" + } + }, + "provider": { + "type": "string" + }, + "region": { + "type": "string" + }, + "service": { + "type": "string" + }, + "zone": { + "type": "string" + }, + "instanceCategory": { + "type": "string", + "enum": [ + "ON_DEMAND", + "SPOT", + "RESERVED" + ] + } + } + }, + "ResponseDTONodeRecommendationDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/NodeRecommendationDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TotalResourceUsage": { + "type": "object", + "properties": { + "sumcpu": { + "type": "number", + "format": "double" + }, + "summemory": { + "type": "number", + "format": "double" + }, + "maxcpu": { + "type": "number", + "format": "double" + }, + "maxmemory": { + "type": "number", + "format": "double" + } + } + }, + "VirtualMachine": { + "type": "object", + "properties": { + "avgPrice": { + "type": "number", + "format": "double" + }, + "burst": { + "type": "boolean" + }, + "category": { + "type": "string" + }, + "cpusPerVm": { + "type": "number", + "format": "double" + }, + "currentGen": { + "type": "boolean" + }, + "gpusPerVm": { + "type": "number", + "format": "double" + }, + "memPerVm": { + "type": "number", + "format": "double" + }, + "allocatableCpusPerVm": { + "type": "number", + "format": "double" + }, + "allocatableMemPerVm": { + "type": "number", + "format": "double" + }, + "networkPerf": { + "type": "string" + }, + "networkPerfCategory": { + "type": "string" + }, + "onDemandPrice": { + "type": "number", + "format": "double" + }, + "type": { + "type": "string" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ContainerHistogramDTO": { + "type": "object", + "properties": { + "containerName": { + "type": "string" + }, + "cpuHistogram": { + "$ref": "#/components/schemas/HistogramExp" + }, + "memoryHistogram": { + "$ref": "#/components/schemas/HistogramExp" + }, + "containerRecommendation": { + "$ref": "#/components/schemas/ContainerRecommendation" + } + } + }, + "ContainerRecommendation": { + "type": "object", + "properties": { + "current": { + "$ref": "#/components/schemas/ResourceRequirement" + }, + "burstable": { + "$ref": "#/components/schemas/ResourceRequirement" + }, + "guaranteed": { + "$ref": "#/components/schemas/ResourceRequirement" + }, + "recommended": { + "$ref": "#/components/schemas/ResourceRequirement" + }, + "percentileBased": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/ResourceRequirement" + } + }, + "lastDayCost": { + "$ref": "#/components/schemas/Cost" + }, + "numDays": { + "type": "integer", + "format": "int32" + }, + "totalSamplesCount": { + "type": "integer", + "format": "int32" + } + } + }, + "ResourceRequirement": { + "type": "object", + "properties": { + "requests": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "limits": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOWorkloadRecommendationDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/WorkloadRecommendationDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "WorkloadRecommendationDTO": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "containerRecommendations": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/ContainerRecommendation" + } + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ContainerHistogramDTO" + } + }, + "lastDayCost": { + "$ref": "#/components/schemas/Cost" + }, + "jiraDetails": { + "$ref": "#/components/schemas/CCMJiraDetails" + }, + "serviceNowDetails": { + "$ref": "#/components/schemas/CCMServiceNowDetails" + } + } + }, + "ResponseDTOVoid": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "object" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOInteger": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "integer", + "format": "int32" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AwsRecommendationFilterProperties": { + "type": "object", + "properties": { + "instanceType": { + "type": "array", + "description": "List of instance types to filter recommendations", + "items": { + "type": "string", + "description": "List of instance types to filter recommendations" + } + } + }, + "description": "AWS specific properties for recommendation filters" + }, + "AzureRecommendationFilterProperties": { + "type": "object", + "properties": { + "instanceType": { + "type": "array", + "description": "List of instance types to filter recommendations", + "items": { + "type": "string", + "description": "List of instance types to filter recommendations" + } + }, + "resourceGroup": { + "type": "array", + "description": "List of resource groups to filter recommendations", + "items": { + "type": "string", + "description": "List of resource groups to filter recommendations" + } + } + }, + "description": "Azure specific properties for recommendation filters" + }, + "BaseRecommendationFilterProperties": { + "type": "object", + "properties": { + "id": { + "type": "array", + "description": "List of ids which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of ids which will be applied as filter for Recommendations" + } + }, + "cloudAccountId": { + "type": "array", + "description": "List of cloud account IDs to filter recommendations", + "items": { + "type": "string", + "description": "List of cloud account IDs to filter recommendations" + } + }, + "cloudAccountName": { + "type": "array", + "description": "List of cloud account names to filter recommendations", + "items": { + "type": "string", + "description": "List of cloud account names to filter recommendations" + } + }, + "resourceId": { + "type": "array", + "description": "List of resource IDs to filter recommendations", + "items": { + "type": "string", + "description": "List of resource IDs to filter recommendations" + } + }, + "resourceName": { + "type": "array", + "description": "List of resource names to filter recommendations", + "items": { + "type": "string", + "description": "List of resource names to filter recommendations" + } + }, + "region": { + "type": "array", + "description": "List of regions to filter recommendations", + "items": { + "type": "string", + "description": "List of regions to filter recommendations" + } + }, + "resourceType": { + "type": "array", + "description": "List of resourceTypes which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of resourceTypes which will be applied as filter for Recommendations", + "enum": [ + "WORKLOAD", + "NODE_POOL", + "ECS_SERVICE", + "EC2_INSTANCE", + "GOVERNANCE", + "AZURE_INSTANCE" + ] + } + }, + "recommendationState": { + "type": "array", + "description": "List of recommendationStates which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of recommendationStates which will be applied as filter for Recommendations", + "enum": [ + "OPEN", + "APPLIED", + "IGNORED" + ] + } + }, + "cloudProvider": { + "type": "array", + "description": "List of cloud providers which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of cloud providers which will be applied as filter for Recommendations", + "enum": [ + "AWS", + "AZURE", + "GCP", + "CLUSTER", + "EXTERNAL_DATA", + "IBM", + "ON_PREM", + "UNKNOWN" + ] + } + } + }, + "description": "Base properties for recommendation filters" + }, + "CCMCostCategoryDTO": { + "type": "object", + "properties": { + "costCategory": { + "type": "string" + }, + "costBucket": { + "type": "string" + } + }, + "description": "This object will contain cost category and it's bucket value" + }, + "CCMRecommendationFilterProperties": { + "type": "object", + "properties": { + "k8sRecommendationFilterPropertiesDTO": { + "$ref": "#/components/schemas/K8sRecommendationFilterProperties" + }, + "awsRecommendationFilterPropertiesDTO": { + "$ref": "#/components/schemas/AwsRecommendationFilterProperties" + }, + "azureRecommendationFilterProperties": { + "$ref": "#/components/schemas/AzureRecommendationFilterProperties" + }, + "containerRecommendationFilterPropertiesDTO": { + "$ref": "#/components/schemas/ContainerRecommendationFilterProperties" + }, + "governanceRecommendationFilterPropertiesDTO": { + "$ref": "#/components/schemas/GovernanceRecommendationFilterProperties" + }, + "baseRecommendationFilterPropertiesDTO": { + "$ref": "#/components/schemas/BaseRecommendationFilterProperties" + }, + "perspectiveFilters": { + "type": "array", + "description": "Get Recommendations for a perspective", + "items": { + "$ref": "#/components/schemas/QLCEViewFilterWrapper" + } + }, + "minSaving": { + "type": "number", + "description": "Fetch recommendations with Saving more than minSaving", + "format": "double" + }, + "minCost": { + "type": "number", + "description": "Fetch recommendations with Cost more than minCost", + "format": "double" + }, + "daysBack": { + "type": "integer", + "description": "Fetch recommendations generated in last daysBack days", + "format": "int64" + }, + "offset": { + "type": "integer", + "description": "Query Offset", + "format": "int64" + }, + "limit": { + "type": "integer", + "description": "Query Limit", + "format": "int64" + }, + "childRecommendation": { + "type": "boolean", + "description": "toggle childRecommendation value" + }, + "includeIgnoredRecommendation": { + "type": "boolean", + "description": "toggle includeIgnoredRecommendation value" + }, + "parentRecommendation": { + "type": "boolean", + "description": "toggle parentRecommendation value" + }, + "tagDTOs": { + "type": "array", + "description": "Get recommendations for resources having particular tags", + "items": { + "$ref": "#/components/schemas/CCMTagDTO" + } + }, + "costCategoryDTOs": { + "type": "array", + "description": "Get recommendations for resources in particular cost bucket of given cost category", + "items": { + "$ref": "#/components/schemas/CCMCostCategoryDTO" + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "enum": [ + "CCMRecommendation" + ] + } + }, + "description": "Properties of the CCMRecommendation Filter defined in Harness" + }, + "CCMTagDTO": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "description": "This object will contain tag key and value" + }, + "ContainerRecommendationFilterProperties": { + "type": "object", + "properties": { + "k8sClusterName": { + "type": "array", + "description": "List of Kubernetes cluster names to filter recommendations", + "items": { + "type": "string", + "description": "List of Kubernetes cluster names to filter recommendations" + } + }, + "k8sNamespace": { + "type": "array", + "description": "List of Kubernetes namespaces to filter recommendations", + "items": { + "type": "string", + "description": "List of Kubernetes namespaces to filter recommendations" + } + }, + "ecsClusterName": { + "type": "array", + "description": "List of ECS cluster names to filter recommendations", + "items": { + "type": "string", + "description": "List of ECS cluster names to filter recommendations" + } + }, + "ecsLaunchType": { + "type": "array", + "description": "List of ECS launch types to filter recommendations", + "items": { + "type": "string", + "description": "List of ECS launch types to filter recommendations" + } + } + }, + "description": "Container specific properties for recommendation filters" + }, + "GovernanceRecommendationFilterProperties": { + "type": "object", + "properties": { + "governanceRuleName": { + "type": "array", + "description": "List of governance rule names to filter recommendations", + "items": { + "type": "string", + "description": "List of governance rule names to filter recommendations" + } + } + }, + "description": "Governance specific properties for recommendation filters" + }, + "K8sRecommendationFilterProperties": { + "type": "object", + "properties": { + "ids": { + "type": "array", + "description": "List of ids which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of ids which will be applied as filter for Recommendations" + } + }, + "names": { + "type": "array", + "description": "List of names which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of names which will be applied as filter for Recommendations" + } + }, + "namespaces": { + "type": "array", + "description": "List of namespaces which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of namespaces which will be applied as filter for Recommendations" + } + }, + "clusterNames": { + "type": "array", + "description": "List of clusterNames which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of clusterNames which will be applied as filter for Recommendations" + } + }, + "resourceTypes": { + "type": "array", + "description": "List of resourceTypes which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of resourceTypes which will be applied as filter for Recommendations", + "enum": [ + "WORKLOAD", + "NODE_POOL", + "ECS_SERVICE", + "EC2_INSTANCE", + "GOVERNANCE", + "AZURE_INSTANCE" + ] + } + }, + "recommendationStates": { + "type": "array", + "description": "List of recommendationStates which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of recommendationStates which will be applied as filter for Recommendations", + "enum": [ + "OPEN", + "APPLIED", + "IGNORED" + ] + } + }, + "cloudProvider": { + "type": "array", + "description": "List of cloud providers which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of cloud providers which will be applied as filter for Recommendations", + "enum": [ + "AWS", + "AZURE", + "GCP", + "CLUSTER", + "EXTERNAL_DATA", + "IBM", + "ON_PREM", + "UNKNOWN" + ] + } + }, + "regions": { + "type": "array", + "description": "List of regions which will be applied as filter for Recommendations", + "items": { + "type": "string", + "description": "List of regions which will be applied as filter for Recommendations" + } + } + }, + "description": "Properties of the K8sRecommendation Filter defined in Harness" + }, + "RecommendationDetailsDTO": { + "type": "object" + }, + "RecommendationItem": { + "required": [ + "id", + "resourceType" + ], + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "clusterName": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "resourceName": { + "type": "string" + }, + "monthlySaving": { + "type": "number", + "format": "double" + }, + "preferenceBasedSaving": { + "type": "number", + "format": "double" + }, + "monthlyCost": { + "type": "number", + "format": "double" + }, + "isValid": { + "type": "boolean" + }, + "lastProcessedAt": { + "type": "integer", + "format": "int64" + }, + "resourceType": { + "type": "string", + "enum": [ + "WORKLOAD", + "NODE_POOL", + "ECS_SERVICE", + "EC2_INSTANCE", + "GOVERNANCE", + "AZURE_INSTANCE" + ] + }, + "recommendationState": { + "type": "string", + "enum": [ + "OPEN", + "APPLIED", + "IGNORED" + ] + }, + "jiraConnectorRef": { + "type": "string" + }, + "jiraIssueKey": { + "type": "string" + }, + "jiraStatus": { + "type": "string" + }, + "servicenowConnectorRef": { + "type": "string" + }, + "servicenowIssueKey": { + "type": "string" + }, + "servicenowIssueStatus": { + "type": "string" + }, + "recommendationDetails": { + "$ref": "#/components/schemas/RecommendationDetailsDTO" + }, + "perspectiveId": { + "type": "string" + }, + "perspectiveName": { + "type": "string" + }, + "cloudProvider": { + "type": "string" + }, + "governanceRuleId": { + "type": "string" + }, + "targetRegion": { + "type": "string" + }, + "appliedAt": { + "type": "integer", + "format": "int64" + }, + "appliedAtSavings": { + "type": "number", + "format": "double" + }, + "overriddenSavings": { + "type": "number", + "format": "double" + }, + "costCategoryDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CCMCostCategoryDTO" + } + } + }, + "description": "A single Cloud Cost Recommendation entity." + }, + "Recommendations": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationItem" + } + }, + "offset": { + "type": "integer", + "format": "int64" + }, + "limit": { + "type": "integer", + "format": "int64" + } + }, + "description": "The Cloud Cost Recommendations list response" + }, + "ResponseDTORecommendations": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/Recommendations" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RecommendationResourceTypeStats": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int32" + }, + "totalMonthlyCost": { + "type": "number", + "format": "double" + }, + "totalMonthlySaving": { + "type": "number", + "format": "double" + }, + "resourceType": { + "type": "string" + } + } + }, + "ResponseDTOListRecommendationResourceTypeStats": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationResourceTypeStats" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RecommendationOverviewStats": { + "type": "object", + "properties": { + "totalMonthlyCost": { + "type": "number", + "format": "double" + }, + "totalMonthlySaving": { + "type": "number", + "format": "double" + } + } + }, + "ResponseDTORecommendationOverviewStats": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RecommendationOverviewStats" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOCCMJiraDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CCMJiraDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CCMJiraCreateDTO": { + "type": "object", + "properties": { + "recommendationId": { + "type": "string" + }, + "resourceType": { + "type": "string", + "enum": [ + "WORKLOAD", + "NODE_POOL", + "ECS_SERVICE", + "EC2_INSTANCE", + "GOVERNANCE", + "AZURE_INSTANCE" + ] + }, + "connectorRef": { + "type": "string" + }, + "projectKey": { + "type": "string" + }, + "issueType": { + "type": "string" + }, + "fields": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "EC2RecommendationPreset": { + "required": [ + "accountId", + "resourceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/RecommendationPreset" + }, + { + "type": "object", + "properties": { + "familyPreference": { + "type": "string", + "enum": [ + "SAME_FAMILY", + "CROSS_FAMILY" + ] + } + } + } + ] + }, + "ECSRecommendationPreset": { + "required": [ + "accountId", + "resourceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/RecommendationPreset" + }, + { + "type": "object", + "properties": { + "bufferPercentage": { + "maximum": 100, + "minimum": 0, + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "LookBackPeriod": { + "required": [ + "ec2InstancePeriod", + "ecsServicePeriod", + "nodepoolPeriod", + "workloadPeriod" + ], + "type": "object", + "properties": { + "ec2InstancePeriod": { + "type": "integer", + "format": "int32" + }, + "ecsServicePeriod": { + "type": "integer", + "format": "int32" + }, + "workloadPeriod": { + "type": "integer", + "format": "int32" + }, + "nodepoolPeriod": { + "type": "integer", + "format": "int32" + } + } + }, + "NodepoolRecommendationPreset": { + "required": [ + "accountId", + "resourceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/RecommendationPreset" + }, + { + "type": "object", + "properties": { + "bufferPercentage": { + "maximum": 100, + "minimum": 0, + "type": "integer", + "format": "int32" + }, + "minNodeCount": { + "minimum": 1, + "type": "integer", + "format": "int32" + }, + "preferredInstances": { + "type": "object", + "additionalProperties": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + ] + }, + "RecommendationPreferenceDTO": { + "type": "object", + "properties": { + "appliedRecommendationPresets": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/RecommendationPreset" + } + }, + "lookBackPeriod": { + "$ref": "#/components/schemas/LookBackPeriod" + }, + "childRecommendation": { + "type": "boolean" + }, + "includeIgnoredRecommendation": { + "type": "boolean" + }, + "parentRecommendation": { + "type": "boolean" + } + }, + "description": "This object will contain tag key and values for a particular recommendation" + }, + "RecommendationPreset": { + "required": [ + "accountId", + "resourceType" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "accountId": { + "type": "string" + }, + "resourceType": { + "type": "string", + "enum": [ + "WORKLOAD", + "NODE_POOL", + "ECS_SERVICE", + "EC2_INSTANCE", + "GOVERNANCE", + "AZURE_INSTANCE" + ] + }, + "name": { + "maxLength": 80, + "minLength": 0, + "type": "string" + }, + "description": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "discriminator": { + "propertyName": "resourceType" + } + }, + "ResponseDTORecommendationPreferenceDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RecommendationPreferenceDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "WorkloadRecommendationPreset": { + "required": [ + "accountId", + "resourceType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/RecommendationPreset" + }, + { + "type": "object", + "properties": { + "qos": { + "type": "string", + "enum": [ + "BURSTABLE", + "GUARANTEED" + ] + }, + "bufferPercentage": { + "maximum": 100, + "minimum": 0, + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "RecommendationPreference": { + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "accountId": { + "type": "string" + }, + "recommendationPresets": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "lookBackPeriod": { + "$ref": "#/components/schemas/LookBackPeriod" + }, + "childRecommendation": { + "type": "boolean" + }, + "includeIgnoredRecommendation": { + "type": "boolean" + }, + "parentRecommendation": { + "type": "boolean" + } + } + }, + "ResponseDTOListRecommendationPreset": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationPreset" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOCCMServiceNowDetails": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/CCMServiceNowDetails" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CCMServiceNowCreateDTO": { + "type": "object", + "properties": { + "recommendationId": { + "type": "string" + }, + "resourceType": { + "type": "string", + "enum": [ + "WORKLOAD", + "NODE_POOL", + "ECS_SERVICE", + "EC2_INSTANCE", + "GOVERNANCE", + "AZURE_INSTANCE" + ] + }, + "connectorRef": { + "type": "string" + }, + "ticketType": { + "type": "string" + }, + "fields": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "RecommendationTagDTO": { + "type": "object", + "properties": { + "recommendationId": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "This object will contain tag key and values for a particular recommendation" + }, + "ResponseDTORecommendationTagDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RecommendationTagDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RecommendationAzureVmId": { + "type": "object", + "properties": { + "subscriptionId": { + "type": "string" + }, + "resourceGroupId": { + "type": "string" + }, + "vmName": { + "type": "string" + } + } + }, + "RecommendationEC2InstanceId": { + "type": "object", + "properties": { + "awsAccountId": { + "type": "string" + }, + "instanceId": { + "type": "string" + } + } + }, + "RecommendationECSServiceId": { + "type": "object", + "properties": { + "clusterName": { + "type": "string" + }, + "ecsServiceName": { + "type": "string" + } + } + }, + "RecommendationGovernanceRuleId": { + "type": "object", + "properties": { + "ruleId": { + "type": "string" + }, + "targetId": { + "type": "string" + }, + "targetRegion": { + "type": "string" + }, + "resourceId": { + "type": "string" + } + } + }, + "RecommendationNodepoolId": { + "type": "object", + "properties": { + "clusterName": { + "type": "string" + }, + "nodepoolName": { + "type": "string" + } + } + }, + "RecommendationWorkloadId": { + "type": "object", + "properties": { + "clusterName": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "workloadName": { + "type": "string" + } + } + }, + "RecommendationsIgnoreList": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "workloadIgnoreList": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationWorkloadId" + } + }, + "nodepoolIgnoreList": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationNodepoolId" + } + }, + "ecsServiceIgnoreList": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationECSServiceId" + } + }, + "ec2InstanceIgnoreList": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationEC2InstanceId" + } + }, + "azureVmIgnoreList": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationAzureVmId" + } + }, + "governanceRuleIgnoreList": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationGovernanceRuleId" + } + } + } + }, + "ResponseDTORecommendationsIgnoreList": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RecommendationsIgnoreList" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RecommendationsIgnoreResourcesDTO": { + "type": "object", + "properties": { + "workloads": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationWorkloadId" + } + }, + "nodepools": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationNodepoolId" + } + }, + "ecsServices": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationECSServiceId" + } + }, + "ec2Instances": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationEC2InstanceId" + } + }, + "azureVmIds": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationAzureVmId" + } + }, + "governanceRuleIds": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/RecommendationGovernanceRuleId" + } + } + } + }, + "ActivationUpdate": { + "description": "An object used to specify updates for flag activation updates", + "properties": { + "defaultOffVariation": { + "description": "The default variation to serve when the flag is disabled in this environment", + "example": "red", + "type": "string" + }, + "defaultOnVariation": { + "description": "The default variation to serve when the flag is enabled in this environment", + "example": "blue", + "type": "string" + }, + "identifier": { + "description": "The name of the environment", + "example": "env1", + "type": "string" + }, + "rules": { + "items": { + "$ref": "#/components/schemas/TargetRulesUpdate" + }, + "type": "array" + }, + "state": { + "description": "The state of the flag in this environment i.e. \"on\" or \"off\"", + "example": "on", + "type": "string" + } + }, + "required": [ + "identifier" + ], + "type": "object" + }, + "CfApiKey": { + "description": "The API key is used by SDKs to connect to Harness Feature Flags", + "properties": { + "apiKey": { + "description": "The Key will be shown only on create. On subsequent GET calls, only the masked APIKeys will be returned", + "example": "b03af1cd-bd3f-472b-a4b0-c9c9c09c642e", + "type": "string" + }, + "applicationIds": { + "description": "A list of Application IDs", + "items": { + "$ref": "#/components/schemas/ApplicationId" + }, + "type": "array" + }, + "identifier": { + "description": "The environment that this key was created in", + "example": "production", + "type": "string" + }, + "key": { + "description": "A hash of API key", + "example": "3c940273c34e8a9b21", + "type": "string" + }, + "lastUsed": { + "description": "Timestamp of the last time the API key was used", + "example": 1726744149, + "format": "int64", + "type": "integer" + }, + "name": { + "description": "The user friendly identifier for the API Key", + "example": "Production Server Key", + "type": "string" + }, + "type": { + "description": "The type of key depending on the SDK that is being used.", + "enum": [ + "server", + "client" + ], + "example": "server", + "type": "string" + } + }, + "required": [ + "name", + "apiKey", + "identifier", + "type" + ], + "type": "object" + }, + "ApiKeyRequestType": { + "description": "The type of key depending on the SDK that is being used.", + "enum": [ + "Server", + "Client" + ], + "example": "Server", + "type": "string" + }, + "ApiKeys": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "apiKeys": { + "items": { + "$ref": "#/components/schemas/CfApiKey" + }, + "type": "array" + } + } + } + ], + "description": "A list of API Keys", + "type": "object" + }, + "ApplicationId": { + "description": "An ApplicationId represents an application that is associated with a specific API key", + "properties": { + "applicationId": { + "description": "The application ID of the application", + "example": "my-springboot-application", + "type": "string" + }, + "lastUsed": { + "description": "The timestamp of when this application was last accessed", + "example": 1726744149, + "format": "int64", + "type": "integer" + } + }, + "required": [ + "applicationId", + "lastUsed" + ], + "type": "object" + }, + "Attribute": { + "description": "An Attribute, object property to evaluate targets on.", + "properties": { + "key": { + "description": "The attribute key", + "example": "age", + "type": "string" + } + }, + "required": [ + "key" + ], + "type": "object" + }, + "AttributeResponseMetadata": { + "properties": { + "details": { + "description": "Additional metadata about the request", + "properties": { + "governanceMetadata": { + "description": "Summary of governance checks including any warnings", + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Attributes": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "attributes": { + "items": { + "$ref": "#/components/schemas/Attribute" + }, + "type": "array" + } + } + } + ], + "description": "A list of Attributes", + "required": [ + "environment" + ], + "type": "object" + }, + "CCM": { + "description": "CCM Details for environment", + "properties": { + "anomalies": { + "description": "List of anomalies detected", + "items": { + "properties": { + "acknowledgedAt": { + "description": "The timestamp when the anomaly was acknowledged", + "example": 0, + "type": "integer" + }, + "anomalyId": { + "description": "The Id of the anomaly", + "example": "123456", + "type": "string" + }, + "costDifference": { + "description": "The difference value for the anomaly", + "example": 123, + "type": "integer" + }, + "createdAt": { + "description": "The creation timestamp of the anomaly record", + "example": 0, + "type": "integer" + }, + "foundAt": { + "description": "The timestamp when the anomaly was found", + "example": 0, + "type": "integer" + }, + "isAcknowledged": { + "description": "Flag to indicate if the anomaly is acknowledged", + "example": false, + "type": "boolean" + }, + "status": { + "description": "The current status of the anomaly", + "example": "found", + "type": "string" + } + }, + "required": [ + "anomalyId", + "createdAt", + "isAcknowledged", + "status" + ], + "type": "object" + }, + "type": "array" + }, + "perspectiveIdentifier": { + "example": "123456", + "type": "string" + }, + "perspectiveName": { + "example": "myCluster", + "type": "string" + } + }, + "required": [ + "perspectiveIdentifier", + "perspectiveName" + ], + "type": "object" + }, + "Clause": { + "description": "A clause describes what conditions are used to evaluate a flag", + "properties": { + "attribute": { + "description": "The attribute to use in the clause. This can be any target attribute", + "example": "identifier", + "type": "string" + }, + "id": { + "description": "The unique ID for the clause", + "example": 32434243, + "type": "string" + }, + "negate": { + "description": "Is the operation negated?", + "example": false, + "type": "boolean" + }, + "op": { + "description": "The type of operation such as equals, starts_with, contains", + "example": "starts_with", + "type": "string" + }, + "values": { + "description": "The values that are compared against the operator", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "attribute", + "op", + "negate", + "values" + ], + "type": "object" + }, + "Distribution": { + "description": "Describes a distribution rule", + "properties": { + "bucketBy": { + "description": "The attribute to use when distributing targets across buckets", + "type": "string" + }, + "variations": { + "description": "A list of variations and the weight that should be given to each", + "items": { + "$ref": "#/components/schemas/WeightedVariation" + }, + "type": "array" + } + }, + "required": [ + "bucketBy", + "variations" + ], + "type": "object" + }, + "EnvironmentPerspective": { + "properties": { + "createdAt": { + "description": "The date the key was created at in milliseconds", + "format": "int64", + "type": "integer" + }, + "environmentId": { + "description": "The ID of the Environment", + "example": "67891", + "type": "string" + }, + "perspectiveId": { + "description": "The ID of the Perspective", + "example": "12345", + "type": "string" + }, + "perspectiveIdentifier": { + "description": "The Identifier/Common Name of the Perspective", + "example": "myCluster", + "type": "string" + }, + "updatedAt": { + "description": "The date the key was last updated at in milliseconds", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "environmentId", + "perspectiveId", + "perspectiveIdentifier", + "createdAt", + "updatedAt" + ], + "type": "object" + }, + "CfError": { + "properties": { + "code": { + "description": "The http error code", + "example": 404, + "type": "string" + }, + "details": { + "description": "Additional details about the error", + "type": "object" + }, + "message": { + "description": "The reason the request failed", + "example": "Error retrieving projects, organization 'default_org' does not exist", + "type": "string" + } + }, + "required": [ + "code", + "message" + ], + "type": "object" + }, + "Feature": { + "description": "A Feature Flag response", + "properties": { + "archived": { + "description": "Indicates if the flag has been archived and is no longer used", + "example": false, + "type": "boolean" + }, + "createdAt": { + "description": "The date the flag was created in milliseconds", + "format": "int64", + "type": "integer" + }, + "defaultOffVariation": { + "description": "The default value returned when a flag is off", + "example": true, + "type": "string" + }, + "defaultOnVariation": { + "description": "The default value returned when a flag is on", + "example": true, + "type": "string" + }, + "description": { + "description": "A description for this flag", + "example": "A flag to control a new feature in production", + "type": "string" + }, + "envProperties": { + "description": "The Feature Flag rules for a given environment", + "properties": { + "ccm": { + "$ref": "#/components/schemas/CCM" + }, + "defaultServe": { + "$ref": "#/components/schemas/Serve" + }, + "environment": { + "description": "The environment identifier", + "type": "string" + }, + "jiraEnabled": { + "description": "Indicates whether jira functionality is enabled for the given account, project, org, and environment", + "type": "boolean" + }, + "jiraIssues": { + "description": "An array of Jira Issues linked to this Feature. Returns empty if none exist", + "items": { + "$ref": "#/components/schemas/JiraIssue" + }, + "type": "array" + }, + "modifiedAt": { + "description": "The last time the flag was modified in this environment", + "format": "int64", + "type": "integer" + }, + "offVariation": { + "description": "The variation to serve for this flag in this environment when the flag is off", + "type": "string" + }, + "pipelineConfigured": { + "type": "boolean" + }, + "pipelineDetails": { + "$ref": "#/components/schemas/FeaturePipeline" + }, + "pipelineErrorReason": { + "type": "string" + }, + "pipelineErrorState": { + "type": "boolean" + }, + "rules": { + "description": "A list of rules to use when evaluating this flag in this environment", + "items": { + "$ref": "#/components/schemas/ServingRule" + }, + "type": "array" + }, + "state": { + "$ref": "#/components/schemas/FeatureState" + }, + "variationMap": { + "description": "A list of the variations that will be served to specific targets or target groups in an environment.", + "items": { + "$ref": "#/components/schemas/VariationMap" + }, + "type": "array" + }, + "version": { + "description": "The version of the flag. This is incremented each time it is changed", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "state", + "defaultServe", + "environment", + "offVariation", + "pipelineConfigured" + ], + "type": "object" + }, + "evaluation": { + "description": "The value that the flag will return for the current user", + "example": true, + "type": "string" + }, + "evaluationIdentifier": { + "description": "The identifier for the returned evaluation", + "example": "on-variation", + "type": "string" + }, + "identifier": { + "description": "The Feature Flag identifier", + "example": "bool-flag", + "type": "string" + }, + "kind": { + "description": "The type of Feature flag", + "enum": [ + "boolean", + "int", + "string", + "json" + ], + "example": "boolean", + "type": "string" + }, + "modifiedAt": { + "description": "The date the flag was last modified in milliseconds", + "format": "int64", + "type": "integer" + }, + "name": { + "description": "The name of the Feature Flag", + "example": "My Boolean Flag", + "type": "string" + }, + "owner": { + "description": "The user who created the flag", + "example": "johndoe", + "items": { + "type": "string" + }, + "type": "array" + }, + "permanent": { + "description": "Indicates if this is a permanent flag, or one that should expire", + "example": true, + "type": "boolean" + }, + "prerequisites": { + "items": { + "$ref": "#/components/schemas/Prerequisite" + }, + "type": "array" + }, + "project": { + "description": "The project this Feature belongs to", + "example": "test-project", + "type": "string" + }, + "results": { + "description": "The results shows which variations have been evaluated, and how many times each of these have been evaluated.", + "items": { + "$ref": "#/components/schemas/Results" + }, + "type": "array" + }, + "services": { + "description": "A list of services linked to this Feature Flag", + "items": { + "$ref": "#/components/schemas/CfService" + }, + "type": "array" + }, + "stale": { + "description": "Whether the flag is stale or not", + "example": false, + "type": "boolean" + }, + "staleReason": { + "description": "The reason that the flag was marked as stale", + "example": "matched-criteria", + "type": "string" + }, + "tags": { + "description": "A list of tags for this Feature Flag", + "items": { + "$ref": "#/components/schemas/Tag" + }, + "type": "array" + }, + "variations": { + "description": "The variations that can be returned for this flag", + "items": { + "$ref": "#/components/schemas/Variation" + }, + "minItems": 2, + "type": "array" + } + }, + "required": [ + "project", + "identifier", + "createdAt", + "kind", + "name", + "variations", + "defaultOnVariation", + "defaultOffVariation" + ], + "type": "object" + }, + "FeatureCounts": { + "properties": { + "totalActive": { + "description": "The total number of flags with a active status in a project/environment", + "example": 5, + "type": "integer" + }, + "totalAnomaly": { + "description": "The total number of flags with an unacknowledged anomaly status in the project/environment", + "example": 4, + "type": "integer" + }, + "totalArchived": { + "description": "The total number of archived flags in the project/environment", + "example": 10, + "type": "integer" + }, + "totalEnabled": { + "description": "The total number of flags that are turned on in a project/environment", + "example": 2, + "type": "integer" + }, + "totalFeatures": { + "description": "The total number of flags in the project/environment", + "example": 10, + "type": "integer" + }, + "totalPermanent": { + "description": "The total number of permanent flags in a project/environment", + "example": 7, + "type": "integer" + }, + "totalPotentiallyStale": { + "description": "The total number of flags with a potentially-stale status in a project/environment", + "example": 3, + "type": "integer" + }, + "totalRecentlyAccessed": { + "description": "The total number of flags with a recently-accessed status in a project/environment", + "example": 2, + "type": "integer" + } + }, + "type": "object" + }, + "FeatureFlagRequestKind": { + "enum": [ + "boolean", + "int", + "string", + "json" + ], + "example": "boolean", + "type": "string" + }, + "FeaturePipeline": { + "description": "A pipeline configured to update a feature", + "properties": { + "createdAt": { + "description": "creation date in milliseconds", + "type": "integer" + }, + "description": { + "description": "The description of the pipeline", + "type": "string" + }, + "identifier": { + "description": "The identifier of the pipeline", + "type": "string" + }, + "lastUpdatedAt": { + "description": "last updated date in milliseconds", + "type": "integer" + }, + "name": { + "description": "The name of the pipeline", + "type": "string" + } + }, + "required": [ + "identifier", + "name" + ], + "type": "object" + }, + "FeatureResponseMetadata": { + "properties": { + "details": { + "description": "Additional metadata about the request", + "properties": { + "governanceMetadata": { + "description": "Summary of governance checks including any warnings", + "type": "object" + }, + "pipelineMetadata": { + "description": "Info about the pipeline whether a pipeline was triggered", + "properties": { + "pipelineExecutionId": { + "description": "The ID of the pipeline execution", + "type": "string" + }, + "pipelineTriggered": { + "description": "Whether a pipeline was triggered", + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "FeatureState": { + "description": "The state of a flag either off or on", + "enum": [ + "on", + "off" + ], + "type": "string" + }, + "Features": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "featureCounts": { + "$ref": "#/components/schemas/FeatureCounts" + }, + "features": { + "items": { + "$ref": "#/components/schemas/Feature" + }, + "type": "array" + } + } + } + ], + "description": "A list of Feature Flags", + "type": "object" + }, + "FlagBasicInfo": { + "description": "A flag Identifier and name", + "properties": { + "identifier": { + "description": "The flag identifier", + "example": "test-flag", + "type": "string" + }, + "name": { + "description": "The user friendly flag name", + "example": "Test Flag", + "type": "string" + } + }, + "required": [ + "identifier", + "name" + ], + "type": "object" + }, + "FlagBasicInfos": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "featureFlags": { + "items": { + "$ref": "#/components/schemas/FlagBasicInfo" + }, + "type": "array" + } + } + } + ], + "description": "A list of Flags", + "type": "object" + }, + "CfGitDetails": { + "description": "The commit message to use as part of a gitsync operation", + "properties": { + "commitMsg": { + "description": "A description of the change or action", + "example": "Turning on flag test-flag for production", + "type": "string" + } + }, + "required": [ + "commitMsg" + ], + "type": "object" + }, + "GitSyncPatchOperation": { + "properties": { + "comment": { + "description": "A comment explaining the reason for this patch operation", + "example": "This is a comment string", + "type": "string" + }, + "executionTime": { + "description": "Time of execution in unix epoch milliseconds when the scheduled changes will be applied", + "type": "integer" + }, + "gitDetails": { + "$ref": "#/components/schemas/CfGitDetails" + }, + "instructions": { + "$ref": "#/components/schemas/PatchInstruction" + } + }, + "required": [ + "instructions" + ], + "type": "object" + }, + "GroupServingRule": { + "description": "The rule used to determine what variation to serve to a target", + "properties": { + "clauses": { + "description": "A list of clauses to use in the rule", + "items": { + "$ref": "#/components/schemas/Clause" + }, + "type": "array" + }, + "priority": { + "description": "The rules priority relative to other rules. The rules are evaluated in order with 1 being the highest", + "example": 1, + "type": "integer" + }, + "ruleId": { + "description": "The unique identifier for this rule", + "type": "string" + } + }, + "required": [ + "ruleId", + "clauses", + "priority" + ], + "type": "object" + }, + "JiraIssue": { + "description": "A Jira Issue", + "properties": { + "issueKey": { + "description": "The Jira Issue key", + "example": "FFM-7777", + "type": "string" + }, + "issueURL": { + "description": "The jira issue URL", + "example": "https://harness-dev1.atlassian.net", + "type": "string" + } + }, + "required": [ + "issueKey", + "issueURL" + ], + "type": "object" + }, + "OrganizationDictionary": { + "additionalProperties": { + "$ref": "#/components/schemas/ProjectDictionary" + }, + "type": "object" + }, + "Pagination": { + "properties": { + "itemCount": { + "description": "The total number of items", + "example": 1, + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + }, + "version": { + "description": "The version of this object. The version will be incremented each time the object is modified", + "example": 5, + "type": "integer" + } + }, + "required": [ + "pageCount", + "itemCount", + "pageSize", + "pageIndex" + ], + "type": "object" + }, + "PatchInstruction": { + "description": "A list of Patch Instructions", + "items": { + "properties": { + "kind": { + "description": "The name of the modification you would like to perform on a resource.", + "example": "enableFeatureFlag", + "type": "string" + }, + "parameters": { + "example": { + "ruleId": "TestRule", + "variationID": "TestVariation" + }, + "type": "object" + } + }, + "required": [ + "kind", + "parameters" + ] + }, + "type": "array" + }, + "Prerequisite": { + "description": "Feature Flag pre-requisites", + "properties": { + "feature": { + "description": "The feature identifier that is the prerequisite", + "type": "string" + }, + "variations": { + "description": "A list of variations that must be met", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "feature", + "variations" + ], + "type": "object" + }, + "ProjectDictionary": { + "properties": { + "projects": { + "additionalProperties": { + "$ref": "#/components/schemas/ProxyKeyProject" + }, + "type": "object" + } + }, + "type": "object" + }, + "ProxyKey": { + "properties": { + "createdAt": { + "description": "The date the key was created at in milliseconds", + "format": "int64", + "type": "integer" + }, + "description": { + "description": "A description of the Proxy Key", + "example": "This is a proxy key for production", + "type": "string" + }, + "id": { + "description": "The ProxyKeys ID", + "example": "31B0B299-7635-416D-9E99-CFCAA7ADABEA", + "type": "string" + }, + "identifier": { + "description": "The Proxy Keys identifier", + "example": "ProxyKeyOne", + "type": "string" + }, + "name": { + "description": "The ProxyKeys name", + "example": "Proxy Key One", + "type": "string" + }, + "updatedAt": { + "description": "The date the key was last updated at in milliseconds", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "id", + "name", + "identifier", + "description", + "createdAt", + "updatedAt" + ], + "type": "object" + }, + "ProxyKeyInstruction": { + "description": "A Proxy Key instruction", + "properties": { + "instructions": { + "properties": { + "rotateKey": { + "example": "12h", + "type": "string" + }, + "updateConfig": { + "example": { + "organizations": { + "org123": { + "projects": { + "project1": { + "environments": [], + "scope": "all" + }, + "project2": { + "environments": [], + "scope": "prod" + }, + "project3": { + "environments": [], + "scope": "non-prod" + }, + "project4": { + "environments": [ + "env1", + "env2", + "env3" + ], + "scope": "selected" + } + } + } + }, + "version": 1 + }, + "properties": { + "organizations": { + "$ref": "#/components/schemas/OrganizationDictionary" + }, + "version": { + "example": 1, + "type": "integer" + } + }, + "required": [ + "organizations", + "version" + ], + "type": "object" + }, + "updateDescription": { + "example": "new proxyKey updateDescription", + "type": "string" + }, + "updateName": { + "example": "newProxyKey", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ProxyKeyProject": { + "properties": { + "environments": { + "items": { + "type": "string" + }, + "type": "array" + }, + "scope": { + "enum": [ + "all", + "prod", + "non-prod", + "selected" + ], + "type": "string" + } + }, + "required": [ + "scope" + ], + "type": "object" + }, + "ProxyKeys": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "proxyKeys": { + "items": { + "$ref": "#/components/schemas/ProxyKey" + }, + "type": "array" + } + } + } + ], + "description": "A list of Proxy Keys", + "type": "object" + }, + "Results": { + "description": "This result object shows details of how many times a variation has been evaluated", + "properties": { + "count": { + "description": "The number of times this variation has been returned in a evaluation", + "type": "integer" + }, + "variationIdentifier": { + "description": "The unique variation identifier", + "example": "defaultOnVariation", + "type": "string" + }, + "variationName": { + "description": "The user friendly variation name", + "example": "Default On Variation", + "type": "string" + } + }, + "required": [ + "variationIdentifier", + "variationName", + "count" + ], + "type": "object" + }, + "Segment": { + "description": "A Target Group (Segment) response", + "properties": { + "createdAt": { + "description": "The data and time in milliseconds when the group was created", + "format": "int64", + "type": "integer" + }, + "environment": { + "description": "The environment this target group belongs to", + "example": "Production", + "type": "string" + }, + "excluded": { + "description": "A list of Targets who are excluded from this target group", + "items": { + "$ref": "#/components/schemas/Target" + }, + "type": "array" + }, + "identifier": { + "description": "Unique identifier for the target group.", + "type": "string" + }, + "included": { + "description": "A list of Targets who belong to this target group", + "items": { + "$ref": "#/components/schemas/Target" + }, + "type": "array" + }, + "modifiedAt": { + "description": "The data and time in milliseconds when the group was last modified", + "format": "int64", + "type": "integer" + }, + "name": { + "description": "Name of the target group.", + "example": "Beta Testers", + "type": "string" + }, + "rules": { + "items": { + "$ref": "#/components/schemas/Clause" + }, + "type": "array" + }, + "servingRules": { + "description": "An array of rules that can cause a user to be included in this segment.", + "items": { + "$ref": "#/components/schemas/GroupServingRule" + }, + "type": "array" + }, + "tags": { + "description": "Tags for this target group", + "items": { + "$ref": "#/components/schemas/Tag" + }, + "type": "array" + }, + "version": { + "description": "The version of this group. Each time it is modified the version is incremented", + "example": 1, + "format": "int64", + "type": "integer" + } + }, + "required": [ + "identifier", + "name" + ], + "type": "object" + }, + "SegmentFlag": { + "description": "Details of a Feature Flag that has been included in a Target Group (Segment)", + "properties": { + "description": { + "description": "A description of the feature flag", + "type": "string" + }, + "environment": { + "description": "The environment identifier for the feature flag", + "type": "string" + }, + "identifier": { + "description": "The identifier of the feature flag", + "example": "simple-bool", + "type": "string" + }, + "name": { + "description": "The name of the feature flag", + "example": "Simple Bool", + "type": "string" + }, + "project": { + "description": "The project identifier for the feature flag", + "type": "string" + }, + "ruleId": { + "description": "The unique identifier for this rule", + "type": "string" + }, + "type": { + "description": "How the the flag has been included, either directly or via a custom rule", + "enum": [ + "DIRECT", + "CONDITION" + ], + "type": "string" + }, + "variation": { + "description": "The identifier for the variation of the flag that should be served to members of the group", + "type": "string" + } + }, + "required": [ + "identifier", + "type", + "project", + "environment", + "name", + "variation" + ], + "type": "object" + }, + "Segments": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "segments": { + "items": { + "$ref": "#/components/schemas/Segment" + }, + "type": "array" + } + } + } + ], + "description": "A list of Target Groups (Segments)", + "type": "object" + }, + "Serve": { + "description": "Describe the distribution rule and the variation that should be served to the target", + "properties": { + "distribution": { + "$ref": "#/components/schemas/Distribution" + }, + "variation": { + "type": "string" + } + }, + "type": "object" + }, + "CfService": { + "description": "A Harness service linked to a flag", + "properties": { + "identifier": { + "description": "The identifier of the service", + "type": "string" + }, + "name": { + "description": "The name of the service", + "type": "string" + } + }, + "required": [ + "name", + "identifier" + ], + "type": "object" + }, + "ServingRule": { + "description": "The rule used to determine what variation to serve to a target", + "properties": { + "clauses": { + "description": "A list of clauses to use in the rule", + "items": { + "$ref": "#/components/schemas/Clause" + }, + "type": "array" + }, + "priority": { + "description": "The rules priority relative to other rules. The rules are evaluated in order with 1 being the highest", + "example": 1, + "type": "integer" + }, + "ruleId": { + "description": "The unique identifier for this rule", + "type": "string" + }, + "serve": { + "$ref": "#/components/schemas/Serve" + } + }, + "required": [ + "priority", + "clauses", + "serve" + ], + "type": "object" + }, + "Tag": { + "description": "A Tag object used to tag feature flags - consists of name and identifier", + "properties": { + "identifier": { + "description": "The identifier of the tag", + "example": "feature-flag-tag-1", + "type": "string" + }, + "name": { + "description": "The name of the tag", + "example": "feature-flag-tag-1", + "type": "string" + } + }, + "required": [ + "name", + "identifier" + ], + "type": "object" + }, + "TagResponseMetadata": { + "properties": { + "details": { + "description": "Additional metadata about the request", + "properties": { + "governanceMetadata": { + "description": "Summary of governance checks including any warnings", + "type": "object" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "Tags": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "tags": { + "items": { + "$ref": "#/components/schemas/Tag" + }, + "type": "array" + } + } + } + ], + "description": "A list of Tags - requirement for feature flag tagging", + "type": "object" + }, + "Target": { + "description": "A Target object", + "properties": { + "account": { + "description": "The account ID that the target belongs to", + "example": "abcXDdffdaffd", + "type": "string" + }, + "anonymous": { + "description": "Indicates if this target is anonymous", + "type": "boolean" + }, + "attributes": { + "description": "a JSON representation of the attributes for this target", + "example": { + "age": 20, + "location": "Belfast" + }, + "type": "object" + }, + "createdAt": { + "description": "The date and time in milliseconds when this Target was created", + "format": "int64", + "type": "integer" + }, + "environment": { + "description": "The identifier for the environment that the target belongs to", + "type": "string" + }, + "identifier": { + "description": "The unique identifier for this target", + "example": "john-doe", + "type": "string" + }, + "name": { + "description": "The name of this Target", + "example": "John Doe", + "type": "string" + }, + "org": { + "description": "The identifier for the organization that the target belongs to", + "type": "string" + }, + "project": { + "description": "The identifier for the project that this target belongs to", + "type": "string" + }, + "segments": { + "description": "A list of Target Groups (Segments) that this Target belongs to", + "items": { + "$ref": "#/components/schemas/Segment" + }, + "type": "array" + } + }, + "required": [ + "identifier", + "name", + "environment", + "project", + "account", + "org" + ], + "type": "object" + }, + "TargetDetail": { + "description": "Details of which Target Groups (Segments) a target is included in or excluded from", + "properties": { + "excludedSegments": { + "description": "A list of target groups (segments) that the target is excluded from.", + "items": { + "$ref": "#/components/schemas/TargetDetailSegment" + }, + "type": "array" + }, + "identifier": { + "description": "The unique identifier for the target", + "type": "string" + }, + "includedSegments": { + "description": "A list of target groups (segments) that the target is included in.", + "items": { + "$ref": "#/components/schemas/TargetDetailSegment" + }, + "type": "array" + }, + "ruleSegments": { + "description": "A list of target groups (segments) that the target is included in via group rules.", + "items": { + "$ref": "#/components/schemas/TargetDetailSegment" + }, + "type": "array" + } + }, + "required": [ + "identifier", + "environment", + "project", + "account", + "org" + ], + "type": "object" + }, + "TargetDetailSegment": { + "properties": { + "identifier": { + "description": "The unique identifier", + "type": "string" + }, + "name": { + "description": "The name", + "type": "string" + } + }, + "type": "object" + }, + "TargetMap": { + "description": "Target map provides the details of a target that belongs to a flag", + "properties": { + "identifier": { + "description": "The identifier for the target", + "type": "string" + }, + "name": { + "description": "The name of the target", + "type": "string" + } + }, + "required": [ + "identifier", + "name" + ], + "type": "object" + }, + "TargetRulesUpdate": { + "description": "An object used to specify updates for flag activation updates", + "properties": { + "targets": { + "description": "The target rules that should be set for this variation", + "example": [ + "target1", + "target2" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "variation": { + "description": "The name of the variation these rules apply to", + "example": true, + "type": "string" + } + }, + "required": [ + "variation" + ], + "type": "object" + }, + "Targets": { + "allOf": [ + { + "$ref": "#/components/schemas/Pagination" + }, + { + "properties": { + "targets": { + "items": { + "$ref": "#/components/schemas/Target" + }, + "type": "array" + } + } + } + ], + "description": "A list of Targets", + "type": "object" + }, + "Variation": { + "description": "A variation of a flag that can be returned to a target", + "properties": { + "description": { + "description": "A description of the variation", + "type": "string" + }, + "identifier": { + "description": "The unique identifier for the variation", + "example": "off-variation", + "type": "string" + }, + "name": { + "description": "The user friendly name of the variation", + "example": "Off VAriation", + "type": "string" + }, + "value": { + "description": "The variation value to serve such as true or false for a boolean flag", + "example": "true", + "type": "string" + } + }, + "required": [ + "identifier", + "value" + ], + "type": "object" + }, + "VariationMap": { + "description": "A mapping of variations to targets and target groups (segments). The targets listed here should receive this variation.", + "properties": { + "targetSegments": { + "description": "A list of target groups (segments)", + "items": { + "type": "string" + }, + "type": "array" + }, + "targets": { + "description": "A list of target mappings", + "items": { + "$ref": "#/components/schemas/TargetMap" + }, + "type": "array" + }, + "variation": { + "description": "The variation identifier", + "example": "off-variation", + "type": "string" + } + }, + "required": [ + "variation" + ], + "type": "object" + }, + "WeightedVariation": { + "description": "A variation and the weighting it should receive as part of a percentage rollout", + "properties": { + "variation": { + "description": "The variation identifier", + "example": "off-variation", + "type": "string" + }, + "weight": { + "description": "The weight to be given to the variation in percent", + "example": 50, + "type": "integer" + } + }, + "required": [ + "variation", + "weight" + ], + "type": "object" + }, + "DeleteAccessPointPayload": { + "type": "object", + "properties": { + "ids": { + "type": "array", + "items": { + "type": "string" + } + }, + "with_resources": { + "type": "boolean" + } + } + }, + "LwService": { + "required": [ + "cloud_account_id", + "kind", + "name", + "org_id" + ], + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + }, + "org_id": { + "type": "string" + }, + "account_identifier": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "fulfilment": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "cloud_account_id": { + "type": "string" + }, + "idle_time_mins": { + "type": "integer", + "format": "int64" + }, + "host_name": { + "type": "string" + }, + "health_check": { + "type": "object", + "properties": {} + }, + "custom_domains": { + "type": "array", + "items": { + "type": "string" + } + }, + "match_all_subdomains": { + "type": "boolean" + }, + "disabled": { + "type": "boolean" + }, + "routing": { + "$ref": "#/components/schemas/RoutingData" + }, + "opts": { + "$ref": "#/components/schemas/Opts" + }, + "created_at": { + "type": "string" + }, + "access_point_id": { + "type": "string" + }, + "metadata": { + "$ref": "#/components/schemas/ServiceMetadata" + }, + "status": { + "type": "string" + } + } + }, + "ServiceV2": { + "required": [ + "cloud_account_id", + "kind", + "name", + "org_id" + ], + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + }, + "org_id": { + "type": "string" + }, + "account_identifier": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "fulfilment": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "cloud_account_id": { + "type": "string" + }, + "idle_time_mins": { + "type": "integer", + "format": "int64" + }, + "host_name": { + "type": "string" + }, + "health_check": { + "type": "object", + "properties": {} + }, + "custom_domains": { + "type": "array", + "items": { + "type": "string" + } + }, + "match_all_subdomains": { + "type": "boolean" + }, + "disabled": { + "type": "boolean" + }, + "routing": { + "$ref": "#/components/schemas/RoutingDataV2" + }, + "created_at": { + "type": "string" + }, + "metadata": { + "$ref": "#/components/schemas/ServiceMetadata" + }, + "status": { + "type": "string" + } + } + }, + "ServiceMetadata": { + "type": "object", + "properties": { + "cloud_provider_details": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "type": { + "type": "string" + } + } + }, + "target_group_details": { + "type": "object", + "properties": {} + }, + "service_errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceError" + } + }, + "kubernetes_connector_id": { + "type": "string" + }, + "autostopping_proxy_config": { + "type": "object", + "properties": { + "http": { + "$ref": "#/components/schemas/HTTPProxy" + }, + "tcp": { + "$ref": "#/components/schemas/HTTPProxy" + } + } + } + } + }, + "ServiceError": { + "type": "object", + "properties": { + "error": { + "type": "string" + }, + "action": { + "type": "string" + } + } + }, + "ServiceDep": { + "type": "object" + }, + "ServiceHealthResponse": { + "type": "object", + "properties": { + "response": { + "type": "object", + "properties": {} + } + } + }, + "SaveServiceRequest": { + "type": "object", + "properties": { + "deps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDep" + } + }, + "service": { + "$ref": "#/components/schemas/LwService" + }, + "apply_now": { + "type": "boolean" + } + } + }, + "SaveServiceRequestV2": { + "type": "object", + "properties": { + "deps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDep" + } + }, + "service": { + "$ref": "#/components/schemas/ServiceV2" + }, + "apply_now": { + "type": "boolean" + } + } + }, + "LwResource": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "region": { + "type": "string" + }, + "availability_zone": { + "type": "string" + }, + "status": { + "type": "string" + }, + "type": { + "type": "string" + }, + "launch_time": { + "type": "string" + }, + "ipv4": { + "type": "array", + "items": { + "type": "string" + } + }, + "private_ipv4": { + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "type": "object", + "properties": {}, + "description": "tag key as attribute key and tag value as attribute value" + }, + "resource_type": { + "type": "string" + }, + "provider_name": { + "type": "string" + }, + "is_spot": { + "type": "boolean" + }, + "platform": { + "type": "string" + }, + "cloud_account_id": { + "type": "number" + }, + "metadata": { + "type": "object", + "properties": {} + }, + "provider_type": { + "type": "string" + } + } + }, + "AllResourcesOfAccountResponse": { + "type": "object", + "properties": { + "response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LwResource" + } + } + } + }, + "ServiceUsageRecord": { + "type": "object", + "properties": { + "service_id": { + "type": "number" + }, + "path": { + "type": "string" + }, + "session_id": { + "type": "string" + }, + "idle_time_mins": { + "type": "number" + }, + "created_at": { + "type": "string" + } + } + }, + "LwServiceResponse": { + "type": "object", + "properties": { + "response": { + "$ref": "#/components/schemas/LwService" + } + } + }, + "ServicesResponse": { + "type": "object", + "properties": { + "response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LwService" + } + } + } + }, + "ServiceDepTree": { + "type": "object", + "properties": { + "service": { + "$ref": "#/components/schemas/LwService" + }, + "children": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDepTree" + } + } + } + }, + "InstanceBasedRoutingData": { + "type": "object", + "properties": { + "filter_text": { + "type": "string" + }, + "scale_group": { + "$ref": "#/components/schemas/ASGMinimal" + } + } + }, + "InstanceBasedRoutingDataV2": { + "type": "object", + "properties": { + "filter": { + "$ref": "#/components/schemas/FilterObject" + }, + "scale_group": { + "$ref": "#/components/schemas/ASGMinimal" + } + } + }, + "FilterObject": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "ids": { + "type": "array", + "items": { + "type": "string" + } + }, + "regions": { + "type": "array", + "items": { + "type": "string" + } + }, + "resource_groups": { + "type": "array", + "items": { + "type": "string" + } + }, + "vpc_id": { + "type": "string" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "type": "object", + "properties": {} + } + } + }, + "Proxy": { + "type": "object", + "properties": { + "id": { + "type": "string" + } + } + }, + "HTTPProxy": { + "required": [ + "proxy", + "ports" + ], + "type": "object", + "properties": { + "proxy": { + "$ref": "#/components/schemas/Proxy" + }, + "ports": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PortConfig" + } + } + } + }, + "TCPProxy": { + "required": [ + "proxy" + ], + "type": "object", + "properties": { + "proxy": { + "$ref": "#/components/schemas/Proxy" + }, + "ssh": { + "type": "integer" + }, + "rdp": { + "type": "integer" + }, + "ports": { + "type": "array", + "items": { + "type": "integer" + } + } + } + }, + "Opts": { + "type": "object", + "properties": { + "preserve_private_ip": { + "type": "boolean" + }, + "delete_cloud_resources": { + "type": "boolean" + }, + "always_use_private_ip": { + "type": "boolean" + }, + "access_details": { + "type": "object", + "properties": {} + }, + "hide_progress_page": { + "type": "boolean" + } + } + }, + "PortConfig": { + "type": "object", + "properties": { + "protocol": { + "type": "string" + }, + "target_protocol": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "target_port": { + "type": "integer" + }, + "server_name": { + "type": "string" + }, + "action": { + "type": "string" + }, + "redirect_url": { + "type": "string" + }, + "routing_rules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RoutingRule" + } + } + } + }, + "RoutingRule": { + "type": "object", + "properties": { + "path_match": { + "type": "string" + } + } + }, + "RoutingData": { + "type": "object", + "properties": { + "instance": { + "$ref": "#/components/schemas/InstanceBasedRoutingData" + }, + "ports": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PortConfig" + } + }, + "lb": { + "type": "string" + }, + "k8s": { + "type": "object", + "properties": { + "RuleJson": { + "type": "string" + }, + "ConnectorID": { + "type": "string" + }, + "Namespace": { + "type": "string" + } + } + }, + "custom_domain_providers": { + "type": "object", + "properties": {} + }, + "container_svc": { + "$ref": "#/components/schemas/ContainerSvc" + }, + "database": { + "$ref": "#/components/schemas/RDSDatabase" + } + } + }, + "RoutingDataV2": { + "type": "object", + "properties": { + "instance": { + "$ref": "#/components/schemas/InstanceBasedRoutingDataV2" + }, + "lb": { + "type": "string" + }, + "k8s": { + "type": "object", + "properties": { + "RuleJson": { + "type": "string" + }, + "ConnectorID": { + "type": "string" + }, + "Namespace": { + "type": "string" + } + } + }, + "custom_domain_providers": { + "type": "object", + "properties": {} + }, + "container_svc": { + "$ref": "#/components/schemas/ContainerSvc" + }, + "database": { + "$ref": "#/components/schemas/RDSDatabase" + }, + "http": { + "$ref": "#/components/schemas/HTTPProxy" + }, + "tcp": { + "$ref": "#/components/schemas/TCPProxy" + } + } + }, + "RDSDatabase": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "region": { + "type": "string" + } + } + }, + "ContainerSvc": { + "type": "object", + "properties": { + "cluster": { + "type": "string" + }, + "service": { + "type": "string" + }, + "region": { + "type": "string" + }, + "task_count": { + "type": "number" + } + } + }, + "AccessPointMeta": { + "type": "object", + "properties": { + "error": { + "type": "string" + }, + "certificate_id": { + "type": "string" + }, + "security_groups": { + "type": "array", + "items": { + "type": "string" + } + }, + "dns": { + "type": "object", + "properties": { + "route53": { + "type": "object", + "properties": { + "hosted_zone_id": { + "type": "string" + } + } + }, + "others": { + "type": "string" + } + } + }, + "albArn": { + "type": "string" + }, + "resource_group": { + "type": "string" + }, + "fe_ip_id": { + "type": "string" + }, + "subnet_id": { + "type": "string" + }, + "size": { + "type": "string" + }, + "app_gateway_id": { + "type": "string" + }, + "subnet_name": { + "type": "string" + }, + "fe_ip_name": { + "type": "string" + }, + "certificate": { + "$ref": "#/components/schemas/CertificateData" + }, + "func_region": { + "type": "string" + } + } + }, + "CertificateData": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "password": { + "type": "string" + }, + "content": { + "type": "string" + } + } + }, + "AccessPoint": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "account_id": { + "type": "string" + }, + "cloud_account_id": { + "type": "string" + }, + "org_id": { + "type": "string" + }, + "project_id": { + "type": "string" + }, + "host_name": { + "type": "string" + }, + "region": { + "type": "string" + }, + "type": { + "type": "string" + }, + "name": { + "type": "string" + }, + "vpc": { + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "created", + "submitted", + "errored" + ] + }, + "metadata": { + "$ref": "#/components/schemas/AccessPointMeta" + }, + "subnets": { + "type": "array", + "items": { + "type": "string" + } + }, + "security_groups": { + "type": "array", + "items": { + "type": "string" + } + }, + "editables": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CreateAccessPointResponse": { + "type": "object", + "properties": { + "response": { + "$ref": "#/components/schemas/AccessPoint" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + }, + "metadata": { + "type": "object", + "properties": {} + } + } + }, + "ListAccessPointResponse": { + "type": "object", + "properties": { + "response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AccessPoint" + } + } + } + }, + "GetAccessPointResponse": { + "type": "object", + "properties": { + "response": { + "$ref": "#/components/schemas/AccessPoint" + } + } + }, + "CumulativeSavings": { + "type": "object", + "properties": { + "days": { + "type": "array", + "items": { + "type": "string" + } + }, + "potential_cost": { + "type": "array", + "items": { + "type": "number", + "format": "float" + } + }, + "actual_cost": { + "type": "array", + "items": { + "type": "number", + "format": "float" + } + }, + "savings": { + "type": "array", + "items": { + "type": "number", + "format": "float" + } + }, + "total_savings": { + "type": "number", + "format": "float" + }, + "total_potential": { + "type": "number", + "format": "float" + }, + "total_cost": { + "type": "number", + "format": "float" + }, + "savings_percent": { + "type": "number", + "format": "float" + }, + "total_active_services": { + "type": "number", + "format": "int64" + } + } + }, + "CumulativeSavingsResponse": { + "type": "object", + "properties": { + "response": { + "$ref": "#/components/schemas/CumulativeSavings" + } + } + }, + "AccessPointActivityResponse": { + "type": "object", + "properties": { + "response": { + "$ref": "#/components/schemas/ServiceUsageRecord" + } + } + }, + "ServiceDiagnosticsResponse": { + "type": "object", + "properties": { + "response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDiagnostics" + } + } + } + }, + "ASGMinimal": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "desired": { + "type": "integer" + }, + "min": { + "type": "integer" + }, + "max": { + "type": "integer" + }, + "on_demand": { + "type": "integer" + }, + "spot": { + "type": "integer" + }, + "mixed_instance": { + "type": "boolean" + }, + "cloud_account_id": { + "type": "string" + }, + "provider_name": { + "type": "string" + }, + "target_groups": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TargetGroupMinimal" + } + }, + "region": { + "type": "string" + }, + "availability_zones": { + "type": "array", + "items": { + "type": "string" + } + }, + "status": { + "type": "string" + }, + "meta": { + "type": "object", + "properties": {} + } + } + }, + "TargetGroupMinimal": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "protocol": { + "type": "string" + }, + "vpc": { + "type": "string" + } + } + }, + "SaveStaticSchedulesRequest": { + "type": "object", + "properties": { + "schedule": { + "$ref": "#/components/schemas/FixedSchedule" + }, + "id": { + "type": "number" + } + } + }, + "FixedSchedule": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the schedule" + }, + "id": { + "type": "number", + "description": "ID of fixed schedule", + "readOnly": true + }, + "account": { + "type": "string", + "description": "ID of account" + }, + "description": { + "type": "string", + "description": "Description of fixed schedule" + }, + "resources": { + "type": "array", + "description": "List of resources to be controlled by the schedule", + "items": { + "$ref": "#/components/schemas/StaticScheduleResource" + } + }, + "details": { + "$ref": "#/components/schemas/OccurrenceSchedule" + } + } + }, + "StaticScheduleResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "ID of the resource to be controlled by schedule. For AutoStopping rule, this would be the ID of the rule" + }, + "type": { + "type": "string", + "description": "Type of the resource to be controlled", + "enum": [ + "autostop_rule" + ] + } + }, + "description": "Details of an independent resource that can be controlled by a schedule" + }, + "OccurrenceSchedule": { + "type": "object", + "properties": { + "uptime": { + "$ref": "#/components/schemas/TimeSchedule" + }, + "downtime": { + "$ref": "#/components/schemas/TimeSchedule" + }, + "timezone": { + "type": "string", + "description": "Time zone in which the schedule should be applied" + } + }, + "description": "Details of time schedule by which the resource should be controlled" + }, + "TimeSchedule": { + "type": "object", + "properties": { + "period": { + "type": "object", + "properties": { + "start": { + "type": "string", + "description": "Start time of the period", + "example": "2021-10-19T08:35:00.927Z" + }, + "end": { + "type": "string", + "description": "End time of the period", + "example": "2021-10-19T08:37:58.927Z" + } + }, + "description": "For schedules that uses an exact time period" + }, + "days": { + "type": "object", + "properties": { + "days": { + "type": "array", + "description": "Days of week on which the schedule should be executed", + "items": { + "type": "number" + } + }, + "all_day": { + "type": "boolean", + "description": "Equivalent to selecting all days" + }, + "start_time": { + "$ref": "#/components/schemas/TimeInDay" + }, + "end_time": { + "$ref": "#/components/schemas/TimeInDay" + } + }, + "description": "For specifying a recurring schedule in terms of week days" + } + }, + "description": "Specifies the occurrence schedule. Occurrence schedule can either be specified as period or as days" + }, + "TimeInDay": { + "type": "object", + "properties": { + "hour": { + "type": "number", + "description": "Hour" + }, + "min": { + "type": "number", + "description": "Minutes" + } + } + }, + "FixedSchedulesListResponse": { + "type": "object", + "properties": { + "response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FixedSchedule" + } + } + } + }, + "ServiceDiagnostics": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "Error message if success were to be false" + }, + "name": { + "type": "string", + "description": "Name of the check" + }, + "success": { + "type": "boolean", + "description": "Flag which specifies if a diagnostic check is successful" + }, + "type": { + "type": "string" + } + } + }, + "CoolDownOption": { + "type": "object", + "properties": { + "propagate": { + "type": "boolean", + "description": "Specifies if we need to propagate cool down to dependant rules" + }, + "force": { + "type": "boolean", + "description": "Specifies if the cool down is by force" + } + } + }, + "WarmUpOption": { + "type": "object", + "properties": { + "idle_time_mins": { + "type": "integer", + "required": true, + "description": "Specifies time for which resource should be running", + "default": "5" + }, + "source": { + "type": "string", + "required": true, + "description": "Specifies source of warm up", + "default": "Warm up through API" + }, + "forced_trigger": { + "type": "boolean", + "description": "Specifies warm up as force action to override schedules", + "required": true, + "default": true + } + } + }, + "CoolDownMetaSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "response": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Name of dependant autostopping rules which will be shut down" + } + } + }, + "CoolDownMetaFailureResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Errors" + } + } + }, + "ConnectedKubernetesClustersListResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + }, + "response": { + "type": "object", + "properties": { + "clusters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectedKubernetesCluster" + } + } + } + } + } + }, + "ConnectedKubernetesCluster": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "account_id": { + "type": "string" + }, + "k8s_connector_id": { + "type": "string", + "description": "This is the CCM Kubernetes Cost Connector ID" + }, + "provider": { + "type": "string", + "example": "AWS" + }, + "name": { + "type": "string", + "description": "This is the name of the cluster" + }, + "region": { + "type": "string", + "example": "us-east-1" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "health": { + "type": "object", + "nullable": true, + "properties": { + "raw_json": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectedClusterHealthStatus" + } + } + } + }, + "total_spend": { + "type": "number", + "example": 0 + }, + "total_savings": { + "type": "number", + "example": 0 + }, + "config": { + "type": "object", + "nullable": true, + "properties": { + "spot_distribution": { + "type": "string", + "enum": [ + "ALL", + "SpotReady", + "None" + ] + }, + "node_deletion_delay": { + "type": "integer", + "example": 0 + }, + "distribution_strategy": { + "type": "string", + "example": "CostOptimized", + "enum": [ + "CostOptimized", + "LeastInterrupted" + ] + }, + "base_on_demand_capacity": { + "type": "integer", + "example": 1 + }, + "spot_split": { + "type": "integer", + "example": 70 + }, + "on_demand_split": { + "type": "integer", + "example": 30 + }, + "consolidation": { + "type": "object", + "nullable": true, + "properties": { + "policy": { + "type": "string", + "example": "WhenEmptyOrUnderutilized", + "enum": [ + "WhenEmptyOrUnderutilized", + "WhenEmpty" + ] + }, + "after": { + "type": "string", + "example": "1h5m", + "description": "Consolidation will be performed after this window" + }, + "budgets": { + "type": "array", + "nullable": true, + "items": { + "$ref": "#/components/schemas/ClusterConsolidationBudget" + } + }, + "node_expiry": { + "type": "string", + "nullable": true, + "example": "24h", + "description": "This is the max age for nodes created by cluster orchestrator" + }, + "pod_evictor": { + "$ref": "#/components/schemas/ClusterOrchestratorPodEvictor" + } + } + }, + "reverse_fallback": { + "type": "string", + "nullable": true, + "example": "6h", + "description": "The nodes which were replaced by a fallback ondemand node will be retried for spot after this window" + } + } + } + } + }, + "ConnectedClusterHealthStatus": { + "type": "object", + "properties": { + "status": { + "type": "string", + "example": "success" + }, + "service": { + "type": "string", + "example": "telemetry_collector" + }, + "raw_json": { + "type": "string", + "nullable": true, + "example": null + }, + "last_heart_beat_received_at": { + "type": "string", + "format": "date-time", + "example": "2025-02-28T20:07:13Z" + } + } + }, + "ClusterOrchestratorPodEvictor": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "example": false + }, + "evict_single_replicas": { + "type": "boolean", + "example": false + }, + "minimum_cpu": { + "type": "integer", + "example": 50 + }, + "minimum_memory": { + "type": "integer", + "example": 50 + } + } + }, + "ClusterConsolidationBudget": { + "type": "object", + "properties": { + "reasons": { + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "Drifted", + "Underutilized", + "Empty" + ] + }, + "nodes": { + "type": "string", + "example": "20%" + }, + "schedule": { + "type": "string", + "nullable": true, + "example": "midnight" + }, + "duration": { + "type": "string", + "nullable": true, + "example": "10m0s" + } + } + }, + "OnboardToClusterOrchestratorRequest": { + "type": "object", + "description": "Configuration for cluster setup", + "required": [ + "name", + "user_config", + "k8s_connector_id" + ], + "properties": { + "name": { + "type": "string", + "description": "Name identifier for the cluster configuration" + }, + "user_config": { + "type": "object", + "description": "User-specific configuration settings for the cluster", + "required": [ + "cluster_endpoint" + ], + "properties": { + "cluster_endpoint": { + "type": "string", + "description": "API end point of the Kubernetes cluster as per the cloud provider" + } + } + }, + "k8s_connector_id": { + "type": "string", + "description": "ID for the CCM Cloud Cost Kubernetes connector" + } + } + }, + "ConnectedKubernetesClustersGetResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + }, + "response": { + "$ref": "#/components/schemas/ConnectedKubernetesCluster" + } + } + }, + "ClusterOrchestratorConfig": { + "type": "object", + "description": "Configuration for cluster orchestrator", + "required": [ + "cluster_id", + "base_on_demand_capacity", + "distribution_strategy", + "on_demand_split", + "spot_distribution", + "spot_split", + "consolidation" + ], + "properties": { + "cluster_id": { + "type": "string", + "description": "Identifier of the Orchestrator of the cluster, available in list response and onboard response" + }, + "base_on_demand_capacity": { + "type": "integer", + "description": "Base capacity for on-demand instances", + "minimum": 0 + }, + "distribution_strategy": { + "type": "string", + "description": "Strategy for distributing workloads", + "enum": [ + "CostOptimized", + "LeastInterrupted" + ] + }, + "on_demand_split": { + "type": "integer", + "description": "Percentage of on-demand split for workloads", + "minimum": 0, + "maximum": 100 + }, + "spot_distribution": { + "type": "string", + "description": "Distribution strategy for spot instances", + "enum": [ + "SpotReady", + "ALL" + ] + }, + "spot_split": { + "type": "integer", + "description": "Percentage of spot split for workloads", + "minimum": 0, + "maximum": 100 + }, + "node_deletion_delay": { + "type": "integer", + "description": "Delay in seconds before node deletion", + "minimum": 0 + }, + "consolidation": { + "type": "object", + "description": "Configuration for node consolidation", + "required": [ + "policy", + "budgets", + "pod_evictor" + ], + "properties": { + "policy": { + "type": "string", + "description": "Consolidation policy", + "enum": [ + "WhenEmptyOrUnderutilized", + "WhenEmpty" + ] + }, + "after": { + "type": "string", + "description": "Time after which consolidation starts" + }, + "budgets": { + "type": "array", + "description": "List of consolidation budgets", + "items": { + "type": "object", + "required": [ + "reasons", + "nodes" + ], + "properties": { + "reasons": { + "type": "array", + "description": "Reasons for consolidation", + "items": { + "type": "string", + "enum": [ + "Empty", + "Underutilized", + "Drifted" + ] + } + }, + "nodes": { + "type": "string", + "description": "Percentage of nodes to consolidate", + "pattern": "^[0-9]+%$" + } + } + } + }, + "node_expiry": { + "type": "string", + "nullable": true, + "description": "Node expiration time" + }, + "pod_evictor": { + "type": "object", + "nullable": true, + "description": "Configuration for pod eviction", + "required": [ + "enabled", + "evict_single_replicas", + "minimum_cpu", + "minimum_memory" + ], + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable pod eviction" + }, + "evict_single_replicas": { + "type": "boolean", + "description": "Allow eviction of single replica pods" + }, + "minimum_cpu": { + "type": "integer", + "description": "Minimum CPU percentage threshold for eviction", + "minimum": 0, + "maximum": 100 + }, + "minimum_memory": { + "type": "integer", + "description": "Minimum memory percentage threshold for eviction", + "minimum": 0, + "maximum": 100 + } + } + } + } + }, + "reverse_fallback": { + "type": "object", + "nullable": true, + "description": "Configuration for reverse fallback strategy" + } + } + }, + "LandingPageResponse": { + "type": "object", + "required": [ + "ts", + "success", + "response" + ], + "properties": { + "ts": { + "type": "integer", + "format": "int64", + "description": "Timestamp of the response", + "example": 1747338580 + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful", + "example": true + }, + "errors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Error messages if any", + "example": null + }, + "response": { + "type": "array", + "description": "List of cloud accounts with their commitment details", + "items": { + "$ref": "#/components/schemas/CloudAccountCommitment" + } + } + } + }, + "CloudAccountCommitment": { + "type": "object", + "required": [ + "provider_id", + "name", + "cloud_account_id", + "connector_status", + "services" + ], + "properties": { + "provider_id": { + "type": "string", + "description": "Cloud provider account ID", + "example": "101852341822" + }, + "name": { + "type": "string", + "description": "Display name of the cloud account", + "example": "Master Payer CCM" + }, + "cloud_account_id": { + "type": "string", + "description": "Unique identifier for the cloud account", + "example": "Master_Payer_CCM" + }, + "connector_status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "UNKNOWN" + ], + "description": "Status of the connector (SUCCESS, FAILURE, UNKNOWN)", + "example": "FAILURE" + }, + "last_ping": { + "type": "string", + "format": "date-time", + "description": "Last time the connector was pinged", + "example": "2025-05-15T03:01:49-07:00" + }, + "services": { + "type": "array", + "description": "List of services with their commitment details", + "items": { + "$ref": "#/components/schemas/CommitmentService" + } + } + } + }, + "CommitmentService": { + "type": "object", + "required": [ + "name", + "is_enabled", + "coverage", + "target_coverage", + "annualized_savings" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the service", + "example": "Amazon Elastic Compute Cloud - Compute" + }, + "is_enabled": { + "type": "boolean", + "description": "Whether the service is enabled for commitment orchestration", + "example": true + }, + "coverage": { + "type": "number", + "format": "double", + "description": "Current coverage percentage", + "example": 41.422 + }, + "target_coverage": { + "type": "number", + "format": "double", + "description": "Target coverage percentage", + "example": 85 + }, + "annualized_savings": { + "type": "string", + "description": "Annualized savings amount as a string", + "example": "417217.58" + } + } + }, + "PaginationInput": { + "type": "object", + "properties": { + "limit": { + "type": "integer", + "maximum": 100, + "example": 20 + }, + "page": { + "type": "integer", + "example": 1, + "maximum": 100 + } + } + }, + "EventsFilter": { + "type": "object", + "properties": { + "events": { + "type": "array", + "items": { + "type": "string" + } + }, + "group_by": { + "type": "string" + } + } + }, + "EventLogsSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "object", + "properties": { + "total": { + "type": "integer" + }, + "pages": { + "type": "integer" + }, + "events": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EventResponse" + } + } + } + } + } + }, + "EventResponse": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "cloud_account_id": { + "type": "string" + }, + "account_id": { + "type": "string" + }, + "transaction_id": { + "type": "string" + }, + "event_type": { + "type": "string" + }, + "region": { + "type": "string" + }, + "category": { + "type": "string" + }, + "status": { + "type": "string" + }, + "created_at": { + "type": "string", + "example": "2023-07-14T00:59:00.619568Z" + }, + "updated_at": { + "type": "string", + "example": "2023-07-14T00:59:00.619568Z" + }, + "metadata": { + "type": "object" + }, + "description": { + "type": "string" + } + } + }, + "EventsChartsSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "object", + "properties": { + "total": { + "type": "integer" + }, + "pages": { + "type": "integer" + }, + "events": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ChartResponse" + } + } + } + } + } + }, + "ChartResponse": { + "type": "object", + "properties": { + "date": { + "type": "string", + "example": "2023-07-14T00:59:00.619568Z" + }, + "count": { + "type": "integer" + }, + "event_type": { + "type": "string" + } + } + }, + "AutoCUDSetup": { + "type": "object", + "properties": { + "account_id": { + "type": "string" + }, + "cloud_account_id": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "config": { + "type": "object", + "items": { + "$ref": "#/components/schemas/AutoCUDConfig" + } + } + } + }, + "AutoCUDConfig": { + "type": "object", + "properties": { + "exclusion_list": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExclusionEntry" + } + }, + "excluded_cloud_accounts": { + "type": "array", + "items": { + "type": "string" + } + }, + "total_coverage": { + "type": "integer", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "total_coverage" + ] + }, + "InstanceTypesPayload": { + "type": "object", + "properties": { + "instance_families": { + "type": "array", + "items": { + "type": "string" + } + }, + "excluded_cloud_accounts": { + "type": "array", + "items": { + "type": "string" + } + }, + "regions": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ExclusionEntry": { + "type": "object", + "properties": { + "instance_type": { + "type": "string", + "example": "t2.micro" + }, + "region": { + "type": "string", + "example": "us-east-1" + } + } + }, + "ApprovalPayload": { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApprovalAction" + } + } + } + }, + "ApprovalAction": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "example": 13, + "description": "ID of the event being approved or rejected" + }, + "status": { + "type": "string", + "example": "APPROVED", + "enum": [ + "APPROVED", + "REJECTED" + ] + } + } + }, + "ApprovalEvent": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "category": { + "type": "string" + }, + "cloud_account_id": { + "type": "string" + }, + "account_id": { + "type": "string" + }, + "evaluated_at": { + "type": "string" + }, + "metadata": { + "type": "object", + "description": "Map of key and value with data specific to the event type" + } + } + }, + "ApprovalEventSummary": { + "type": "object", + "properties": { + "savings_potential": { + "type": "number" + }, + "event_count": { + "type": "integer" + }, + "event_type": { + "type": "string" + }, + "event_status": { + "type": "string" + } + } + }, + "SetupValidateSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "object", + "properties": { + "savings_plan_max_percentage": { + "type": "integer", + "maximum": 1, + "minimum": 0 + } + } + } + } + }, + "SetupInstanceTypesSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ListInstanceTypesContent" + } + } + } + } + } + }, + "ListInstanceTypesContent": { + "type": "object", + "properties": { + "compute_spend": { + "type": "number" + }, + "coverage_percentage": { + "type": "number" + }, + "region": { + "type": "string" + }, + "instance_type": { + "type": "string" + } + } + }, + "ListMasterSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "object", + "properties": { + "data": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ListMasterContent" + } + } + } + } + } + } + } + }, + "ListMasterContent": { + "type": "object", + "properties": { + "connector": { + "$ref": "#/components/schemas/LwCOConnector" + } + } + }, + "LwCOConnector": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "type": "string" + }, + "spec": { + "type": "object" + } + } + }, + "ListSetupsSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AutoCUDSetup" + } + } + } + }, + "GenericSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + } + } + }, + "ApprovalEventsSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "object", + "properties": { + "total": { + "type": "integer" + }, + "pages": { + "type": "integer" + }, + "events": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApprovalEvent" + } + } + } + } + } + }, + "ApprovalOverviewSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "object", + "properties": { + "result": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApprovalEventSummary" + } + } + } + } + } + }, + "ListChildAccountsSuccessResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation is successful" + }, + "errors": { + "type": "string", + "description": "Specifies the error if the operation failed" + }, + "response": { + "type": "array", + "items": { + "$ref": "#/components/schemas/KeyValuePair" + } + } + } + }, + "KeyValuePair": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "SavingsOverviewResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "properties": { + "overall_savings": { + "type": "number", + "format": "double", + "description": "Total savings amount" + }, + "managed_savings_total": { + "type": "number", + "format": "double", + "description": "Total managed savings" + }, + "unmanaged_savings_total": { + "type": "number", + "format": "double", + "description": "Total unmanaged savings" + }, + "savings_plans": { + "type": "object", + "properties": { + "managed_savings": { + "$ref": "#/components/schemas/SavingsDetails" + }, + "unmanaged_savings": { + "$ref": "#/components/schemas/SavingsDetails" + }, + "sp_total": { + "type": "number", + "format": "double", + "description": "Total savings plan amount" + }, + "sp_percentage": { + "type": "number", + "format": "double", + "description": "Savings plan percentage" + } + } + }, + "reserved_instances": { + "type": "object", + "properties": { + "managed_savings": { + "$ref": "#/components/schemas/SavingsDetails" + }, + "unmanaged_savings": { + "$ref": "#/components/schemas/SavingsDetails" + }, + "ri_total": { + "type": "number", + "format": "double", + "description": "Total reserved instance savings" + }, + "ri_percentage": { + "type": "number", + "format": "double", + "description": "Reserved instance savings percentage" + } + } + } + } + } + } + }, + "SavingsDetails": { + "type": "object", + "properties": { + "total": { + "type": "number", + "format": "double", + "description": "Total amount of savings" + }, + "percentage": { + "type": "number", + "format": "double", + "description": "Percentage of savings" + } + } + }, + "SavingsDetailResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "format": "int64", + "description": "Timestamp of the response" + }, + "success": { + "type": "boolean", + "description": "Indicates whether the request was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "table": { + "type": "object", + "properties": { + "total": { + "type": "number", + "format": "double", + "description": "Total savings amount" + }, + "percentage": { + "type": "number", + "format": "float", + "description": "Percentage savings" + }, + "trend": { + "type": "number", + "format": "float", + "description": "Trend in savings percentage", + "nullable": true + } + } + }, + "chart": { + "type": "array", + "items": { + "type": "object", + "properties": { + "date": { + "type": "string", + "format": "date-time", + "description": "Date of the savings data" + }, + "savings": { + "type": "number", + "format": "double", + "description": "Savings amount for the date" + } + } + } + } + } + } + } + } + }, + "SpendsDetailResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "format": "int64", + "description": "Timestamp of the response" + }, + "success": { + "type": "boolean", + "description": "Indicates whether the request was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "table": { + "type": "object", + "properties": { + "total_spend": { + "type": "number", + "format": "double", + "description": "Total savings amount" + }, + "service": { + "type": "string", + "description": "AWS Service name" + } + } + }, + "chart": { + "type": "array", + "items": { + "type": "object", + "properties": { + "date": { + "type": "string", + "format": "date-time", + "description": "Date of the spend data" + }, + "spend_amount": { + "type": "number", + "format": "double", + "description": "Spend amount for the date" + } + } + } + } + } + } + } + } + }, + "SavingsRateResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "properties": { + "effective_savings_rate": { + "type": "number", + "format": "double", + "description": "Effective savings rate percentage." + }, + "total_spend_percentage": { + "type": "number", + "format": "double", + "description": "Total spend percentage." + } + } + } + } + }, + "UtilizationOverviewResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "format": "int64", + "description": "Timestamp of the response" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "object", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "type": "object", + "properties": { + "overall_percentage": { + "type": "number", + "format": "float", + "description": "Overall utilization percentage" + }, + "overall_managed_percentage": { + "type": "number", + "format": "float", + "description": "Managed utilization percentage" + }, + "overall_unmanaged_percentage": { + "type": "number", + "format": "float", + "description": "Unmanaged utilization percentage" + }, + "reservations": { + "$ref": "#/components/schemas/ReservationsData" + }, + "savings_plans": { + "$ref": "#/components/schemas/SavingsPlansData" + } + } + } + } + }, + "ReservationsData": { + "type": "object", + "properties": { + "percentage": { + "type": "number", + "format": "float", + "description": "Reservation utilization percentage" + }, + "managed": { + "type": "object", + "properties": { + "utilization_percentage": { + "type": "number", + "format": "float", + "description": "Managed reservation utilization percentage" + } + } + }, + "unmanaged": { + "type": "object", + "properties": { + "utilization_percentage": { + "type": "number", + "format": "float", + "description": "Unmanaged reservation utilization percentage" + } + } + } + } + }, + "SavingsPlansData": { + "type": "object", + "properties": { + "percentage": { + "type": "number", + "format": "float", + "description": "Savings plans utilization percentage" + }, + "managed": { + "type": "object", + "properties": { + "utilization_percentage": { + "type": "number", + "format": "float", + "description": "Managed savings plans utilization percentage" + } + } + }, + "unmanaged": { + "type": "object", + "properties": { + "utilization_percentage": { + "type": "number", + "format": "float", + "description": "Unmanaged savings plans utilization percentage" + } + } + } + } + }, + "UtilizationOverviewRequestFilters": { + "type": "object", + "properties": { + "instance_families": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of instance families" + }, + "regions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regions to filter by" + }, + "cloud_account_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of cloud account IDs to filter by" + }, + "service": { + "type": "string", + "enum": [ + "Amazon Elastic Compute Cloud - Compute", + "Amazon Relational Database Service" + ] + } + } + }, + "ApprovalsOverviewRequestFilters": { + "type": "object", + "properties": { + "regions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regions to filter by" + }, + "cloud_account_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of cloud account IDs to filter by" + }, + "service": { + "type": "string", + "enum": [ + "Amazon Elastic Compute Cloud - Compute", + "Amazon Relational Database Service" + ] + } + } + }, + "SpendDetailed": { + "type": "object", + "properties": { + "value": { + "type": "number", + "format": "double", + "description": "Cost value" + }, + "percentage": { + "type": "number", + "format": "double", + "description": "Cost value as a percentage" + } + } + }, + "SpendBreakdownResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "properties": { + "total": { + "type": "number", + "format": "double", + "description": "Total spend value in dollars." + }, + "trend": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Trend in spend value compared to the previous period (in percentage)." + }, + "ondemand": { + "$ref": "#/components/schemas/SpendDetailed" + }, + "savings_plans": { + "$ref": "#/components/schemas/SpendDetailed" + }, + "reserved_instances": { + "$ref": "#/components/schemas/SpendDetailed" + }, + "unused_commitments": { + "$ref": "#/components/schemas/SpendDetailed" + } + } + } + } + }, + "SpendBreakdownFilter": { + "type": "object", + "properties": { + "regions": { + "type": "array", + "items": { + "type": "string" + } + }, + "instance_types": { + "type": "array", + "items": { + "type": "string" + } + }, + "cloud_account_ids": { + "type": "array", + "items": { + "type": "string" + } + }, + "service": { + "type": "string", + "enum": [ + "Amazon Elastic Compute Cloud - Compute", + "Amazon Relational Database Service" + ] + } + } + }, + "CoverageDetailed": { + "type": "object", + "properties": { + "value": { + "type": "number", + "format": "double", + "description": "Cost value" + }, + "percentage": { + "type": "number", + "format": "double", + "description": "Cost value as a percentage" + } + } + }, + "ComputeCoverageResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Specifies if the operation was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "properties": { + "total_spend": { + "type": "number", + "format": "double", + "description": "Total spend value in dollars" + }, + "total_coverage_percentage": { + "type": "number", + "format": "double", + "description": "Percentage of the total spend value in dollars" + }, + "average_coverage_percentage": { + "type": "number", + "format": "double", + "description": "Average Percentage of the total spend value in dollars" + }, + "ondemand": { + "$ref": "#/components/schemas/CoverageDetailed" + }, + "savings_plans": { + "$ref": "#/components/schemas/CoverageDetailed" + }, + "reserved_instances": { + "$ref": "#/components/schemas/CoverageDetailed" + } + } + } + } + }, + "CopmputeCoverageFilter": { + "type": "object", + "properties": { + "regions": { + "type": "array", + "items": { + "type": "string" + } + }, + "instance_types": { + "type": "array", + "items": { + "type": "string" + } + }, + "cloud_account_ids": { + "type": "array", + "items": { + "type": "string" + } + }, + "service": { + "type": "string", + "enum": [ + "Amazon Elastic Compute Cloud - Compute", + "Amazon Relational Database Service" + ] + } + } + }, + "ComputeCoveragesDetailResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "format": "int64", + "description": "Timestamp of the response" + }, + "success": { + "type": "boolean", + "description": "Indicates whether the request was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/ComputeCoveragesDetail" + } + } + } + }, + "ComputeCoveragesDetail": { + "type": "object", + "properties": { + "table": { + "$ref": "#/components/schemas/ComputeCoveragesDetailTable" + }, + "chart": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComputeCoverageChart" + } + } + } + }, + "ComputeCoveragesDetailTable": { + "type": "object", + "properties": { + "reservation_cost": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Total cost for reserved instances" + }, + "total_cost": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Total cost including all coverage types" + }, + "on_demand_cost": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Cost for on-demand instances" + }, + "total_hours": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Total hours of usage" + }, + "total_covered_hours": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Total hours covered by RI or SP" + }, + "on_demand_hours": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Hours billed at on-demand rates" + }, + "savings_plan_hours": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Hours covered by savings plans" + }, + "ri_coverage_hours": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Hours covered by reserved instances" + }, + "coverage": { + "type": "number", + "format": "float", + "nullable": true, + "description": "Coverage percentage" + }, + "region": { + "type": "string", + "nullable": true, + "description": "Region information when grouped by region" + }, + "machine_type": { + "type": "string", + "nullable": true, + "description": "Machine type information when grouped by machine type" + }, + "trend": { + "type": "number", + "format": "float", + "nullable": true, + "description": "Trend in coverage percentage compared to previous period" + }, + "spot_cost": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Cost for spot instances" + }, + "spot_hours": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Hours covered by spot instances" + } + } + }, + "ComputeCoverageChart": { + "type": "object", + "properties": { + "date": { + "type": "string", + "format": "date-time", + "description": "Date for the chart data point" + }, + "coverage_cost": { + "type": "number", + "format": "double", + "description": "Coverage cost for the date" + } + } + }, + "CommitmentUtilizationDetailResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "format": "int64", + "description": "Timestamp of the response" + }, + "success": { + "type": "boolean", + "description": "Indicates whether the request was successful" + }, + "errors": { + "type": "string", + "description": "Error message, if any" + }, + "response": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/CommitmentUtlizationsDetail" + }, + "description": "Response object containing savings plans and reserved instances utilization details" + } + } + }, + "CommitmentUtlizationsDetail": { + "type": "object", + "properties": { + "table": { + "$ref": "#/components/schemas/CommitmentUtilizationsDetailTable" + }, + "chart": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommitmentUtilizationChart" + } + } + } + }, + "CommitmentUtilizationsDetailTable": { + "type": "object", + "properties": { + "compute_spend": { + "type": "number", + "format": "double", + "description": "Total compute spend amount" + }, + "utilization": { + "type": "number", + "format": "double", + "description": "Utilization amount" + }, + "percentage": { + "type": "number", + "format": "double", + "description": "Utilization percentage" + }, + "trend": { + "type": "number", + "format": "double", + "nullable": true, + "description": "Trend in utilization percentage compared to previous period" + } + } + }, + "CommitmentUtilizationChart": { + "type": "object", + "properties": { + "date": { + "type": "string", + "format": "date-time", + "description": "Date for the utilization data point" + }, + "utilization_percentage": { + "type": "number", + "format": "double", + "description": "Utilization percentage for the date" + } + } + }, + "RIInventoryOverviewResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/RIInventoryOverview" + } + } + }, + "RIInventoryOverview": { + "type": "object", + "properties": { + "total": { + "$ref": "#/components/schemas/TotalCount" + }, + "distribution": { + "$ref": "#/components/schemas/RIDistribution" + }, + "status": { + "$ref": "#/components/schemas/StatusBreakdown" + }, + "actions": { + "$ref": "#/components/schemas/ActionsBreakdown" + } + } + }, + "TotalCount": { + "type": "object", + "properties": { + "purchased": { + "type": "integer", + "description": "Total number of purchased RIs" + }, + "managed": { + "type": "integer", + "description": "Total number of managed RIs" + } + } + }, + "RIDistribution": { + "type": "object", + "properties": { + "reserved": { + "$ref": "#/components/schemas/InstanceTypeDistribution" + }, + "managed": { + "$ref": "#/components/schemas/InstanceTypeDistribution" + } + } + }, + "InstanceTypeDistribution": { + "type": "object", + "properties": { + "standard": { + "$ref": "#/components/schemas/TypeCount" + }, + "convertible": { + "$ref": "#/components/schemas/TypeCount" + } + } + }, + "TypeCount": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "description": "Number of instances of this type" + }, + "percentage": { + "type": "number", + "format": "float", + "description": "Percentage of total instances" + } + } + }, + "StatusBreakdown": { + "type": "object", + "properties": { + "expired": { + "$ref": "#/components/schemas/StatusCount" + }, + "expiring_soon": { + "$ref": "#/components/schemas/StatusCount" + }, + "active": { + "$ref": "#/components/schemas/StatusCount" + } + } + }, + "ActionsBreakdown": { + "type": "object", + "properties": { + "pending_approval": { + "$ref": "#/components/schemas/StatusCount" + } + } + }, + "StatusCount": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "description": "Count of items in this status" + }, + "label": { + "type": "string", + "description": "Display label for the status" + } + } + }, + "InventoryRIAPIFilter": { + "type": "object", + "properties": { + "account_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of provider account IDs" + }, + "cloud_account_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of cloud account IDs" + }, + "instance_types": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of instance types" + }, + "instance_families": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of instance families" + }, + "platforms": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of platforms" + }, + "tenancy": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of tenancy options" + }, + "payment_options": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "No Upfront", + "Partial Upfront", + "All Upfront" + ] + }, + "description": "List of payment options" + }, + "terms": { + "type": "array", + "items": { + "type": "number", + "format": "float64" + }, + "description": "List of term lengths in years" + }, + "plan_types": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Standard", + "Convertible" + ] + }, + "description": "List of RI types" + }, + "status": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "active", + "expired", + "pending", + "retired" + ] + }, + "description": "List of statuses" + }, + "is_harness_managed": { + "type": "boolean", + "nullable": true, + "description": "Filter by Harness managed status" + }, + "service": { + "type": "string", + "description": "Service to filter by" + }, + "regions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regions" + } + } + }, + "InventorySPAPIFilter": { + "type": "object", + "properties": { + "account_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of provider account IDs" + }, + "cloud_account_ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of cloud account IDs" + }, + "instance_families": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of instance families" + }, + "payment_options": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "No Upfront", + "Partial Upfront", + "All Upfront" + ] + }, + "description": "List of payment options" + }, + "terms": { + "type": "array", + "items": { + "type": "number", + "format": "float64" + }, + "description": "List of term lengths in years" + }, + "plan_types": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "ComputeSavingsPlans", + "EC2InstanceSavingsPlans" + ] + }, + "description": "List of Savings Plan types" + }, + "status": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "active", + "expired", + "pending", + "retired" + ] + }, + "description": "List of statuses" + }, + "is_harness_managed": { + "type": "boolean", + "nullable": true, + "description": "Filter by Harness managed status" + }, + "service": { + "type": "string", + "description": "Service to filter by" + }, + "regions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of regions" + } + } + }, + "SPInventoryOverviewResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/SPInventoryOverview" + } + } + }, + "SPInventoryOverview": { + "type": "object", + "properties": { + "total": { + "$ref": "#/components/schemas/TotalCount" + }, + "distribution": { + "$ref": "#/components/schemas/SPDistribution" + }, + "status": { + "$ref": "#/components/schemas/StatusBreakdown" + }, + "actions": { + "$ref": "#/components/schemas/ActionsBreakdown" + } + } + }, + "SPDistribution": { + "type": "object", + "properties": { + "purchased": { + "$ref": "#/components/schemas/PlanTypeDistribution" + }, + "managed": { + "$ref": "#/components/schemas/PlanTypeDistribution" + } + } + }, + "PlanTypeDistribution": { + "type": "object", + "properties": { + "compute": { + "$ref": "#/components/schemas/TypeCount" + }, + "compute_savings_plans": { + "$ref": "#/components/schemas/TypeCount" + } + } + }, + "ListReservedInstancesRequest": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/PaginationInput" + }, + "filters": { + "$ref": "#/components/schemas/InventoryRIAPIFilter" + }, + "sort_by": { + "type": "string", + "description": "Field to sort results by" + }, + "sort_order": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "description": "Sort order direction" + } + } + }, + "ListReservedInstancesResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/ReservedInstancesData" + } + } + }, + "ReservedInstancesData": { + "type": "object", + "properties": { + "total": { + "type": "integer", + "format": "int64", + "description": "Total number of Reserved Instances" + }, + "pages": { + "type": "integer", + "format": "int64", + "description": "Total number of pages" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ReservedInstance" + } + }, + "pagination": { + "$ref": "#/components/schemas/PaginationInput" + } + } + }, + "ReservedInstance": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Reserved Instance" + }, + "type": { + "type": "string", + "description": "Type of Reserved Instance (e.g., Convertible)" + }, + "count": { + "type": "integer", + "description": "Number of instances in this reservation" + }, + "scope": { + "type": "string", + "description": "Scope of the reservation (e.g., Region)" + }, + "availability_zone": { + "type": "string", + "description": "Availability zone if applicable" + }, + "start_date": { + "type": "string", + "format": "date-time", + "description": "Start date of the reservation" + }, + "expires_on": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the reservation" + }, + "term": { + "type": "string", + "description": "Term length of the reservation" + }, + "avg_utilization": { + "type": "number", + "format": "float", + "description": "Average utilization percentage" + }, + "status": { + "type": "string", + "description": "Current status of the reservation" + }, + "is_harness_managed": { + "type": "boolean", + "description": "Indicates if the reservation is managed by Harness" + }, + "is_seed_ri": { + "type": "boolean", + "description": "Indicates if this is a seed reservation" + } + } + }, + "ListSavingsPlansRequest": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/PaginationInput" + }, + "filters": { + "$ref": "#/components/schemas/InventorySPAPIFilter" + }, + "sort_by": { + "type": "string", + "description": "Field to sort results by" + }, + "sort_order": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "description": "Sort order direction" + } + } + }, + "ListSavingsPlansResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/SavingsPlansDataResponse" + } + } + }, + "SavingsPlansDataResponse": { + "type": "object", + "properties": { + "total": { + "type": "integer", + "format": "int64", + "description": "Total number of Savings Plans" + }, + "pages": { + "type": "integer", + "format": "int64", + "description": "Total number of pages" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SavingsPlan" + } + }, + "pagination": { + "$ref": "#/components/schemas/PaginationInput" + } + } + }, + "SavingsPlan": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Savings Plan" + }, + "type": { + "type": "string", + "description": "Type of Savings Plan" + }, + "instance_family": { + "type": "string", + "description": "Instance family if applicable" + }, + "region": { + "type": "string", + "description": "Region for the Savings Plan" + }, + "commitment": { + "type": "number", + "format": "double", + "description": "Hourly commitment amount" + }, + "start_date": { + "type": "string", + "format": "date-time", + "description": "Start date of the Savings Plan" + }, + "expires_on": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the Savings Plan" + }, + "status": { + "type": "string", + "description": "Current status of the Savings Plan" + }, + "is_harness_managed": { + "type": "boolean", + "description": "Indicates if the Savings Plan is managed by Harness" + }, + "payment_option": { + "type": "string", + "description": "Payment option for the Savings Plan" + }, + "plan_type": { + "type": "string", + "description": "Type of the Savings Plan" + }, + "upfront_fee": { + "type": "number", + "format": "double", + "description": "Upfront fee amount if applicable" + } + } + }, + "ReservedInstanceDetailsResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/ReservedInstanceDetail" + } + } + }, + "ReservedInstanceDetail": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Reserved Instance" + }, + "instance_type": { + "type": "string", + "description": "Type of EC2 instance" + }, + "scope": { + "type": "string", + "description": "Scope of the reservation (e.g., region)" + }, + "instance_count": { + "type": "integer", + "description": "Number of instances in this reservation" + }, + "availability_zone": { + "type": "string", + "description": "Availability zone if applicable" + }, + "platform": { + "type": "string", + "description": "Operating system platform" + }, + "tenancy": { + "type": "string", + "description": "Instance tenancy (e.g., Shared, Dedicated)" + }, + "type": { + "type": "string", + "description": "Type of Reserved Instance (e.g., Convertible)" + }, + "utilization": { + "type": "number", + "format": "float", + "description": "Current utilization percentage" + }, + "status": { + "type": "string", + "description": "Current status of the reservation" + }, + "start_date": { + "type": "string", + "format": "date-time", + "description": "Start date of the reservation" + }, + "expiry_date": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the reservation" + }, + "purchase_term_years": { + "type": "string", + "description": "Term length of the reservation" + }, + "payment_option": { + "type": "string", + "description": "Payment option selected" + }, + "upfront_fee": { + "type": "number", + "format": "double", + "description": "Upfront payment amount" + }, + "usage_price": { + "type": "number", + "format": "double", + "description": "Usage price per hour" + }, + "hourly_cost": { + "type": "number", + "format": "double", + "description": "Total hourly cost" + }, + "purchase_date": { + "type": "string", + "format": "date-time", + "description": "Date when the reservation was purchased" + }, + "previously_was": { + "$ref": "#/components/schemas/PreviousStateInfo" + }, + "approval_info": { + "$ref": "#/components/schemas/ApprovalInfo" + }, + "is_harness_managed": { + "type": "boolean", + "description": "Indicates if the reservation is managed by Harness" + } + } + }, + "PreviousStateInfo": { + "type": "object", + "properties": { + "instance_type": { + "type": "string", + "description": "Previous instance type" + }, + "platform": { + "type": "string", + "description": "Previous platform" + }, + "tenancy": { + "type": "string", + "description": "Previous tenancy" + } + } + }, + "ApprovalInfo": { + "type": "object", + "properties": { + "approved_by": { + "type": "string", + "description": "User who approved the change" + }, + "approved_at": { + "type": "string", + "format": "date-time", + "description": "Timestamp of approval" + }, + "status": { + "type": "string", + "description": "Current approval status" + } + } + }, + "SavingsPlanDetailsResponse": { + "type": "object", + "properties": { + "ts": { + "type": "integer", + "description": "Response timestamp" + }, + "success": { + "type": "boolean", + "description": "Indicates if the request was successful" + }, + "errors": { + "type": "string", + "nullable": true, + "description": "Error details, if any" + }, + "response": { + "$ref": "#/components/schemas/SavingsPlanDetail" + } + } + }, + "SavingsPlanDetail": { + "type": "object", + "properties": { + "account_info": { + "$ref": "#/components/schemas/AccountInfo", + "description": "Associated account information" + }, + "instance_family": { + "type": "string", + "description": "Instance family if applicable" + }, + "region": { + "type": "string", + "description": "Region for the Savings Plan" + }, + "platform": { + "type": "string", + "description": "Operating system platform" + }, + "type": { + "type": "string", + "description": "Type of Savings Plan" + }, + "mtd_utilization": { + "type": "number", + "format": "double", + "description": "Month-to-date utilization percentage" + }, + "status": { + "type": "string", + "description": "Current status of the Savings Plan" + }, + "start_date": { + "type": "string", + "format": "date-time", + "description": "Start date of the Savings Plan" + }, + "end_date": { + "type": "string", + "format": "date-time", + "description": "End date of the Savings Plan" + }, + "term": { + "type": "string", + "description": "Term length of the Savings Plan" + }, + "payment_option": { + "type": "string", + "description": "Payment option selected" + }, + "commitment": { + "type": "number", + "format": "double", + "description": "Hourly commitment amount" + }, + "mtd_commitment": { + "type": "number", + "format": "double", + "description": "Month-to-date commitment amount" + }, + "upfront_fee": { + "type": "number", + "format": "double", + "description": "Upfront payment amount" + }, + "hourly_cost": { + "type": "number", + "format": "double", + "description": "Hourly cost amount" + }, + "mtd_net_savings": { + "type": "number", + "format": "double", + "description": "Month-to-date net savings amount" + }, + "approval_info": { + "$ref": "#/components/schemas/SPApprovalInfo", + "description": "Approval information if applicable" + }, + "is_harness_managed": { + "type": "boolean", + "description": "Indicates if the Savings Plan is managed by Harness" + } + } + }, + "AccountInfo": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Account identifier" + }, + "account_name": { + "type": "string", + "description": "Name of the account" + }, + "id": { + "type": "string", + "description": "Unique identifier (ARN) of the Savings Plan" + } + } + }, + "SPApprovalInfo": { + "type": "object", + "properties": { + "approved_by": { + "type": "string", + "description": "User who approved the Savings Plan" + }, + "approved_at": { + "type": "string", + "description": "Timestamp of approval" + }, + "status": { + "type": "string", + "description": "Current approval status" + } + } + }, + "AuditError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/AuditErrorMetadata" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "AuditErrorMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "AddCollaboratorAuditEventData": { + "required": [ + "source", + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "source": { + "$ref": "#/components/schemas/Source" + } + } + } + ] + }, + "AuditEvent": { + "required": [ + "action", + "authenticationInfo", + "insertId", + "module", + "resource", + "resourceScope", + "timestamp" + ], + "type": "object", + "properties": { + "auditId": { + "type": "string", + "description": "Identifier of the Audit." + }, + "insertId": { + "type": "string", + "description": "Insert Identifier of the Audit." + }, + "resourceScope": { + "$ref": "#/components/schemas/AuditResourceScope" + }, + "httpRequestInfo": { + "$ref": "#/components/schemas/AuditHttpRequestInfo" + }, + "requestMetadata": { + "$ref": "#/components/schemas/AuditRequestMetadata" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "authenticationInfo": { + "$ref": "#/components/schemas/AuthenticationInfo" + }, + "impersonatingAuthenticationInfo": { + "$ref": "#/components/schemas/AuthenticationInfo" + }, + "module": { + "type": "string", + "description": "Type of module associated with the Audit.", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO", + "CHAOS", + "AI_TEST_AUTOMATION", + "SRM", + "IACM", + "CET", + "IDP", + "CODE", + "SSCA", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "PLATFORM", + "SEI", + "HAR", + "DevopsEssentials", + "FME", + "DBOPS" + ] + }, + "environment": { + "$ref": "#/components/schemas/AuditEnvironment" + }, + "resource": { + "$ref": "#/components/schemas/AuditResource" + }, + "action": { + "type": "string", + "description": "Action type associated with the Audit.", + "enum": [ + "CREATE", + "UPDATE", + "RESTORE", + "DELETE", + "FORCE_DELETE", + "UPSERT", + "INVITE", + "RESEND_INVITE", + "REVOKE_INVITE", + "ADD_COLLABORATOR", + "REMOVE_COLLABORATOR", + "CREATE_TOKEN", + "REVOKE_TOKEN", + "LOGIN", + "LOGIN2FA", + "UNSUCCESSFUL_LOGIN", + "ADD_MEMBERSHIP", + "REMOVE_MEMBERSHIP", + "ERROR_BUDGET_RESET", + "START", + "END", + "STAGE_START", + "STAGE_END", + "PAUSE", + "RESUME", + "ABORT", + "TIMEOUT", + "SIGNED_EULA", + "ROLE_ASSIGNMENT_CREATED", + "ROLE_ASSIGNMENT_UPDATED", + "ROLE_ASSIGNMENT_DELETED", + "MOVE", + "ENABLED", + "DISABLED", + "DISMISS_ANOMALY", + "RERUN", + "BYPASS", + "STABLE_VERSION_CHANGED", + "SYNC_START", + "START_IMPERSONATION", + "END_IMPERSONATION", + "MOVE_TO_GIT", + "FREEZE_BYPASS", + "EXPIRED", + "FORCE_PUSH" + ] + }, + "auditEventData": { + "$ref": "#/components/schemas/AuditEventData" + }, + "internalInfo": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Internal information." + }, + "description": "Internal information." + } + }, + "description": "This has the AuditEvent details defined in Harness." + }, + "AuditEventData": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "AuthenticationInfo": { + "required": [ + "principal" + ], + "type": "object", + "properties": { + "principal": { + "$ref": "#/components/schemas/AuditPrincipal" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "labels" + }, + "description": "labels" + } + }, + "description": "This has the AuthenticationInfo details defined in Harness." + }, + "ChaosAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "eventModule": { + "type": "string" + } + } + } + ] + }, + "AuditEnvironment": { + "required": [ + "identifier", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "PreProduction", + "Production" + ] + }, + "identifier": { + "type": "string" + } + }, + "description": "List of Environments" + }, + "FeatureFlagAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "environment": { + "type": "string" + } + } + } + ] + }, + "GitopsAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "agentId": { + "type": "string" + } + } + } + ] + }, + "AuditHttpRequestInfo": { + "type": "object", + "properties": { + "requestMethod": { + "type": "string" + } + } + }, + "InvitationSource": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/Source" + } + ] + }, + "NodeExecutionEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "pipelineIdentifier": { + "type": "string" + }, + "stageIdentifier": { + "type": "string" + }, + "stageType": { + "type": "string" + }, + "planExecutionId": { + "type": "string" + }, + "runSequence": { + "type": "integer", + "format": "int32" + }, + "nodeExecutionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "triggeredBy": { + "$ref": "#/components/schemas/TriggeredByInfoAuditDetails" + }, + "startTs": { + "type": "integer", + "format": "int64" + }, + "endTs": { + "type": "integer", + "format": "int64" + } + } + } + ] + }, + "OpaAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "eventModule": { + "type": "string" + } + } + } + ] + }, + "PageResponseAuditEvent": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuditEvent" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "AuditPrincipal": { + "required": [ + "identifier", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "USER", + "SYSTEM", + "API_KEY", + "SERVICE_ACCOUNT" + ] + }, + "identifier": { + "type": "string" + } + }, + "description": "List of Principals" + }, + "AuditRequestMetadata": { + "type": "object", + "properties": { + "clientIP": { + "type": "string" + } + } + }, + "AuditResource": { + "required": [ + "identifier", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Resource Type" + }, + "identifier": { + "type": "string", + "description": "Resource Identifier" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Map of additional information about the Resource." + }, + "description": "Map of additional information about the Resource." + } + }, + "description": "This contains info about Resource saved as a part of Audit Event" + }, + "AuditResourceScope": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Identifier of Account" + }, + "orgIdentifier": { + "type": "string", + "description": "Identifier of Organization" + }, + "projectIdentifier": { + "type": "string", + "description": "Identifier of Project" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Additional information about the Resource Scope" + }, + "description": "Additional information about the Resource Scope" + } + }, + "description": "This has scope details for the resource defined in Harness." + }, + "ResponseDTOPageResponseAuditEvent": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseAuditEvent" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AuditRoleBinding": { + "type": "object", + "properties": { + "roleIdentifier": { + "type": "string" + }, + "resourceGroupIdentifier": { + "type": "string" + } + } + }, + "ServiceDiscoveryAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "eventModule": { + "type": "string" + } + } + } + ] + }, + "Source": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "TemplateEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "comments": { + "type": "string" + }, + "templateUpdateEventType": { + "type": "string" + }, + "newStableVersion": { + "type": "string" + }, + "oldStableVersion": { + "type": "string" + } + } + } + ] + }, + "TriggeredByInfoAuditDetails": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "extraInfo": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "UserInvitationAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "roleBindings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuditRoleBinding" + } + } + } + } + ] + }, + "UserInviteAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "roleBindings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuditRoleBinding" + } + } + } + } + ] + }, + "UserMembershipAuditEventData": { + "required": [ + "type" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/AuditEventData" + }, + { + "type": "object", + "properties": { + "mechanism": { + "type": "string" + } + } + } + ] + }, + "AuditFilterProperties": { + "type": "object", + "properties": { + "scopes": { + "type": "array", + "description": "List of Resource Scopes", + "items": { + "$ref": "#/components/schemas/AuditResourceScope" + } + }, + "resources": { + "type": "array", + "description": "List of Resources", + "items": { + "$ref": "#/components/schemas/AuditResource" + } + }, + "includeChildScopes": { + "type": "boolean", + "description": "Include audits from child scopes", + "default": true + }, + "modules": { + "type": "array", + "description": "List of Module Types", + "items": { + "type": "string", + "description": "List of Module Types", + "enum": [ + "CD", + "CI", + "CV", + "CF", + "CE", + "STO", + "CHAOS", + "AI_TEST_AUTOMATION", + "SRM", + "IACM", + "CET", + "IDP", + "CODE", + "SSCA", + "CORE", + "PMS", + "TEMPLATESERVICE", + "GOVERNANCE", + "PLATFORM", + "SEI", + "HAR", + "DevopsEssentials", + "FME", + "DBOPS" + ] + } + }, + "actions": { + "type": "array", + "description": "List of Actions", + "items": { + "type": "string", + "description": "List of Actions", + "enum": [ + "CREATE", + "UPDATE", + "RESTORE", + "DELETE", + "FORCE_DELETE", + "UPSERT", + "INVITE", + "RESEND_INVITE", + "REVOKE_INVITE", + "ADD_COLLABORATOR", + "REMOVE_COLLABORATOR", + "CREATE_TOKEN", + "REVOKE_TOKEN", + "LOGIN", + "LOGIN2FA", + "UNSUCCESSFUL_LOGIN", + "ADD_MEMBERSHIP", + "REMOVE_MEMBERSHIP", + "ERROR_BUDGET_RESET", + "START", + "END", + "STAGE_START", + "STAGE_END", + "PAUSE", + "RESUME", + "ABORT", + "TIMEOUT", + "SIGNED_EULA", + "ROLE_ASSIGNMENT_CREATED", + "ROLE_ASSIGNMENT_UPDATED", + "ROLE_ASSIGNMENT_DELETED", + "MOVE", + "ENABLED", + "DISABLED", + "DISMISS_ANOMALY", + "RERUN", + "BYPASS", + "STABLE_VERSION_CHANGED", + "SYNC_START", + "START_IMPERSONATION", + "END_IMPERSONATION", + "MOVE_TO_GIT", + "FREEZE_BYPASS", + "EXPIRED", + "FORCE_PUSH" + ] + } + }, + "environments": { + "type": "array", + "description": "List of Environments", + "items": { + "$ref": "#/components/schemas/AuditEnvironment" + } + }, + "principals": { + "type": "array", + "description": "List of Principals", + "items": { + "$ref": "#/components/schemas/AuditPrincipal" + } + }, + "staticFilter": { + "type": "string", + "description": "Pre-defined Filter", + "enum": [ + "EXCLUDE_LOGIN_EVENTS", + "EXCLUDE_SYSTEM_EVENTS" + ] + }, + "startTime": { + "type": "integer", + "description": "Used to specify a start time for retrieving Audit events that occurred at or after the time indicated.", + "format": "int64" + }, + "endTime": { + "type": "integer", + "description": "Used to specify the end time for retrieving Audit events that occurred at or before the time indicated.", + "format": "int64" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "description": "This specifies the corresponding Entity of the filter.", + "enum": [ + "Audit" + ] + } + }, + "description": "This contains the Audit Event filter information. This is used to filter Audit Events depending on the information provided." + }, + "ResponseDTOSliceResponseAuditEvent": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SliceResponseAuditEvent" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SliceResponseAuditEvent": { + "type": "object", + "properties": { + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuditEvent" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "hasNext": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOYamlDiffRecord": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/YamlDiffRecord" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "YamlDiffRecord": { + "type": "object", + "properties": { + "oldYaml": { + "type": "string", + "description": "Previous YAML version" + }, + "newYaml": { + "type": "string", + "description": "Current YAML version" + } + }, + "description": "This has the YAML Difference of the record." + }, + "TemplateError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/TemplateErrorMetadata" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "TemplateErrorMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "RefreshResponse": { + "type": "object", + "properties": { + "refreshedYaml": { + "type": "string" + } + }, + "description": "This is the view of the RefreshResponse entity defined in Harness" + }, + "ResponseDTORefreshResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/RefreshResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RefreshRequestDTO": { + "required": [ + "yaml" + ], + "type": "object", + "properties": { + "yaml": { + "type": "string" + } + } + }, + "TemplateEntityGitDetails": { + "type": "object", + "properties": { + "valid": { + "type": "boolean", + "description": "Indicates if the Entity is valid" + }, + "invalidYaml": { + "type": "string", + "description": "This has the Git File content if the entity is invalid" + } + }, + "description": "This contains Validity Details of the Entity" + }, + "TemplateErrorNodeSummary": { + "type": "object", + "properties": { + "nodeInfo": { + "$ref": "#/components/schemas/TemplateNodeInfo" + }, + "templateInfo": { + "$ref": "#/components/schemas/TemplateInfo" + }, + "templateResponse": { + "$ref": "#/components/schemas/TemplateTemplateResponse" + }, + "childrenErrorNodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplateErrorNodeSummary" + } + } + } + }, + "TemplateNodeInfo": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "localFqn": { + "type": "string" + } + } + }, + "TemplateResponseDTOValidateTemplateInputsResponseDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/ValidateTemplateInputsResponseDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TemplateTemplateResponse": { + "required": [ + "accountId", + "identifier", + "name", + "yaml" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "yaml": { + "type": "string" + }, + "mergedYaml": { + "type": "string" + }, + "versionLabel": { + "type": "string" + }, + "isStableTemplate": { + "type": "boolean", + "writeOnly": true + }, + "templateEntityType": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager", + "ArtifactSource", + "StepGroup", + "Workspace", + "Notification" + ] + }, + "childType": { + "type": "string" + }, + "templateScope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + }, + "version": { + "type": "integer", + "format": "int64" + }, + "gitDetails": { + "$ref": "#/components/schemas/TemplateEntityGitDetails" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/TemplateEntityGitDetails" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "storeType": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + }, + "connectorRef": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "cacheResponseMetadata": { + "$ref": "#/components/schemas/CacheResponseMetadata" + }, + "yamlVersion": { + "type": "string" + }, + "bulkReconcileUUID": { + "type": "string" + }, + "hasInsert": { + "type": "boolean" + }, + "isInlineHCEntity": { + "type": "boolean" + }, + "stableTemplate": { + "type": "boolean" + } + }, + "description": "This contains details of the Template Response" + }, + "ResponseDTOTemplateMergeResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TemplateMergeResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TemplateMergeResponse": { + "type": "object", + "properties": { + "mergedPipelineYaml": { + "type": "string" + }, + "templateReferenceSummaries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplateReferenceSummary" + } + }, + "mergedPipelineYamlWithTemplateRef": { + "type": "string" + }, + "cacheResponseMetadata": { + "$ref": "#/components/schemas/CacheResponseMetadata" + }, + "processedYamlVersion": { + "type": "string" + }, + "templateMetadata": { + "$ref": "#/components/schemas/TemplateMetadata" + } + }, + "description": "This is the view of the TemplateMergeResponse entity defined in Harness" + }, + "TemplateMetadata": { + "type": "object", + "properties": { + "hasInsert": { + "type": "boolean" + } + }, + "description": "This is the view of the TemplateMetadata entity defined in Harness" + }, + "TemplateReferenceSummary": { + "type": "object", + "properties": { + "fqn": { + "type": "string" + }, + "templateIdentifier": { + "type": "string" + }, + "versionLabel": { + "type": "string" + }, + "scope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + }, + "stableTemplate": { + "type": "boolean" + }, + "moduleInfo": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "TemplateApplyRequestDTO": { + "required": [ + "originalEntityYaml" + ], + "type": "object", + "properties": { + "originalEntityYaml": { + "type": "string" + }, + "checkForAccess": { + "type": "boolean" + }, + "getMergedYamlWithTemplateField": { + "type": "boolean" + }, + "getOnlyFileContent": { + "type": "boolean" + }, + "yamlVersion": { + "type": "string" + } + } + }, + "TemplateGovernanceMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "message": { + "type": "string" + }, + "id": { + "type": "string" + }, + "type": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "status": { + "type": "string" + }, + "action": { + "type": "string" + }, + "entity": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TemplateGovernanceMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserGovernanceMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "deny": { + "type": "boolean" + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "detailsCount": { + "type": "integer", + "format": "int32" + }, + "detailsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplatePolicySetMetadataOrBuilder" + } + }, + "entityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "actionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "detailsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplatePolicySetMetadata" + } + }, + "initialized": { + "type": "boolean" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TemplatePolicyMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "severity": { + "type": "string" + }, + "status": { + "type": "string" + }, + "error": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TemplatePolicyMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicyMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyId": { + "type": "string" + }, + "policyName": { + "type": "string" + }, + "policyNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "denyMessagesList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "denyMessagesCount": { + "type": "integer", + "format": "int32" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "updated": { + "type": "integer", + "format": "int64" + }, + "errorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TemplatePolicySetMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/TemplatePolicySetMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicySetMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "deny": { + "type": "boolean" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplatePolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "TemplatePolicySetMetadataOrBuilder": { + "type": "object", + "properties": { + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountId": { + "type": "string" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgId": { + "type": "string" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "deny": { + "type": "boolean" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplatePolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifier": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "initializationErrorString": { + "type": "string" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "ResponseDTOTemplateWrapperResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TemplateWrapperResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TemplateWrapperResponse": { + "type": "object", + "properties": { + "isValid": { + "type": "boolean", + "writeOnly": true + }, + "templateResponseDTO": { + "$ref": "#/components/schemas/TemplateTemplateResponse" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/TemplateGovernanceMetadata" + }, + "valid": { + "type": "boolean" + } + }, + "description": "This contains details of the Template Wrapper Response" + }, + "ResponseDTOTemplateResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TemplateTemplateResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "PageTemplateMetadataSummaryResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalElements": { + "type": "integer", + "format": "int64" + }, + "last": { + "type": "boolean" + }, + "first": { + "type": "boolean" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplateTemplateMetadataSummaryResponse" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPageTemplateMetadataSummaryResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageTemplateMetadataSummaryResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TemplateTemplateMetadataSummaryResponse": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "maxLength": 1024, + "minLength": 0, + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "versionLabel": { + "type": "string" + }, + "stableTemplate": { + "type": "boolean" + }, + "templateEntityType": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager", + "ArtifactSource", + "StepGroup", + "Workspace", + "Notification" + ] + }, + "childType": { + "type": "string" + }, + "templateScope": { + "type": "string", + "enum": [ + "account", + "org", + "project", + "unknown" + ] + }, + "version": { + "type": "integer", + "format": "int64" + }, + "gitDetails": { + "$ref": "#/components/schemas/TemplateEntityGitDetails" + }, + "lastUpdatedAt": { + "type": "integer", + "format": "int64" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "storeType": { + "type": "string", + "enum": [ + "INLINE", + "REMOTE", + "INLINE_HC" + ] + }, + "connectorRef": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "yamlVersion": { + "type": "string" + }, + "isInlineHCEntity": { + "type": "boolean" + } + }, + "description": "This contains details of the Template Metadata Summary Response" + }, + "TemplateFilterProperties": { + "required": [ + "filterType" + ], + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "Filter tags as a key-value pair." + }, + "description": "Filter tags as a key-value pair." + }, + "filterType": { + "type": "string", + "description": "This specifies the corresponding Entity of the filter.", + "enum": [ + "Connector", + "Secret", + "DelegateProfile", + "Delegate", + "PipelineSetup", + "PipelineExecution", + "Deployment", + "Audit", + "Template", + "Trigger", + "EnvironmentGroup", + "FileStore", + "CCMRecommendation", + "Anomaly", + "RIInventory", + "SPInventory", + "Autocud", + "Environment", + "RuleExecution", + "Override", + "InputSet", + "Webhook" + ] + }, + "templateNames": { + "type": "array", + "items": { + "type": "string" + } + }, + "templateIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "type": "string" + }, + "templateEntityTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager", + "ArtifactSource", + "StepGroup", + "Workspace", + "Notification" + ] + } + }, + "childTypes": { + "type": "array", + "items": { + "type": "string" + } + }, + "listingScope": { + "$ref": "#/components/schemas/TemplateScope" + }, + "repoName": { + "type": "string" + } + }, + "description": "This contains details of the Template Filter" + }, + "TemplateScope": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + } + }, + "description": "This contains scope of template being created" + }, + "ResponseDTOTemplateMoveConfigResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TemplateMoveConfigResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TemplateMoveConfigResponse": { + "type": "object", + "properties": { + "templateIdentifier": { + "type": "string", + "description": "Contains the templateIdentifier of the successfully moved config." + }, + "versionLabel": { + "type": "string", + "description": "Contains the versionLabel of the successfully moved config." + } + }, + "description": "Tells us if the template move config operation was successful or not" + }, + "ResponseDTOTemplateUpdateGitDetailsResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/TemplateUpdateGitDetailsResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "TemplateUpdateGitDetailsResponse": { + "type": "object", + "properties": { + "status": { + "type": "boolean", + "description": "status whether update was successful or not" + } + }, + "description": "Tells status of update git details request for given template" + }, + "TemplateUpdateGitDetailsRequest": { + "type": "object", + "properties": { + "filePath": { + "type": "string", + "description": "filepath to be updated" + }, + "repoName": { + "type": "string", + "description": "repo name to be updated" + }, + "connectorRef": { + "type": "string", + "description": "connector ref to be updated" + } + }, + "description": "Lists down request params for template update git details request" + }, + "CvError": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "code": { + "type": "string", + "enum": [ + "DEFAULT_ERROR_CODE", + "INVALID_ARGUMENT", + "INVALID_EMAIL", + "DOMAIN_NOT_ALLOWED_TO_REGISTER", + "COMMNITY_EDITION_NOT_FOUND", + "DEPLOY_MODE_IS_NOT_ON_PREM", + "USER_ALREADY_REGISTERED", + "USER_INVITATION_DOES_NOT_EXIST", + "USER_DOES_NOT_EXIST", + "USER_INVITE_OPERATION_FAILED", + "USER_DISABLED", + "ACCOUNT_DOES_NOT_EXIST", + "INACTIVE_ACCOUNT", + "ACCOUNT_MIGRATED", + "ACCOUNT_MIGRATED_TO_NEXT_GEN", + "USER_DOMAIN_NOT_ALLOWED", + "MAX_FAILED_ATTEMPT_COUNT_EXCEEDED", + "RESOURCE_NOT_FOUND", + "INVALID_FORMAT", + "ROLE_DOES_NOT_EXIST", + "EMAIL_NOT_VERIFIED", + "EMAIL_VERIFICATION_TOKEN_NOT_FOUND", + "INVALID_TOKEN", + "REVOKED_TOKEN", + "INVALID_CAPTCHA_TOKEN", + "NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS", + "EXPIRED_TOKEN", + "INVALID_AGENT_MTLS_AUTHORITY", + "TOKEN_ALREADY_REFRESHED_ONCE", + "ACCESS_DENIED", + "NG_ACCESS_DENIED", + "INVALID_CREDENTIAL", + "INVALID_CREDENTIALS_THIRD_PARTY", + "INVALID_KEY", + "INVALID_CONNECTOR_TYPE", + "INVALID_KEYPATH", + "INVALID_VARIABLE", + "UNKNOWN_HOST", + "UNREACHABLE_HOST", + "INVALID_PORT", + "SSH_SESSION_TIMEOUT", + "ALGORITHM_NEGOTIATION_ERROR", + "SOCKET_CONNECTION_ERROR", + "CONNECTION_ERROR", + "SOCKET_CONNECTION_TIMEOUT", + "WINRM_COMMAND_EXECUTION_TIMEOUT", + "CONNECTION_TIMEOUT", + "SSH_CONNECTION_ERROR", + "USER_GROUP_ERROR", + "INVALID_EXECUTION_ID", + "ERROR_IN_GETTING_CHANNEL_STREAMS", + "UNEXPECTED", + "UNKNOWN_ERROR", + "UNKNOWN_EXECUTOR_TYPE_ERROR", + "DUPLICATE_STATE_NAMES", + "TRANSITION_NOT_LINKED", + "TRANSITION_TO_INCORRECT_STATE", + "TRANSITION_TYPE_NULL", + "STATES_WITH_DUP_TRANSITIONS", + "BARRIERS_NOT_RUNNING_CONCURRENTLY", + "NON_FORK_STATES", + "NON_REPEAT_STATES", + "INITIAL_STATE_NOT_DEFINED", + "FILE_INTEGRITY_CHECK_FAILED", + "INVALID_URL", + "FILE_DOWNLOAD_FAILED", + "PLATFORM_SOFTWARE_DELETE_ERROR", + "INVALID_CSV_FILE", + "INVALID_REQUEST", + "SCHEMA_VALIDATION_FAILED", + "FILTER_CREATION_ERROR", + "INVALID_YAML_ERROR", + "PLAN_CREATION_ERROR", + "INVALID_INFRA_STATE", + "PIPELINE_ALREADY_TRIGGERED", + "NON_EXISTING_PIPELINE", + "DUPLICATE_COMMAND_NAMES", + "INVALID_PIPELINE", + "COMMAND_DOES_NOT_EXIST", + "DUPLICATE_ARTIFACTSTREAM_NAMES", + "DUPLICATE_HOST_NAMES", + "STATE_NOT_FOR_TYPE", + "STATE_MACHINE_ISSUE", + "STATE_DISCONTINUE_FAILED", + "STATE_PAUSE_FAILED", + "PAUSE_ALL_ALREADY", + "RESUME_ALL_ALREADY", + "ROLLBACK_ALREADY", + "ABORT_ALL_ALREADY", + "EXPIRE_ALL_ALREADY", + "RETRY_FAILED", + "UNKNOWN_ARTIFACT_TYPE", + "UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE", + "INIT_TIMEOUT", + "LICENSE_EXPIRED", + "NOT_LICENSED", + "REQUEST_TIMEOUT", + "SCM_REQUEST_TIMEOUT", + "WORKFLOW_ALREADY_TRIGGERED", + "JENKINS_ERROR", + "INVALID_ARTIFACT_SOURCE", + "INVALID_ARTIFACT_SERVER", + "INVALID_CLOUD_PROVIDER", + "UPDATE_NOT_ALLOWED", + "DELETE_NOT_ALLOWED", + "APPDYNAMICS_CONFIGURATION_ERROR", + "APM_CONFIGURATION_ERROR", + "SPLUNK_CONFIGURATION_ERROR", + "ELK_CONFIGURATION_ERROR", + "LOGZ_CONFIGURATION_ERROR", + "SUMO_CONFIGURATION_ERROR", + "INSTANA_CONFIGURATION_ERROR", + "APPDYNAMICS_ERROR", + "STACKDRIVER_ERROR", + "STACKDRIVER_CONFIGURATION_ERROR", + "NEWRELIC_CONFIGURATION_ERROR", + "NEWRELIC_ERROR", + "DYNA_TRACE_CONFIGURATION_ERROR", + "DYNA_TRACE_ERROR", + "CLOUDWATCH_ERROR", + "CLOUDWATCH_CONFIGURATION_ERROR", + "PROMETHEUS_CONFIGURATION_ERROR", + "DATA_DOG_CONFIGURATION_ERROR", + "SERVICE_GUARD_CONFIGURATION_ERROR", + "ENCRYPTION_NOT_CONFIGURED", + "UNAVAILABLE_DELEGATES", + "WORKFLOW_EXECUTION_IN_PROGRESS", + "PIPELINE_EXECUTION_IN_PROGRESS", + "AWS_ACCESS_DENIED", + "AWS_CLUSTER_NOT_FOUND", + "AWS_SERVICE_NOT_FOUND", + "IMAGE_NOT_FOUND", + "ILLEGAL_ARGUMENT", + "IMAGE_TAG_NOT_FOUND", + "DELEGATE_NOT_AVAILABLE", + "INVALID_YAML_PAYLOAD", + "AUTHENTICATION_ERROR", + "AUTHORIZATION_ERROR", + "UNRECOGNIZED_YAML_FIELDS", + "COULD_NOT_MAP_BEFORE_YAML", + "MISSING_BEFORE_YAML", + "MISSING_YAML", + "NON_EMPTY_DELETIONS", + "GENERAL_YAML_ERROR", + "GENERAL_YAML_INFO", + "YAML_GIT_SYNC_ERROR", + "GIT_CONNECTION_ERROR", + "GIT_ERROR", + "ARTIFACT_SERVER_ERROR", + "ENCRYPT_DECRYPT_ERROR", + "SECRET_MANAGEMENT_ERROR", + "SECRET_NOT_FOUND", + "KMS_OPERATION_ERROR", + "GCP_KMS_OPERATION_ERROR", + "VAULT_OPERATION_ERROR", + "AWS_SECRETS_MANAGER_OPERATION_ERROR", + "AZURE_KEY_VAULT_OPERATION_ERROR", + "AZURE_KEY_VAULT_INTERRUPT_ERROR", + "UNSUPPORTED_OPERATION_EXCEPTION", + "FEATURE_UNAVAILABLE", + "GENERAL_ERROR", + "BASELINE_CONFIGURATION_ERROR", + "SAML_IDP_CONFIGURATION_NOT_AVAILABLE", + "INVALID_AUTHENTICATION_MECHANISM", + "INVALID_SAML_CONFIGURATION", + "INVALID_OAUTH_CONFIGURATION", + "INVALID_LDAP_CONFIGURATION", + "USER_GROUP_SYNC_FAILURE", + "USER_GROUP_ALREADY_EXIST", + "INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION", + "EXPLANATION", + "HINT", + "NOT_WHITELISTED_IP", + "INVALID_TOTP_TOKEN", + "EMAIL_FAILED", + "SSL_HANDSHAKE_FAILED", + "NO_APPS_ASSIGNED", + "INVALID_INFRA_CONFIGURATION", + "TEMPLATES_LINKED", + "USER_HAS_NO_PERMISSIONS", + "USER_NOT_AUTHORIZED", + "USER_ALREADY_PRESENT", + "EMAIL_ERROR", + "INVALID_USAGE_RESTRICTION", + "USAGE_RESTRICTION_ERROR", + "STATE_EXECUTION_INSTANCE_NOT_FOUND", + "DELEGATE_TASK_RETRY", + "KUBERNETES_API_TASK_EXCEPTION", + "KUBERNETES_TASK_EXCEPTION", + "KUBERNETES_YAML_ERROR", + "SAVE_FILE_INTO_GCP_STORAGE_FAILED", + "READ_FILE_FROM_GCP_STORAGE_FAILED", + "FILE_NOT_FOUND_ERROR", + "USAGE_LIMITS_EXCEEDED", + "EVENT_PUBLISH_FAILED", + "CUSTOM_APPROVAL_ERROR", + "JIRA_ERROR", + "EXPRESSION_EVALUATION_FAILED", + "KUBERNETES_VALUES_ERROR", + "KUBERNETES_CLUSTER_ERROR", + "INCORRECT_SIGN_IN_MECHANISM", + "OAUTH_LOGIN_FAILED", + "INVALID_TERRAFORM_TARGETS_REQUEST", + "TERRAFORM_EXECUTION_ERROR", + "FILE_READ_FAILED", + "FILE_SIZE_EXCEEDS_LIMIT", + "CLUSTER_NOT_FOUND", + "MARKETPLACE_TOKEN_NOT_FOUND", + "INVALID_MARKETPLACE_TOKEN", + "INVALID_TICKETING_SERVER", + "SERVICENOW_ERROR", + "PASSWORD_EXPIRED", + "USER_LOCKED", + "PASSWORD_STRENGTH_CHECK_FAILED", + "ACCOUNT_DISABLED", + "INVALID_ACCOUNT_PERMISSION", + "PAGERDUTY_ERROR", + "HEALTH_ERROR", + "SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED", + "DOMAIN_WHITELIST_FILTER_CHECK_FAILED", + "INVALID_DASHBOARD_UPDATE_REQUEST", + "DUPLICATE_FIELD", + "INVALID_AZURE_VAULT_CONFIGURATION", + "USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS", + "INVALID_ROLLBACK", + "DATA_COLLECTION_ERROR", + "SUMO_DATA_COLLECTION_ERROR", + "DEPLOYMENT_GOVERNANCE_ERROR", + "BATCH_PROCESSING_ERROR", + "GRAPHQL_ERROR", + "FILE_CREATE_ERROR", + "ILLEGAL_STATE", + "GIT_DIFF_COMMIT_NOT_IN_ORDER", + "FAILED_TO_ACQUIRE_PERSISTENT_LOCK", + "FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK", + "POD_NOT_FOUND_ERROR", + "COMMAND_EXECUTION_ERROR", + "REGISTRY_EXCEPTION", + "ENGINE_INTERRUPT_PROCESSING_EXCEPTION", + "ENGINE_IO_EXCEPTION", + "ENGINE_OUTCOME_EXCEPTION", + "ENGINE_SWEEPING_OUTPUT_EXCEPTION", + "CACHE_NOT_FOUND_EXCEPTION", + "ENGINE_ENTITY_UPDATE_EXCEPTION", + "SHELL_EXECUTION_EXCEPTION", + "TEMPLATE_NOT_FOUND", + "AZURE_SERVICE_EXCEPTION", + "AZURE_CLIENT_EXCEPTION", + "GIT_UNSEEN_REMOTE_HEAD_COMMIT", + "TIMEOUT_ENGINE_EXCEPTION", + "NO_AVAILABLE_DELEGATES", + "NO_GLOBAL_DELEGATE_ACCOUNT", + "NO_INSTALLED_DELEGATES", + "DUPLICATE_DELEGATE_EXCEPTION", + "GCP_MARKETPLACE_EXCEPTION", + "MISSING_DEFAULT_GOOGLE_CREDENTIALS", + "INCORRECT_DEFAULT_GOOGLE_CREDENTIALS", + "OPTIMISTIC_LOCKING_EXCEPTION", + "NG_PIPELINE_EXECUTION_EXCEPTION", + "NG_PIPELINE_CREATE_EXCEPTION", + "RESOURCE_NOT_FOUND_EXCEPTION", + "PMS_INITIALIZE_SDK_EXCEPTION", + "UNEXPECTED_SNIPPET_EXCEPTION", + "UNEXPECTED_SCHEMA_EXCEPTION", + "CONNECTOR_VALIDATION_EXCEPTION", + "TIMESCALE_NOT_AVAILABLE", + "MIGRATION_EXCEPTION", + "REQUEST_PROCESSING_INTERRUPTED", + "SECRET_MANAGER_ID_NOT_FOUND", + "GCP_SECRET_MANAGER_OPERATION_ERROR", + "GCP_SECRET_OPERATION_ERROR", + "GIT_OPERATION_ERROR", + "TASK_FAILURE_ERROR", + "INSTANCE_STATS_PROCESS_ERROR", + "INSTANCE_STATS_MIGRATION_ERROR", + "DEPLOYMENT_MIGRATION_ERROR", + "CG_LICENSE_USAGE_ERROR", + "INSTANCE_STATS_AGGREGATION_ERROR", + "UNRESOLVED_EXPRESSIONS_ERROR", + "KRYO_HANDLER_NOT_FOUND_ERROR", + "DELEGATE_ERROR_HANDLER_EXCEPTION", + "DELEGATE_SERVICE_DRIVER_EXCEPTION", + "DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION", + "UNEXPECTED_TYPE_ERROR", + "EXCEPTION_HANDLER_NOT_FOUND", + "CONNECTOR_NOT_FOUND_EXCEPTION", + "GCP_SERVER_ERROR", + "HTTP_RESPONSE_EXCEPTION", + "SCM_NOT_FOUND_ERROR", + "SCM_CONFLICT_ERROR", + "SCM_CONFLICT_ERROR_V2", + "SCM_UNPROCESSABLE_ENTITY", + "PROCESS_EXECUTION_EXCEPTION", + "SCM_UNAUTHORIZED", + "SCM_BAD_REQUEST", + "SCM_INTERNAL_SERVER_ERROR", + "DATA", + "CONTEXT", + "PR_CREATION_ERROR", + "URL_NOT_REACHABLE", + "URL_NOT_PROVIDED", + "ENGINE_EXPRESSION_EVALUATION_ERROR", + "ENGINE_FUNCTOR_ERROR", + "JIRA_CLIENT_ERROR", + "SCM_NOT_MODIFIED", + "APPROVAL_STEP_NG_ERROR", + "BUCKET_SERVER_ERROR", + "GIT_SYNC_ERROR", + "TEMPLATE_EXCEPTION", + "TEMPLATE_ALREADY_EXISTS_EXCEPTION", + "ENTITY_REFERENCE_EXCEPTION", + "ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION", + "INVALID_INPUT_SET", + "INVALID_OVERLAY_INPUT_SET", + "RESOURCE_ALREADY_EXISTS", + "INVALID_JSON_PAYLOAD", + "POLICY_EVALUATION_FAILURE", + "POLICY_SET_ERROR", + "INVALID_ARTIFACTORY_REGISTRY_REQUEST", + "INVALID_NEXUS_REGISTRY_REQUEST", + "ENTITY_NOT_FOUND", + "GITX_OAUTH_NOT_SET", + "INVALID_AZURE_CONTAINER_REGISTRY_REQUEST", + "AZURE_AUTHENTICATION_ERROR", + "AZURE_CONFIG_ERROR", + "DATA_PROCESSING_ERROR", + "INVALID_AZURE_AKS_REQUEST", + "AWS_IAM_ERROR", + "AWS_CF_ERROR", + "AWS_INSTANCE_ERROR", + "AWS_VPC_ERROR", + "AWS_TAG_ERROR", + "AWS_ASG_ERROR", + "AWS_LOAD_BALANCER_ERROR", + "SCM_INTERNAL_SERVER_ERROR_V2", + "SCM_FAILED_DEPENDENCY_ERROR", + "SCM_UNAUTHORIZED_ERROR_V2", + "TOO_MANY_REQUESTS", + "INVALID_IDENTIFIER_REF", + "SPOTINST_NULL_ERROR", + "SPOTNIST_REST_EXCEPTION", + "SCM_UNEXPECTED_ERROR", + "DUPLICATE_FILE_IMPORT", + "AZURE_APP_SERVICES_TASK_EXCEPTION", + "AZURE_ARM_TASK_EXCEPTION", + "AZURE_BP_TASK_EXCEPTION", + "MEDIA_NOT_SUPPORTED", + "AWS_ECS_ERROR", + "AWS_APPLICATION_AUTO_SCALING", + "AWS_ECS_SERVICE_NOT_ACTIVE", + "AWS_ECS_CLIENT_ERROR", + "AWS_STS_ERROR", + "FREEZE_EXCEPTION", + "MISSING_EXCEPTION", + "DELEGATE_TASK_EXPIRED", + "DELEGATE_TASK_VALIDATION_FAILED", + "MONGO_EXECUTION_TIMEOUT_EXCEPTION", + "DELEGATE_NOT_REGISTERED", + "TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE", + "APPROVAL_REJECTION", + "TERRAGRUNT_EXECUTION_ERROR", + "ADFS_ERROR", + "TERRAFORM_CLOUD_ERROR", + "CLUSTER_CREDENTIALS_NOT_FOUND", + "SCM_API_ERROR", + "INTERNAL_SERVER_ERROR", + "SCM_FORBIDDEN", + "AWS_EKS_ERROR", + "OPA_POLICY_EVALUATION_ERROR", + "USER_MARKED_FAILURE", + "SSH_RETRY", + "HTTP_CLIENT_ERROR_RESPONSE", + "HTTP_INTERNAL_SERVER_ERROR", + "HTTP_BAD_GATEWAY", + "HTTP_SERVICE_UNAVAILABLE", + "HTTP_GATEWAY_TIMEOUT", + "HTTP_SERVER_ERROR_RESPONSE", + "PIPELINE_UPDATE_EXCEPTION", + "SERVICENOW_REFRESH_TOKEN_ERROR", + "PARAMETER_FIELD_CAST_ERROR", + "ABORT_ALL_ALREADY_NG", + "WEBHOOK_EXCEPTION", + "INVALID_OIDC_CONFIGURATION", + "INVALID_CREDENTIALS", + "INVALID_OR_PRIVATE_REPO", + "BARRIER_FAILED_ERROR", + "ELASTICSEARCH_NOT_AVAILABLE", + "OBJECT_STORE_NOT_AVAILABLE", + "NO_ELIGIBLE_RUNNERS", + "NO_AVAILABLE_RUNNERS", + "RUNNER_DISCONNECTED", + "EVENT_LISTENER_STEP_FAILURE" + ] + }, + "message": { + "type": "string" + }, + "correlationId": { + "type": "string" + }, + "detailedMessage": { + "type": "string" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + }, + "metadata": { + "$ref": "#/components/schemas/CvErrorMetadata" + } + }, + "description": "This is Error entity as defined in Harness" + }, + "CvErrorMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "This implements different error meta data objects", + "discriminator": { + "propertyName": "type" + } + }, + "AnalysisDTO": { + "type": "object", + "properties": { + "liveMonitoring": { + "$ref": "#/components/schemas/LiveMonitoringDTO" + }, + "deploymentVerification": { + "$ref": "#/components/schemas/DeploymentVerificationDTO" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + } + } + }, + "AppDMetricDefinitions": { + "required": [ + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "groupName": { + "type": "string" + }, + "baseFolder": { + "type": "string" + }, + "metricPath": { + "type": "string" + }, + "completeMetricPath": { + "type": "string" + }, + "completeServiceInstanceMetricPath": { + "type": "string" + } + } + }, + "AppDynamicsHealthSource": { + "required": [ + "applicationName", + "connectorRef", + "feature", + "tierName" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "feature": { + "type": "string" + }, + "applicationName": { + "type": "string" + }, + "tierName": { + "type": "string" + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AppDMetricDefinitions" + } + } + }, + "description": "This is the AppDynamics Metric Health Source spec entity defined in Harness" + }, + "AwsPrometheusHealthSource": { + "required": [ + "connectorRef", + "region", + "workspaceId" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PrometheusMetricDefinition" + } + }, + "region": { + "type": "string" + }, + "workspaceId": { + "type": "string" + } + }, + "description": "This is the AwsPrometheusHealthSource Metric Health Source spec entity defined in Harness" + }, + "ChangeSourceDTO": { + "required": [ + "identifier", + "name", + "spec" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "HarnessCDNextGen", + "PagerDuty", + "K8sCluster", + "HarnessCD", + "HarnessFF", + "HarnessCE", + "CustomDeploy", + "CustomIncident", + "CustomInfrastructure", + "CustomFF" + ] + }, + "enabled": { + "type": "boolean" + }, + "spec": { + "$ref": "#/components/schemas/ChangeSourceSpec" + }, + "category": { + "type": "string", + "enum": [ + "Deployment", + "Infrastructure", + "Alert", + "FeatureFlag", + "ChaosExperiment" + ] + } + } + }, + "ChangeSourceSpec": { + "type": "object" + }, + "CloudWatchMetricDefinition": { + "required": [ + "expression", + "groupName", + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "groupName": { + "type": "string" + }, + "expression": { + "type": "string" + }, + "responseMapping": { + "$ref": "#/components/schemas/MetricResponseMapping" + } + } + }, + "CloudWatchMetricsHealthSource": { + "required": [ + "connectorRef", + "feature", + "metricDefinitions", + "region" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "region": { + "type": "string" + }, + "feature": { + "type": "string" + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CloudWatchMetricDefinition" + } + } + }, + "description": "This is the Cloud Watch Metric Health Source spec entity defined in Harness" + }, + "CustomHealthLogDefinition": { + "type": "object", + "properties": { + "requestDefinition": { + "$ref": "#/components/schemas/CustomHealthRequestDefinition" + }, + "logMessageJsonPath": { + "type": "string" + }, + "timestampJsonPath": { + "type": "string" + }, + "serviceInstanceJsonPath": { + "type": "string" + }, + "queryName": { + "type": "string" + } + } + }, + "CustomHealthMetricDefinition": { + "required": [ + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "requestDefinition": { + "$ref": "#/components/schemas/CustomHealthRequestDefinition" + }, + "queryType": { + "type": "string", + "enum": [ + "SERVICE_BASED", + "HOST_BASED" + ] + }, + "metricResponseMapping": { + "$ref": "#/components/schemas/MetricResponseMapping" + }, + "groupName": { + "type": "string" + } + } + }, + "CustomHealthRequestDefinition": { + "type": "object", + "properties": { + "urlPath": { + "type": "string" + }, + "requestBody": { + "type": "string" + }, + "method": { + "type": "string", + "enum": [ + "GET", + "POST" + ] + }, + "startTimeInfo": { + "$ref": "#/components/schemas/TimestampInfo" + }, + "endTimeInfo": { + "$ref": "#/components/schemas/TimestampInfo" + } + } + }, + "CustomHealthSourceLog": { + "required": [ + "connectorRef" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "logDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CustomHealthLogDefinition" + } + } + }, + "description": "This is the Custom Log Health Source spec entity defined in Harness" + }, + "CustomHealthSourceMetric": { + "required": [ + "connectorRef" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CustomHealthMetricDefinition" + } + } + }, + "description": "This is the Custom Metric Health Source spec entity defined in Harness" + }, + "DatadogLogHealthSource": { + "required": [ + "connectorRef", + "feature", + "queries" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "feature": { + "type": "string" + }, + "queries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DatadogLogHealthSourceQueryDTO" + } + } + }, + "description": "This is the Datadog Log Health Source spec entity defined in Harness" + }, + "DatadogLogHealthSourceQueryDTO": { + "required": [ + "indexes", + "name", + "query", + "serviceInstanceIdentifier" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "query": { + "type": "string" + }, + "indexes": { + "type": "array", + "items": { + "type": "string" + } + }, + "serviceInstanceIdentifier": { + "type": "string" + } + } + }, + "DatadogMetricHealthDefinition": { + "required": [ + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "dashboardId": { + "type": "string" + }, + "dashboardName": { + "type": "string" + }, + "metricPath": { + "type": "string" + }, + "query": { + "type": "string" + }, + "groupingQuery": { + "type": "string" + }, + "metric": { + "type": "string" + }, + "aggregation": { + "type": "string" + }, + "serviceInstanceIdentifierTag": { + "type": "string" + }, + "groupByResource": { + "type": "array", + "items": { + "type": "string" + } + }, + "metricTags": { + "type": "array", + "items": { + "type": "string" + } + }, + "isManualQuery": { + "type": "boolean" + }, + "isCustomCreatedMetric": { + "type": "boolean" + } + } + }, + "DatadogMetricHealthSource": { + "required": [ + "connectorRef", + "feature" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "feature": { + "type": "string" + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DatadogMetricHealthDefinition" + } + } + }, + "description": "This is the Datadog Metric Health Source spec entity defined in Harness" + }, + "DeploymentVerificationDTO": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "serviceInstanceFieldName": { + "type": "string" + }, + "serviceInstanceMetricPath": { + "type": "string" + }, + "groupByResource": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DynatraceHealthSource": { + "required": [ + "connectorRef", + "feature" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "feature": { + "type": "string" + }, + "serviceId": { + "type": "string" + }, + "serviceName": { + "type": "string" + }, + "serviceMethodIds": { + "type": "array", + "items": { + "type": "string" + } + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DynatraceMetricDefinition" + } + } + }, + "description": "This is the Dynatrace Metric Health Source spec entity defined in Harness" + }, + "DynatraceMetricDefinition": { + "required": [ + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "groupName": { + "type": "string" + }, + "metricSelector": { + "type": "string" + }, + "serviceInstanceIdentifier": { + "type": "string" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DynatraceMetricFilter" + } + }, + "isManualQuery": { + "type": "boolean" + } + } + }, + "DynatraceMetricFilter": { + "type": "object", + "properties": { + "dimension": { + "type": "string" + }, + "dimensionValue": { + "type": "string" + } + } + }, + "ELKHealthSource": { + "required": [ + "connectorRef", + "feature", + "queries" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "feature": { + "type": "string" + }, + "queries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ELKHealthSourceQueryDTO" + } + } + }, + "description": "This is the ELK Log Health Source spec entity defined in Harness" + }, + "ELKHealthSourceQueryDTO": { + "required": [ + "index", + "messageIdentifier", + "name", + "query", + "serviceInstanceIdentifier", + "timeStampFormat", + "timeStampIdentifier" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "query": { + "type": "string" + }, + "index": { + "type": "string" + }, + "serviceInstanceIdentifier": { + "type": "string" + }, + "timeStampIdentifier": { + "type": "string" + }, + "timeStampFormat": { + "type": "string" + }, + "messageIdentifier": { + "type": "string" + } + } + }, + "ErrorTrackingHealthSource": { + "required": [ + "connectorRef", + "feature" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "feature": { + "type": "string" + } + }, + "description": "This is the ErrorTracking Health Source spec entity defined in Harness" + }, + "FailMetricCustomThresholdSpec": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int32" + } + } + }, + "FailMetricThresholdSpec": { + "required": [ + "action" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/MetricThresholdSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/FailMetricCustomThresholdSpec" + } + } + } + ] + }, + "HealthSource": { + "required": [ + "Health Source", + "identifier", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "AppDynamics", + "NewRelic", + "BigQueryLog", + "StackdriverLog", + "Stackdriver", + "Prometheus", + "Splunk", + "DatadogMetrics", + "DatadogLog", + "Dynatrace", + "DynatraceGrailLogs", + "ErrorTracking", + "CustomHealthMetric", + "CustomHealthLog", + "SplunkMetric", + "ElasticSearch", + "CloudWatchMetrics", + "AwsPrometheus", + "SumologicMetrics", + "SumologicLogs", + "SplunkSignalFXMetrics", + "GrafanaLokiLogs", + "AzureLogs", + "AzureMetrics", + "CloudWatchLog" + ] + }, + "version": { + "type": "string", + "enum": [ + "v1", + "v2" + ] + }, + "Health Source": { + "$ref": "#/components/schemas/HealthSourceSpec" + } + } + }, + "HealthSourceParamsDTO": { + "type": "object", + "properties": { + "region": { + "type": "string" + } + } + }, + "HealthSourceSpec": { + "required": [ + "connectorRef" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + } + }, + "description": "This is the Health Source entity defined in Harness", + "anyOf": [ + { + "$ref": "#/components/schemas/AppDynamicsHealthSource" + }, + { + "$ref": "#/components/schemas/NewRelicHealthSource" + }, + { + "$ref": "#/components/schemas/StackdriverLogHealthSource" + }, + { + "$ref": "#/components/schemas/SplunkHealthSource" + }, + { + "$ref": "#/components/schemas/PrometheusHealthSource" + }, + { + "$ref": "#/components/schemas/StackdriverMetricHealthSource" + }, + { + "$ref": "#/components/schemas/DatadogMetricHealthSource" + }, + { + "$ref": "#/components/schemas/DatadogLogHealthSource" + }, + { + "$ref": "#/components/schemas/DynatraceHealthSource" + }, + { + "$ref": "#/components/schemas/ErrorTrackingHealthSource" + }, + { + "$ref": "#/components/schemas/CustomHealthSourceMetric" + }, + { + "$ref": "#/components/schemas/CustomHealthSourceLog" + }, + { + "$ref": "#/components/schemas/SplunkMetricHealthSource" + }, + { + "$ref": "#/components/schemas/ELKHealthSource" + }, + { + "$ref": "#/components/schemas/CloudWatchMetricsHealthSource" + }, + { + "$ref": "#/components/schemas/AwsPrometheusHealthSource" + }, + { + "$ref": "#/components/schemas/NextGenHealthSource" + } + ] + }, + "IgnoreMetricThresholdSpec": { + "required": [ + "action" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/MetricThresholdSpec" + } + ] + }, + "KubernetesDependencyMetadata": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceDependencyMetadata" + }, + { + "type": "object", + "properties": { + "namespace": { + "type": "string" + }, + "workload": { + "type": "string" + }, + "workloads": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + ] + }, + "LiveMonitoringDTO": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "MetricResponseMapping": { + "type": "object", + "properties": { + "metricValueJsonPath": { + "type": "string" + }, + "timestampJsonPath": { + "type": "string" + }, + "serviceInstanceJsonPath": { + "type": "string" + }, + "serviceInstanceListJsonPath": { + "type": "string" + }, + "relativeMetricListJsonPath": { + "type": "string" + }, + "relativeTimestampJsonPath": { + "type": "string" + }, + "relativeMetricValueJsonPath": { + "type": "string" + }, + "relativeServiceInstanceValueJsonPath": { + "type": "string" + }, + "timestampFormat": { + "type": "string" + } + } + }, + "MetricThreshold": { + "required": [ + "spec" + ], + "type": "object", + "properties": { + "groupName": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "metricIdentifier": { + "type": "string" + }, + "metricType": { + "type": "string" + }, + "spec": { + "$ref": "#/components/schemas/MetricThresholdSpec" + }, + "criteria": { + "$ref": "#/components/schemas/MetricThresholdCriteria" + }, + "type": { + "type": "string", + "enum": [ + "IgnoreThreshold", + "FailImmediately" + ] + } + } + }, + "MetricThresholdCriteria": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Absolute", + "Percentage" + ] + }, + "spec": { + "$ref": "#/components/schemas/MetricThresholdCriteriaSpec" + } + } + }, + "MetricThresholdCriteriaSpec": { + "type": "object", + "properties": { + "lessThan": { + "type": "number", + "format": "double" + }, + "greaterThan": { + "type": "number", + "format": "double" + } + } + }, + "MetricThresholdSpec": { + "required": [ + "action", + "type" + ], + "type": "object", + "properties": { + "action": { + "type": "string", + "enum": [ + "Ignore", + "FailImmediately", + "FailAfterOccurrence", + "FailAfterConsecutiveOccurrence" + ] + }, + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "MonitoredService": { + "required": [ + "identifier", + "name", + "orgIdentifier", + "projectIdentifier", + "serviceRef", + "type" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Application", + "Infrastructure" + ] + }, + "description": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "environmentRef": { + "type": "string" + }, + "environmentRefList": { + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sources": { + "$ref": "#/components/schemas/Sources" + }, + "dependencies": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceDependencyDTO" + } + }, + "notificationRuleRefs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationRuleRefDTO" + } + }, + "template": { + "$ref": "#/components/schemas/TemplateDTO" + }, + "enabled": { + "type": "boolean" + } + }, + "description": "This is the Monitored Service entity defined in Harness" + }, + "MonitoredServiceResponse": { + "required": [ + "monitoredService" + ], + "type": "object", + "properties": { + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "monitoredService": { + "$ref": "#/components/schemas/MonitoredService" + } + } + }, + "NewRelicHealthSource": { + "required": [ + "connectorRef" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "applicationName": { + "type": "string" + }, + "applicationId": { + "type": "string" + }, + "feature": { + "type": "string" + }, + "newRelicMetricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NewRelicMetricDefinition" + } + } + }, + "description": "This is the NewRelic Metric Health Source spec entity defined in Harness" + }, + "NewRelicMetricDefinition": { + "required": [ + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "groupName": { + "type": "string" + }, + "nrql": { + "type": "string" + }, + "responseMapping": { + "$ref": "#/components/schemas/MetricResponseMapping" + }, + "serviceInstanceField": { + "type": "string" + } + } + }, + "NextGenHealthSource": { + "required": [ + "connectorRef" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "queryDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/QueryDefinition" + } + }, + "healthSourceParams": { + "$ref": "#/components/schemas/HealthSourceParamsDTO" + } + }, + "description": "This is the NextGenHealthSource Health Source spec entity defined in Harness" + }, + "NotificationRuleRefDTO": { + "required": [ + "enabled", + "notificationRuleRef" + ], + "type": "object", + "properties": { + "notificationRuleRef": { + "type": "string" + }, + "enabled": { + "type": "boolean" + } + } + }, + "PrometheusFilter": { + "type": "object", + "properties": { + "labelName": { + "type": "string" + }, + "labelValue": { + "type": "string" + } + } + }, + "PrometheusHealthSource": { + "required": [ + "connectorRef" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PrometheusMetricDefinition" + } + } + }, + "description": "This is the Prometheus Metric Health Source spec entity defined in Harness" + }, + "PrometheusMetricDefinition": { + "required": [ + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "query": { + "type": "string" + }, + "groupName": { + "type": "string" + }, + "serviceInstanceFieldName": { + "type": "string" + }, + "prometheusMetric": { + "type": "string" + }, + "serviceFilter": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PrometheusFilter" + } + }, + "envFilter": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PrometheusFilter" + } + }, + "additionalFilters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PrometheusFilter" + } + }, + "aggregation": { + "type": "string" + }, + "isManualQuery": { + "type": "boolean" + } + } + }, + "QueryDefinition": { + "required": [ + "identifier" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "groupName": { + "type": "string" + }, + "queryParams": { + "$ref": "#/components/schemas/QueryParamsDTO" + }, + "liveMonitoringEnabled": { + "type": "boolean" + }, + "continuousVerificationEnabled": { + "type": "boolean" + }, + "sliEnabled": { + "type": "boolean" + }, + "query": { + "type": "string" + }, + "metricThresholds": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MetricThreshold" + } + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + } + } + }, + "QueryParamsDTO": { + "type": "object", + "properties": { + "serviceInstanceField": { + "type": "string" + }, + "index": { + "type": "string" + }, + "region": { + "type": "string" + }, + "iamRoleArn": { + "type": "string" + }, + "timeStampIdentifier": { + "type": "string" + }, + "timeStampFormat": { + "type": "string" + }, + "messageIdentifier": { + "type": "string" + }, + "healthSourceMetricName": { + "type": "string" + }, + "healthSourceMetricNamespace": { + "type": "string" + }, + "aggregationType": { + "type": "string", + "enum": [ + "average", + "maximum", + "minimum", + "total", + "count" + ] + }, + "indexes": { + "type": "array", + "items": { + "type": "string" + } + }, + "logGroups": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "RestResponseMonitoredServiceResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/MonitoredServiceResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "RiskProfile": { + "type": "object", + "properties": { + "category": { + "type": "string", + "enum": [ + "Performance", + "Errors", + "Infrastructure" + ] + }, + "metricType": { + "type": "string", + "enum": [ + "INFRA", + "RESP_TIME", + "THROUGHPUT", + "ERROR", + "APDEX", + "OTHER" + ] + }, + "riskCategory": { + "type": "string", + "enum": [ + "Errors", + "Infrastructure", + "Performance_Throughput", + "Performance_Other", + "Performance_ResponseTime" + ] + }, + "thresholdTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "ACT_WHEN_LOWER", + "ACT_WHEN_HIGHER" + ] + } + } + } + }, + "SLIDTO": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "ServiceDependencyDTO": { + "type": "object", + "properties": { + "monitoredServiceIdentifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "KUBERNETES" + ] + }, + "dependencyMetadata": { + "$ref": "#/components/schemas/ServiceDependencyMetadata" + } + } + }, + "ServiceDependencyMetadata": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "KUBERNETES" + ] + }, + "supportedChangeSourceTypes": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string", + "enum": [ + "HarnessCDNextGen", + "PagerDuty", + "K8sCluster", + "HarnessCD", + "HarnessFF", + "HarnessCE", + "CustomDeploy", + "CustomIncident", + "CustomInfrastructure", + "CustomFF" + ] + } + } + } + }, + "Sources": { + "type": "object", + "properties": { + "healthSources": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/HealthSource" + } + }, + "changeSources": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/ChangeSourceDTO" + } + } + } + }, + "SplunkHealthSource": { + "required": [ + "connectorRef", + "feature", + "queries" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "feature": { + "type": "string" + }, + "queries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SplunkHealthSourceQueryDTO" + } + } + }, + "description": "This is the Splunk Log Health Source spec entity defined in Harness" + }, + "SplunkHealthSourceQueryDTO": { + "required": [ + "name", + "query", + "serviceInstanceIdentifier" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "query": { + "type": "string" + }, + "serviceInstanceIdentifier": { + "type": "string" + } + } + }, + "SplunkMetricDefinition": { + "required": [ + "groupName", + "identifier", + "metricName", + "query" + ], + "type": "object", + "properties": { + "groupName": { + "type": "string" + }, + "query": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + } + } + }, + "SplunkMetricHealthSource": { + "required": [ + "connectorRef", + "feature" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "feature": { + "type": "string" + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SplunkMetricDefinition" + } + } + }, + "description": "This is the Splunk Metric Health Source spec entity defined in Harness" + }, + "StackdriverDefinition": { + "required": [ + "identifier", + "metricName" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "riskProfile": { + "$ref": "#/components/schemas/RiskProfile" + }, + "analysis": { + "$ref": "#/components/schemas/AnalysisDTO" + }, + "sli": { + "$ref": "#/components/schemas/SLIDTO" + }, + "dashboardName": { + "type": "string" + }, + "dashboardPath": { + "type": "string" + }, + "jsonMetricDefinition": { + "type": "object" + }, + "jsonMetricDefinitionString": { + "type": "string" + }, + "metricTags": { + "type": "array", + "items": { + "type": "string" + } + }, + "serviceInstanceField": { + "type": "string" + }, + "isManualQuery": { + "type": "boolean" + } + } + }, + "StackdriverLogHealthSource": { + "required": [ + "connectorRef", + "feature", + "queries" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "feature": { + "type": "string" + }, + "queries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StackdriverLogHealthSourceQueryDTO" + } + } + }, + "description": "This is the StackDriver Log Health Source spec entity defined in Harness" + }, + "StackdriverLogHealthSourceQueryDTO": { + "required": [ + "messageIdentifier", + "name", + "query", + "serviceInstanceIdentifier" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "query": { + "type": "string" + }, + "messageIdentifier": { + "type": "string" + }, + "serviceInstanceIdentifier": { + "type": "string" + } + } + }, + "StackdriverMetricHealthSource": { + "required": [ + "connectorRef" + ], + "type": "object", + "properties": { + "connectorRef": { + "type": "string" + }, + "metricPacks": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeSeriesMetricPackDTO" + } + }, + "metricDefinitions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StackdriverDefinition" + } + } + }, + "description": "This is the Stackdriver Metric Health Source spec entity defined in Harness" + }, + "TemplateDTO": { + "required": [ + "templateRef" + ], + "type": "object", + "properties": { + "templateRef": { + "type": "string" + }, + "versionLabel": { + "type": "string" + }, + "templateInputs": { + "type": "string" + }, + "isTemplateByReference": { + "type": "boolean" + }, + "lastReconciliationTime": { + "type": "integer", + "format": "int64" + } + } + }, + "TimeSeriesMetricPackDTO": { + "required": [ + "identifier" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricThresholds": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MetricThreshold" + } + } + } + }, + "TimestampInfo": { + "type": "object", + "properties": { + "placeholder": { + "type": "string" + }, + "timestampFormat": { + "type": "string", + "enum": [ + "SECONDS", + "MILLISECONDS", + "CUSTOM" + ] + }, + "customTimestampFormat": { + "type": "string" + } + } + }, + "ProjectParams": { + "required": [ + "account_identifier" + ], + "type": "object", + "properties": { + "account_identifier": { + "type": "string", + "description": "Account Identifier." + }, + "org_identifier": { + "type": "string", + "description": "Org Identifier." + }, + "project_identifier": { + "type": "string", + "description": "Project Identifier." + } + }, + "description": "Project Parameters" + }, + "ResponseDTOMonitoredServiceResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/MonitoredServiceResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "HealthSourceSummary": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + } + } + }, + "MonitoredServiceWithHealthSources": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "healthSources": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/components/schemas/HealthSourceSummary" + } + } + } + }, + "ResponseDTOListMonitoredServiceWithHealthSources": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServiceWithHealthSources" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "AnomaliesSummaryDTO": { + "type": "object", + "properties": { + "logsAnomalies": { + "type": "integer", + "format": "int64" + }, + "timeSeriesAnomalies": { + "type": "integer", + "format": "int64" + }, + "totalAnomalies": { + "type": "integer", + "format": "int64" + } + } + }, + "RestResponseAnomaliesSummaryDTO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/AnomaliesSummaryDTO" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "CountServiceDTO": { + "type": "object", + "properties": { + "allServicesCount": { + "type": "integer", + "format": "int32" + }, + "servicesAtRiskCount": { + "type": "integer", + "format": "int32" + } + } + }, + "CvEntityGitDetails": { + "type": "object", + "properties": { + "valid": { + "type": "boolean", + "description": "Indicates if the Entity is valid" + }, + "invalidYaml": { + "type": "string", + "description": "This has the Git File content if the entity is invalid" + } + }, + "description": "This contains Validity Details of the Entity" + }, + "CvEnvironmentResponse": { + "type": "object", + "properties": { + "environment": { + "$ref": "#/components/schemas/EnvironmentResponseDetails" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/CvEntityGitDetails" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/CvGovernanceMetadata" + } + } + }, + "CvGovernanceMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "detailsList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CvPolicySetMetadata" + } + }, + "deny": { + "type": "boolean" + }, + "detailsCount": { + "type": "integer", + "format": "int32" + }, + "detailsOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CvPolicySetMetadataOrBuilder" + } + }, + "messageBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "entityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "actionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "message": { + "type": "string" + }, + "id": { + "type": "string" + }, + "type": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "initialized": { + "type": "boolean" + }, + "status": { + "type": "string" + }, + "action": { + "type": "string" + }, + "entity": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/CvGovernanceMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserGovernanceMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "orgId": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "accountId": { + "type": "string" + }, + "typeBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "projectId": { + "type": "string" + }, + "idBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "CvPolicyMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyName": { + "type": "string" + }, + "policyId": { + "type": "string" + }, + "policyIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severityBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "denyMessagesList": { + "type": "array", + "properties": { + "empty": { + "type": "boolean" + } + }, + "items": { + "type": "string" + } + }, + "denyMessagesCount": { + "type": "integer", + "format": "int32" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "errorBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "severity": { + "type": "string" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "status": { + "type": "string" + }, + "error": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/CvPolicyMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicyMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "orgId": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "accountId": { + "type": "string" + }, + "projectId": { + "type": "string" + }, + "updated": { + "type": "integer", + "format": "int64" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "CvPolicySetMetadata": { + "type": "object", + "properties": { + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CvPolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "deny": { + "type": "boolean" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "initialized": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/CvPolicySetMetadata" + }, + "parserForType": { + "$ref": "#/components/schemas/ParserPolicySetMetadata" + }, + "serializedSize": { + "type": "integer", + "format": "int32" + }, + "orgId": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "accountId": { + "type": "string" + }, + "projectId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "memoizedSerializedSize": { + "type": "integer", + "format": "int32", + "writeOnly": true + } + } + }, + "CvPolicySetMetadataOrBuilder": { + "type": "object", + "properties": { + "projectIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "orgIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "accountIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifierBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "descriptionBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyMetadataOrBuilderList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyMetadataOrBuilder" + } + }, + "policySetName": { + "type": "string" + }, + "policySetNameBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policySetId": { + "type": "string" + }, + "policySetIdBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "policyMetadataList": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CvPolicyMetadata" + } + }, + "policyMetadataCount": { + "type": "integer", + "format": "int32" + }, + "deny": { + "type": "boolean" + }, + "statusBytes": { + "$ref": "#/components/schemas/ByteString" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "status": { + "type": "string" + }, + "orgId": { + "type": "string" + }, + "created": { + "type": "integer", + "format": "int64" + }, + "accountId": { + "type": "string" + }, + "projectId": { + "type": "string" + }, + "allFields": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "defaultInstanceForType": { + "$ref": "#/components/schemas/Message" + }, + "unknownFields": { + "$ref": "#/components/schemas/UnknownFieldSet" + }, + "initializationErrorString": { + "type": "string" + }, + "descriptorForType": { + "$ref": "#/components/schemas/Descriptor" + }, + "initialized": { + "type": "boolean" + } + } + }, + "CvResponseDTOListEnvironmentResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CvEnvironmentResponse" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "HealthSourceDTO": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "APP_DYNAMICS", + "BIGQUERY_LOG", + "SPLUNK", + "SPLUNK_METRIC", + "STACKDRIVER", + "STACKDRIVER_LOG", + "KUBERNETES", + "NEW_RELIC", + "NEW_RELIC_GRAPHQL", + "PROMETHEUS", + "DATADOG_METRICS", + "DATADOG_LOG", + "APM_GROUPED_DATADOG_METRICS", + "ERROR_TRACKING", + "DYNATRACE", + "DYNATRACE_GRAIL_LOGS", + "CUSTOM_HEALTH_METRIC", + "CUSTOM_HEALTH_LOG", + "ELASTICSEARCH", + "CLOUDWATCH_METRICS", + "AWS_PROMETHEUS", + "SUMOLOGIC_METRICS", + "SUMOLOGIC_LOG", + "SPLUNK_SIGNALFX_METRICS", + "GRAFANA_LOKI_LOGS", + "AZURE_LOGS", + "AZURE_METRICS", + "CLOUDWATCH_LOG" + ] + }, + "verificationType": { + "type": "string", + "enum": [ + "TIME_SERIES", + "LOG" + ] + } + } + }, + "RestResponseListHealthSourceDTO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HealthSourceDTO" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "PageResponseMonitoredServiceResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServiceResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseMonitoredServiceResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseMonitoredServiceResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "MonitoredServicePlatformResponse": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "environmentRefs": { + "type": "array", + "items": { + "type": "string" + } + }, + "serviceName": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Application", + "Infrastructure" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "configuredChangeSources": { + "type": "integer", + "format": "int32" + }, + "configuredHealthSources": { + "type": "integer", + "format": "int32" + } + } + }, + "PageResponseMonitoredServicePlatformResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServicePlatformResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseMonitoredServicePlatformResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseMonitoredServicePlatformResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOListSecondaryEventsResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SecondaryEventsResponse" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SecondaryEventsResponse": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Downtime", + "DataCollectionFailure", + "Annotation", + "ErrorBudgetReset", + "SrmAnalysisImpact" + ] + }, + "identifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + } + } + }, + "AnnotationInstance": { + "required": [ + "message", + "uuid" + ], + "type": "object", + "properties": { + "uuid": { + "type": "string" + }, + "message": { + "type": "string" + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "createdBy": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + } + } + }, + "AnnotationInstanceDetails": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SecondaryEventDetails" + }, + { + "type": "object", + "properties": { + "annotations": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AnnotationInstance" + } + } + } + } + ] + }, + "DataCollectionFailureInstanceDetails": { + "required": [ + "message" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SecondaryEventDetails" + }, + { + "type": "object", + "properties": { + "message": { + "type": "string" + } + } + } + ] + }, + "DowntimeInstanceDetails": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SecondaryEventDetails" + } + ] + }, + "ResponseDTOSecondaryEventDetailsResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SecondaryEventDetailsResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SLOErrorBudgetResetInstanceDetails": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SecondaryEventDetails" + }, + { + "type": "object", + "properties": { + "errorBudgetIncrementMinutes": { + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "SRMAnalysisStepInstanceDetails": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SecondaryEventDetails" + }, + { + "type": "object", + "properties": { + "stepName": { + "type": "string" + }, + "analysisDuration": { + "type": "object", + "properties": { + "seconds": { + "type": "integer", + "format": "int64" + }, + "zero": { + "type": "boolean" + }, + "nano": { + "type": "integer", + "format": "int32" + }, + "negative": { + "type": "boolean" + }, + "units": { + "type": "array", + "items": { + "type": "object", + "properties": { + "durationEstimated": { + "type": "boolean" + }, + "timeBased": { + "type": "boolean" + }, + "dateBased": { + "type": "boolean" + } + } + } + } + } + }, + "analysisStatus": { + "type": "string", + "enum": [ + "RUNNING", + "COMPLETED", + "ABORTED" + ] + } + } + } + ] + }, + "SecondaryEventDetails": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "SecondaryEventDetailsResponse": { + "required": [ + "details", + "startTime", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Downtime", + "DataCollectionFailure", + "Annotation", + "ErrorBudgetReset", + "SrmAnalysisImpact" + ] + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "details": { + "$ref": "#/components/schemas/SecondaryEventDetails" + } + } + }, + "MonitoredServiceChangeDetailSLO": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "outOfRange": { + "type": "boolean" + } + } + }, + "RestResponseListMonitoredServiceChangeDetailSLO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServiceChangeDetailSLO" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "CategoryCountDetails": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int64" + }, + "countInPrecedingWindow": { + "type": "integer", + "format": "int64" + }, + "percentageChange": { + "type": "number", + "format": "double" + } + } + }, + "ChangeSummaryDTO": { + "type": "object", + "properties": { + "categoryCountMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/CategoryCountDetails" + } + }, + "total": { + "$ref": "#/components/schemas/CategoryCountDetails" + } + } + }, + "HistoricalTrend": { + "type": "object", + "properties": { + "healthScores": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RiskData" + } + } + } + }, + "MonitoredServiceListItemDTO": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "environmentRef": { + "type": "string" + }, + "environmentRefList": { + "type": "array", + "items": { + "type": "string" + } + }, + "serviceName": { + "type": "string" + }, + "environmentName": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Application", + "Infrastructure" + ] + }, + "healthMonitoringEnabled": { + "type": "boolean" + }, + "currentHealthScore": { + "$ref": "#/components/schemas/RiskData" + }, + "dependentHealthScore": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RiskData" + } + }, + "historicalTrend": { + "$ref": "#/components/schemas/HistoricalTrend" + }, + "changeSummary": { + "$ref": "#/components/schemas/ChangeSummaryDTO" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "serviceMonitoringEnabled": { + "type": "boolean" + }, + "sloHealthIndicators": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SloHealthIndicatorDTO" + } + } + } + }, + "RiskData": { + "type": "object", + "properties": { + "healthScore": { + "type": "integer", + "format": "int32" + }, + "riskStatus": { + "type": "string", + "enum": [ + "NO_DATA", + "NO_ANALYSIS", + "HEALTHY", + "OBSERVE", + "NEED_ATTENTION", + "UNHEALTHY", + "CUSTOMER_DEFINED_UNHEALTHY" + ] + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "timeRangeParams": { + "$ref": "#/components/schemas/TimeRangeParams" + } + } + }, + "SloHealthIndicatorDTO": { + "type": "object", + "properties": { + "serviceLevelObjectiveIdentifier": { + "type": "string" + }, + "monitoredServiceIdentifier": { + "type": "string" + }, + "errorBudgetRemainingPercentage": { + "type": "number", + "format": "double" + }, + "errorBudgetRemainingMinutes": { + "type": "integer", + "format": "int32" + }, + "errorBudgetBurnRate": { + "type": "number", + "format": "double" + }, + "errorBudgetRisk": { + "type": "string", + "enum": [ + "EXHAUSTED", + "UNHEALTHY", + "NEED_ATTENTION", + "OBSERVE", + "HEALTHY" + ] + } + } + }, + "TimeRangeParams": { + "type": "object", + "properties": { + "startTime": { + "type": "string", + "format": "date-time" + }, + "endTime": { + "type": "string", + "format": "date-time" + } + } + }, + "ApiCallLogDTO": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGLog" + }, + { + "type": "object", + "properties": { + "requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApiCallLogDTOField" + } + }, + "responses": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApiCallLogDTOField" + } + }, + "requestTime": { + "type": "integer", + "format": "int64" + }, + "responseTime": { + "type": "integer", + "format": "int64" + } + } + } + ] + }, + "ApiCallLogDTOField": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "JSON", + "XML", + "NUMBER", + "URL", + "TEXT", + "TIMESTAMP" + ] + } + } + }, + "CVNGLog": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "traceableId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CVNGLogTag" + } + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "traceableType": { + "type": "string", + "enum": [ + "ONBOARDING", + "VERIFICATION_TASK", + "VERIFICATION_JOB_INSTANCE" + ] + }, + "type": { + "type": "string", + "enum": [ + "ApiCallLog", + "ExecutionLog" + ] + } + }, + "description": "This is the CVNG Log entity defined in Harness", + "discriminator": { + "propertyName": "type" + } + }, + "CVNGLogTag": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "TIMESTAMP", + "STRING", + "DEBUG" + ] + } + } + }, + "ExecutionLogDTO": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGLog" + }, + { + "type": "object", + "properties": { + "log": { + "type": "string" + }, + "logLevel": { + "type": "string", + "enum": [ + "INFO", + "WARN", + "ERROR" + ] + } + } + } + ] + }, + "PageResponseCVNGLog": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CVNGLog" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "RestResponsePageResponseCVNGLog": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/PageResponseCVNGLog" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "MonitoredServiceReference": { + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "accountIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "serviceIdentifier": { + "type": "string" + }, + "environmentIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "lastReconciledTimestamp": { + "type": "integer", + "format": "int64" + }, + "reconciliationStatus": { + "type": "string", + "enum": [ + "NO_RECONCILIATION_REQUIRED", + "INPUT_REQUIRED_FOR_RECONCILIATION", + "NO_INPUT_REQUIRED_FOR_RECONCILIATION" + ] + } + } + }, + "PageResponseMonitoredServiceReference": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServiceReference" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "RestResponsePageResponseMonitoredServiceReference": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/PageResponseMonitoredServiceReference" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "HealthScoreDTO": { + "type": "object", + "properties": { + "currentHealthScore": { + "$ref": "#/components/schemas/RiskData" + }, + "dependentHealthScore": { + "$ref": "#/components/schemas/RiskData" + } + } + }, + "ResponseDTOHealthScoreDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/HealthScoreDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CVNGEmailChannelSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGNotificationChannelSpec" + }, + { + "type": "object", + "properties": { + "userGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "recipients": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + ] + }, + "CVNGMSTeamsChannelSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGNotificationChannelSpec" + }, + { + "type": "object", + "properties": { + "msTeamKeys": { + "type": "array", + "items": { + "type": "string" + } + }, + "userGroups": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + ] + }, + "CVNGNotificationChannel": { + "required": [ + "spec" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Email", + "Slack", + "PagerDuty", + "MsTeams", + "Webhook", + "Rollback" + ] + }, + "spec": { + "$ref": "#/components/schemas/CVNGNotificationChannelSpec" + } + } + }, + "CVNGNotificationChannelSpec": { + "type": "object" + }, + "CVNGPagerDutyChannelSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGNotificationChannelSpec" + }, + { + "type": "object", + "properties": { + "userGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "integrationKey": { + "type": "string" + } + } + } + ] + }, + "CVNGRollbackSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGNotificationChannelSpec" + }, + { + "type": "object", + "properties": { + "infrastructureId": { + "type": "string" + }, + "rollbackWindow": { + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "CVNGSlackChannelSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGNotificationChannelSpec" + }, + { + "type": "object", + "properties": { + "userGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "webhookUrl": { + "type": "string" + } + } + } + ] + }, + "CVNGWebhookChannelSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CVNGNotificationChannelSpec" + }, + { + "type": "object", + "properties": { + "userGroups": { + "type": "array", + "items": { + "type": "string" + } + }, + "webhookUrl": { + "type": "string" + }, + "authorizationToken": { + "type": "string" + }, + "headers": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "expressionFunctorToken": { + "type": "integer", + "format": "int64" + } + } + } + ] + }, + "ChangeImpactConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + }, + { + "type": "object", + "properties": { + "changeEventTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Deployment", + "Infrastructure", + "Incident" + ] + } + }, + "changeCategories": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Deployment", + "Infrastructure", + "Alert", + "FeatureFlag", + "ChaosExperiment" + ] + } + }, + "threshold": { + "maximum": 100, + "minimum": 0, + "type": "number", + "format": "double" + }, + "period": { + "type": "string" + } + } + } + ] + }, + "ChangeObservedConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + }, + { + "type": "object", + "properties": { + "changeEventTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Deployment", + "Infrastructure", + "Incident" + ] + } + }, + "changeCategories": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Deployment", + "Infrastructure", + "Alert", + "FeatureFlag", + "ChaosExperiment" + ] + } + } + } + } + ] + }, + "DeploymentImpactReportConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + } + ] + }, + "ErrorBudgetBurnRateConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + }, + { + "type": "object", + "properties": { + "threshold": { + "minimum": 0, + "type": "number", + "format": "double" + }, + "lookBackDuration": { + "type": "string" + } + } + } + ] + }, + "ErrorBudgetRemainingMinutesConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + }, + { + "type": "object", + "properties": { + "threshold": { + "type": "number", + "format": "double" + } + } + } + ] + }, + "ErrorBudgetRemainingPercentageConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + }, + { + "type": "object", + "properties": { + "threshold": { + "minimum": 0, + "type": "number", + "format": "double" + } + } + } + ] + }, + "ErrorTrackingConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + }, + { + "type": "object", + "properties": { + "errorTrackingEventTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Exceptions", + "LogErrors", + "HttpErrors", + "CustomErrors", + "TimeoutErrors", + "SwallowedExceptions", + "CaughtExceptions", + "UncaughtExceptions", + "LogWarnings" + ] + } + }, + "errorTrackingEventStatus": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "NewEvents", + "CriticalEvents", + "ResurfacedEvents" + ] + } + }, + "aggregated": { + "type": "boolean" + }, + "savedFilterId": { + "type": "integer", + "format": "int64" + }, + "volumeThresholdCount": { + "type": "integer", + "format": "int32" + }, + "volumeThresholdMinutes": { + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "HealthScoreConditionSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + }, + { + "type": "object", + "properties": { + "threshold": { + "maximum": 100, + "minimum": 0, + "type": "number", + "format": "double" + }, + "period": { + "type": "string" + } + } + } + ] + }, + "NotificationRule": { + "required": [ + "conditions", + "identifier", + "name", + "notificationMethod", + "type" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "MonitoredService", + "ServiceLevelObjective", + "FireHydrant" + ] + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationRuleCondition" + } + }, + "notificationMethod": { + "$ref": "#/components/schemas/CVNGNotificationChannel" + } + }, + "description": "This is the Notification Rule entity defined in Harness" + }, + "NotificationRuleCondition": { + "required": [ + "spec" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "ErrorBudgetRemainingPercentage", + "ErrorBudgetRemainingMinutes", + "ErrorBudgetBurnRate", + "ChangeImpact", + "HealthScore", + "ChangeObserved", + "CodeErrors", + "FireHydrantReport", + "DeploymentImpactReport" + ] + }, + "spec": { + "$ref": "#/components/schemas/NotificationRuleConditionSpec" + } + } + }, + "NotificationRuleConditionSpec": { + "type": "object" + }, + "NotificationRuleResponse": { + "required": [ + "notificationRule" + ], + "type": "object", + "properties": { + "notificationRule": { + "$ref": "#/components/schemas/NotificationRule" + }, + "enabled": { + "type": "boolean" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + } + } + }, + "PageResponseNotificationRuleResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationRuleResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseNotificationRuleResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseNotificationRuleResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOHistoricalTrend": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/HistoricalTrend" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CvResponseDTOListServiceResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CvServiceResponse" + } + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "CvServiceResponse": { + "type": "object", + "properties": { + "service": { + "$ref": "#/components/schemas/ServiceResponseDetails" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "entityValidityDetails": { + "$ref": "#/components/schemas/CvEntityGitDetails" + }, + "governanceMetadata": { + "$ref": "#/components/schemas/CvGovernanceMetadata" + } + } + }, + "MetricDTO": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "metricName": { + "type": "string" + } + } + }, + "RestResponseListMetricDTO": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MetricDTO" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "PageResponseMonitoredServiceListItemDTO": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServiceListItemDTO" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseMonitoredServiceListItemDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseMonitoredServiceListItemDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "HealthMonitoringFlagResponse": { + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "healthMonitoringEnabled": { + "type": "boolean" + } + } + }, + "RestResponseHealthMonitoringFlagResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/HealthMonitoringFlagResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "MonitoredServiceDetail": { + "type": "object", + "properties": { + "monitoredServiceIdentifier": { + "type": "string" + }, + "monitoredServiceName": { + "type": "string" + }, + "healthSourceIdentifier": { + "type": "string" + }, + "healthSourceName": { + "type": "string" + }, + "serviceIdentifier": { + "type": "string" + }, + "serviceName": { + "type": "string" + }, + "environmentIdentifier": { + "type": "string" + }, + "environmentName": { + "type": "string" + }, + "projectParams": { + "$ref": "#/components/schemas/ProjectParams" + }, + "projectName": { + "type": "string" + }, + "orgName": { + "type": "string" + } + } + }, + "RestResponseListMonitoredServiceDetail": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServiceDetail" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "AffectedEntity": { + "required": [ + "envName", + "monitoredServiceIdentifier", + "serviceName" + ], + "type": "object", + "properties": { + "serviceName": { + "type": "string" + }, + "envName": { + "type": "string" + }, + "monitoredServiceIdentifier": { + "type": "string" + } + } + }, + "AllEntitiesRule": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/EntitiesRule" + } + ] + }, + "Downtime": { + "required": [ + "category", + "entitiesRule", + "identifier", + "name", + "orgIdentifier", + "projectIdentifier", + "spec" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "category": { + "type": "string", + "enum": [ + "ScheduledMaintenance", + "Deployment", + "Other" + ] + }, + "scope": { + "type": "string", + "enum": [ + "Project", + "Entity" + ] + }, + "spec": { + "$ref": "#/components/schemas/DowntimeSpecDTO" + }, + "entitiesRule": { + "$ref": "#/components/schemas/EntitiesRule" + }, + "enabled": { + "type": "boolean" + } + }, + "description": "This is the Downtime entity defined in Harness" + }, + "DowntimeDuration": { + "required": [ + "durationType", + "durationValue" + ], + "type": "object", + "properties": { + "durationType": { + "type": "string", + "enum": [ + "Minutes", + "Hours", + "Days", + "Weeks" + ] + }, + "durationValue": { + "type": "integer", + "format": "int32" + } + } + }, + "DowntimeRecurrence": { + "required": [ + "recurrenceType", + "recurrenceValue" + ], + "type": "object", + "properties": { + "recurrenceType": { + "type": "string", + "enum": [ + "Day", + "Week", + "Month", + "Year" + ] + }, + "recurrenceValue": { + "type": "integer", + "format": "int32" + } + } + }, + "DowntimeResponse": { + "required": [ + "downtime" + ], + "type": "object", + "properties": { + "downtime": { + "$ref": "#/components/schemas/Downtime" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + } + } + }, + "DowntimeSpec": { + "required": [ + "timezone", + "type" + ], + "type": "object", + "properties": { + "timezone": { + "type": "string" + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "startDateTime": { + "type": "string" + }, + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "DowntimeSpecDTO": { + "required": [ + "spec" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Onetime", + "Recurring" + ] + }, + "spec": { + "$ref": "#/components/schemas/DowntimeSpec" + } + } + }, + "EntitiesRule": { + "type": "object", + "properties": { + "affectedEntity": { + "$ref": "#/components/schemas/AffectedEntity" + }, + "type": { + "type": "string", + "enum": [ + "All", + "Identifiers" + ] + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "CvEntityDetails": { + "required": [ + "entityRef" + ], + "type": "object", + "properties": { + "entityRef": { + "type": "string" + }, + "enabled": { + "type": "boolean" + } + } + }, + "EntityIdentifiersRule": { + "required": [ + "entityIdentifiers" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/EntitiesRule" + }, + { + "type": "object", + "properties": { + "entityIdentifiers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CvEntityDetails" + } + } + } + } + ] + }, + "OnetimeDowntimeSpec": { + "required": [ + "spec", + "timezone" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/DowntimeSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/OnetimeSpec" + }, + "type": { + "type": "string", + "enum": [ + "Duration", + "EndTime" + ] + } + } + } + ] + }, + "OnetimeDurationBasedSpec": { + "required": [ + "downtimeDuration" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/OnetimeSpec" + }, + { + "type": "object", + "properties": { + "downtimeDuration": { + "$ref": "#/components/schemas/DowntimeDuration" + } + } + } + ] + }, + "OnetimeEndTimeBasedSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/OnetimeSpec" + }, + { + "type": "object", + "properties": { + "endTime": { + "type": "integer", + "format": "int64" + }, + "endDateTime": { + "type": "string" + } + } + } + ] + }, + "OnetimeSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "RecurringDowntimeSpec": { + "required": [ + "downtimeDuration", + "downtimeRecurrence", + "timezone" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/DowntimeSpec" + }, + { + "type": "object", + "properties": { + "recurrenceEndTime": { + "type": "integer", + "format": "int64" + }, + "recurrenceEndDateTime": { + "type": "string" + }, + "downtimeDuration": { + "$ref": "#/components/schemas/DowntimeDuration" + }, + "downtimeRecurrence": { + "$ref": "#/components/schemas/DowntimeRecurrence" + } + } + } + ] + }, + "RestResponseDowntimeResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/DowntimeResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "MSDropdownResponse": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "environmentRef": { + "type": "string" + } + } + }, + "PageResponseMSDropdownResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MSDropdownResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseMSDropdownResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseMSDropdownResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "DowntimeHistoryView": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "category": { + "type": "string", + "enum": [ + "ScheduledMaintenance", + "Deployment", + "Other" + ] + }, + "affectedEntities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AffectedEntity" + } + }, + "duration": { + "$ref": "#/components/schemas/DowntimeDuration" + }, + "startTime": { + "type": "integer", + "format": "int64" + }, + "startDateTime": { + "type": "string" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "endDateTime": { + "type": "string" + }, + "spec": { + "$ref": "#/components/schemas/DowntimeSpecDTO" + }, + "downtimeDetails": { + "$ref": "#/components/schemas/DowntimeSpecDTO" + } + } + }, + "PageResponseDowntimeHistoryView": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DowntimeHistoryView" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseDowntimeHistoryView": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseDowntimeHistoryView" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "DowntimeListView": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "category": { + "type": "string", + "enum": [ + "ScheduledMaintenance", + "Deployment", + "Other" + ] + }, + "affectedEntities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AffectedEntity" + } + }, + "description": { + "type": "string" + }, + "duration": { + "$ref": "#/components/schemas/DowntimeDuration" + }, + "downtimeStatusDetails": { + "$ref": "#/components/schemas/DowntimeStatusDetails" + }, + "enabled": { + "type": "boolean" + }, + "lastModified": { + "$ref": "#/components/schemas/LastModified" + }, + "spec": { + "$ref": "#/components/schemas/DowntimeSpecDTO" + }, + "pastOrActiveInstancesCount": { + "type": "integer", + "format": "int32" + } + } + }, + "DowntimeStatusDetails": { + "type": "object", + "properties": { + "status": { + "$ref": "#/components/schemas/DowntimeStatus" + }, + "start_time": { + "type": "integer", + "description": "Start time of the Downtime.", + "format": "int64" + }, + "end_time": { + "type": "integer", + "description": "End time of the Downtime.", + "format": "int64" + }, + "end_date_time": { + "type": "string", + "description": "End time of the Downtime in the format: yyyy-MM-dd hh:mm a" + } + }, + "description": "Details of Downtime with Status" + }, + "LastModified": { + "type": "object", + "properties": { + "lastModifiedBy": { + "type": "string" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + } + } + }, + "PageResponseDowntimeListView": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DowntimeListView" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseDowntimeListView": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseDowntimeListView" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RestResponseNotificationRuleResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/NotificationRuleResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "EnvironmentIdentifierResponse": { + "required": [ + "identifier" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + } + } + }, + "PageResponseEnvironmentIdentifierResponse": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnvironmentIdentifierResponse" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseEnvironmentIdentifierResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseEnvironmentIdentifierResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ResponseDTOSLORiskCountResponse": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SLORiskCountResponse" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RiskCount": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int32" + }, + "displayName": { + "type": "string" + }, + "identifier": { + "type": "string" + } + } + }, + "SLORiskCountResponse": { + "type": "object", + "properties": { + "totalCount": { + "type": "integer", + "format": "int32" + }, + "riskCounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RiskCount" + } + } + } + }, + "CalenderSLOTargetSpec": { + "required": [ + "spec" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SLOTargetSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/CalenderSpec" + }, + "type": { + "type": "string", + "enum": [ + "Weekly", + "Monthly", + "Quarterly" + ] + } + } + } + ] + }, + "CalenderSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "MonthlyCalenderSpec": { + "required": [ + "dayOfMonth" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CalenderSpec" + }, + { + "type": "object", + "properties": { + "dayOfMonth": { + "type": "integer", + "format": "int32" + } + } + } + ] + }, + "QuarterlyCalenderSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CalenderSpec" + }, + { + "type": "object", + "properties": { + "quarterStart": { + "type": "string", + "enum": [ + "Jan-Apr-Jul-Oct", + "Feb-May-Aug-Nov", + "Mar-Jun-Sep-Dec" + ] + } + } + } + ] + }, + "RollingSLOTargetSpec": { + "required": [ + "periodLength" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SLOTargetSpec" + }, + { + "type": "object", + "properties": { + "periodLength": { + "type": "string" + } + } + } + ] + }, + "SLOTargetFilterDTO": { + "required": [ + "spec" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Rolling", + "Calender" + ] + }, + "spec": { + "$ref": "#/components/schemas/SLOTargetSpec" + } + } + }, + "SLOTargetSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "WeeklyCalendarSpec": { + "required": [ + "dayOfWeek" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/CalenderSpec" + }, + { + "type": "object", + "properties": { + "dayOfWeek": { + "type": "string", + "enum": [ + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat", + "Sun" + ] + } + } + } + ] + }, + "PageResponseSLOConsumptionBreakdown": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SLOConsumptionBreakdown" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseSLOConsumptionBreakdown": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseSLOConsumptionBreakdown" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SLOConsumptionBreakdown": { + "required": [ + "errorBudgetBurned", + "projectParams", + "sliStatusPercentage", + "sloIdentifier", + "sloName", + "sloTargetPercentage", + "weightagePercentage" + ], + "type": "object", + "properties": { + "sloIdentifier": { + "type": "string" + }, + "sloName": { + "type": "string" + }, + "monitoredServiceIdentifier": { + "type": "string" + }, + "serviceName": { + "type": "string" + }, + "environmentIdentifier": { + "type": "string" + }, + "weightagePercentage": { + "type": "number", + "format": "double" + }, + "sloTargetPercentage": { + "type": "number", + "format": "double" + }, + "sliStatusPercentage": { + "type": "number", + "format": "double" + }, + "errorBudgetBurned": { + "type": "integer", + "format": "int64" + }, + "contributedErrorBudgetBurned": { + "type": "integer", + "format": "int32" + }, + "projectParams": { + "$ref": "#/components/schemas/ProjectParams" + }, + "orgName": { + "type": "string" + }, + "projectName": { + "type": "string" + }, + "sloError": { + "$ref": "#/components/schemas/SLOError" + } + } + }, + "SLOError": { + "required": [ + "failed_state" + ], + "type": "object", + "properties": { + "failed_state": { + "type": "boolean", + "description": "Failed State of the SLO. If SLO has some failures this field will be true." + }, + "error_message": { + "type": "string", + "description": "Error Message if there is an SLO failure." + }, + "slo_error_type": { + "type": "string", + "description": "Types of SLO Errors." + } + }, + "description": "SLO Error Details." + }, + "BurnRate": { + "required": [ + "currentRatePercentage" + ], + "type": "object", + "properties": { + "currentRatePercentage": { + "type": "number", + "format": "double" + } + } + }, + "Point": { + "type": "object", + "properties": { + "timestamp": { + "type": "integer", + "format": "int64" + }, + "value": { + "type": "number", + "format": "double" + }, + "enabled": { + "type": "boolean" + } + } + }, + "ResponseDTOSLODashboardDetail": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SLODashboardDetail" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SLODashboardDetail": { + "type": "object", + "properties": { + "sloDashboardWidget": { + "$ref": "#/components/schemas/SLODashboardWidget" + }, + "description": { + "type": "string" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + }, + "timeRangeFilters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TimeRangeFilter" + } + } + } + }, + "SLODashboardWidget": { + "required": [ + "burnRate", + "currentPeriodEndTime", + "currentPeriodLengthDays", + "currentPeriodStartTime", + "errorBudgetBurndown", + "errorBudgetRemaining", + "errorBudgetRemainingPercentage", + "errorBudgetRisk", + "sloIdentifier", + "sloPerformanceTrend", + "sloTargetPercentage", + "sloTargetType", + "sloType", + "timeRemainingDays", + "title", + "totalErrorBudget" + ], + "type": "object", + "properties": { + "sloIdentifier": { + "type": "string" + }, + "title": { + "type": "string" + }, + "monitoredServiceIdentifier": { + "type": "string" + }, + "monitoredServiceName": { + "type": "string" + }, + "healthSourceIdentifier": { + "type": "string" + }, + "healthSourceName": { + "type": "string" + }, + "serviceIdentifier": { + "type": "string" + }, + "serviceName": { + "type": "string" + }, + "environmentIdentifier": { + "type": "string" + }, + "environmentName": { + "type": "string" + }, + "monitoredServiceDetails": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonitoredServiceDetail" + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "evaluationType": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + }, + "sloType": { + "type": "string", + "enum": [ + "Simple", + "Composite" + ] + }, + "burnRate": { + "$ref": "#/components/schemas/BurnRate" + }, + "timeRemainingDays": { + "type": "integer", + "format": "int32" + }, + "errorBudgetRemainingPercentage": { + "type": "number", + "format": "double" + }, + "errorBudgetRemaining": { + "type": "integer", + "format": "int64" + }, + "totalErrorBudget": { + "type": "integer", + "format": "int64" + }, + "sloTargetType": { + "type": "string", + "enum": [ + "Rolling", + "Calender" + ] + }, + "currentPeriodLengthDays": { + "type": "integer", + "format": "int32" + }, + "currentPeriodStartTime": { + "type": "integer", + "format": "int64" + }, + "currentPeriodEndTime": { + "type": "integer", + "format": "int64" + }, + "sloTargetPercentage": { + "type": "number", + "format": "double" + }, + "errorBudgetBurndown": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Point" + } + }, + "sloPerformanceTrend": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Point" + } + }, + "isTotalErrorBudgetApplicable": { + "type": "boolean", + "writeOnly": true + }, + "isRecalculatingSLI": { + "type": "boolean", + "writeOnly": true + }, + "isCalculatingSLI": { + "type": "boolean", + "writeOnly": true + }, + "sloError": { + "$ref": "#/components/schemas/SLOError" + }, + "recalculatingSLI": { + "type": "boolean" + }, + "errorBudgetRisk": { + "type": "string", + "enum": [ + "EXHAUSTED", + "UNHEALTHY", + "NEED_ATTENTION", + "OBSERVE", + "HEALTHY" + ] + }, + "calculatingSLI": { + "type": "boolean" + }, + "totalErrorBudgetApplicable": { + "type": "boolean" + } + } + }, + "TimeRangeFilter": { + "type": "object", + "properties": { + "displayName": { + "type": "string" + }, + "durationMilliSeconds": { + "type": "integer", + "format": "int64" + } + } + }, + "PageResponseSLOHealthListView": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SLOHealthListView" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseSLOHealthListView": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseSLOHealthListView" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SLOHealthListView": { + "required": [ + "burn_rate", + "error_budget_remaining", + "error_budget_remaining_percentage", + "evaluation_type", + "name", + "no_of_active_alerts", + "project_params", + "slo_identifier", + "slo_target_percentage", + "slo_type", + "total_error_budget" + ], + "type": "object", + "properties": { + "slo_identifier": { + "type": "string", + "description": "Identifier of the SLO." + }, + "name": { + "type": "string", + "description": "Name of the SLO." + }, + "org_name": { + "type": "string", + "description": "Organization Name to which the SLO belongs." + }, + "project_name": { + "type": "string", + "description": "Project Name to which the SLO belongs." + }, + "monitored_service_identifier": { + "type": "string", + "description": "Identifier of the Monitored Service to which the SLO is associated." + }, + "monitored_service_name": { + "type": "string", + "description": "Name of the Monitored Service to which the SLO is associated." + }, + "service_identifier": { + "type": "string", + "description": "Identifier of the Service to which the SLO is associated." + }, + "health_source_identifier": { + "type": "string", + "description": "Identifier of the Health Source to which the SLO is associated." + }, + "health_source_name": { + "type": "string", + "description": "Identifier of the Health Source to which the SLO is associated." + }, + "service_name": { + "type": "string", + "description": "Name of the Service to which the SLO is associated." + }, + "environment_identifier": { + "type": "string", + "description": "Identifier of the Environment to which the SLO is associated." + }, + "environment_name": { + "type": "string", + "description": "Name of the Environment to which the SLO is associated." + }, + "tags": { + "type": "array", + "description": "List of tags for SLO.", + "items": { + "type": "string", + "description": "List of tags for SLO." + } + }, + "description": { + "type": "string", + "description": "Description for the SLO." + }, + "user_journey_name": { + "type": "string", + "description": "Name of the first User Journey for the SLO." + }, + "user_journeys": { + "type": "array", + "items": { + "$ref": "#/components/schemas/UserJourney" + } + }, + "burn_rate": { + "type": "number", + "description": "Burn rate per day of the SLO. The unit is \"Minutes\" if the Evaluation type is Window, for Request based it's \"Request\".", + "format": "double" + }, + "error_budget_remaining_percentage": { + "type": "number", + "description": "Error Budget Remaining Percentage of the SLO.", + "format": "double" + }, + "error_budget_remaining": { + "type": "integer", + "description": "Error Budget Remaining of the SLO. The unit is \"Minutes\" if the Evaluation type is Window, for Request based it's \"Request\".", + "format": "int32" + }, + "total_error_budget": { + "type": "integer", + "description": "Total Error Budget of the SLO. The unit is \"Minutes\" if the Evaluation type is Window, for Request based it's \"Request\".", + "format": "int32" + }, + "slo_target_type": { + "$ref": "#/components/schemas/SLOTargetType" + }, + "slo_type": { + "$ref": "#/components/schemas/ServiceLevelObjectiveType" + }, + "slo_target_percentage": { + "type": "number", + "description": "Target Percentage of the SLO defined by the user.", + "format": "double" + }, + "no_of_active_alerts": { + "type": "integer", + "description": "Number of Notification Rules defined for the SLO.", + "format": "int32" + }, + "evaluation_type": { + "$ref": "#/components/schemas/SLIEvaluationType" + }, + "downtime_status_details": { + "$ref": "#/components/schemas/DowntimeStatusDetails" + }, + "project_params": { + "$ref": "#/components/schemas/ProjectParams" + }, + "slo_error": { + "$ref": "#/components/schemas/SLOError" + }, + "error_budget_risk": { + "type": "string", + "description": "Error Budget Risk for the SLO. - It's Healthy if Error Budget Remaining Percentage >= 75. - It's Observe if Error Budget Remaining Percentage >= 50 < 75. - It's Need Attention if Error Budget Remaining Percentage >= 25 < 50. - It's Unhealthy if Error Budget Remaining Percentage >= 0 < 25. - It's Exhausted if Error Budget Remaining Percentage < 0. " + } + }, + "description": "Health List View of SLO." + }, + "UserJourneyDTO": { + "required": [ + "identifier", + "name" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + } + } + }, + "SLODashboardApiFilter": { + "type": "object", + "properties": { + "userJourneyIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "monitoredServiceIdentifier": { + "type": "string" + }, + "targetTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Rolling", + "Calender" + ] + } + }, + "errorBudgetRisks": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EXHAUSTED", + "UNHEALTHY", + "NEED_ATTENTION", + "OBSERVE", + "HEALTHY" + ] + } + }, + "searchFilter": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Simple", + "Composite" + ] + }, + "sloTargetFilterDTO": { + "$ref": "#/components/schemas/SLOTargetFilterDTO" + }, + "compositeSLOIdentifier": { + "type": "string" + }, + "evaluationType": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + }, + "evaluationTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + } + }, + "childResource": { + "type": "boolean" + }, + "envIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DataPoints": { + "required": [ + "timestamp" + ], + "type": "object", + "properties": { + "value": { + "type": "number", + "description": "Value of the data point.", + "format": "double" + }, + "timestamp": { + "type": "integer", + "description": "Timestamp of the data point.", + "format": "int64" + } + }, + "description": "Representation of one data point." + }, + "RestResponseTimeGraphResponse": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/TimeGraphResponse" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "TimeGraphResponse": { + "type": "object", + "properties": { + "startTime": { + "type": "integer", + "format": "int64" + }, + "endTime": { + "type": "integer", + "format": "int64" + }, + "dataPoints": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DataPoints" + } + } + } + }, + "CompositeServiceLevelObjectiveSpec": { + "required": [ + "serviceLevelObjectivesDetails" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceLevelObjectiveSpec" + }, + { + "type": "object", + "properties": { + "serviceLevelObjectivesDetails": { + "maxItems": 30, + "minItems": 2, + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceLevelObjectiveDetailsDTO" + } + }, + "evaluationType": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + }, + "sloFormulaType": { + "type": "string", + "enum": [ + "WeightedAverage", + "LeastPerformance" + ] + } + } + } + ] + }, + "ServiceLevelObjectiveDetailsDTO": { + "required": [ + "accountId", + "orgIdentifier", + "projectIdentifier", + "serviceLevelObjectiveRef", + "weightagePercentage" + ], + "type": "object", + "properties": { + "accountId": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "serviceLevelObjectiveRef": { + "type": "string" + }, + "weightagePercentage": { + "maximum": 100, + "minimum": 0, + "type": "number", + "format": "double" + } + } + }, + "AbstractServiceLevelObjective": { + "required": [ + "identifier", + "name", + "sloTarget", + "spec", + "type", + "userJourneyRefs" + ], + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "userJourneyRefs": { + "type": "array", + "items": { + "type": "string" + } + }, + "sloTarget": { + "$ref": "#/components/schemas/SLOTargetDTO" + }, + "type": { + "type": "string", + "enum": [ + "Simple", + "Composite" + ] + }, + "spec": { + "$ref": "#/components/schemas/ServiceLevelObjectiveSpec" + }, + "notificationRuleRefs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationRuleRefDTO" + } + }, + "errorBudgetCalculationPeriod": { + "type": "integer", + "format": "int32" + }, + "errorBudgetCalculationValidity": { + "type": "integer", + "format": "int32" + } + }, + "description": "This is the Service Level Objective V2 entity defined in Harness" + }, + "MetricLessServiceLevelIndicatorSpec": { + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceLevelIndicatorSpec" + } + ] + }, + "RatioSLIMetricSpec": { + "required": [ + "eventType", + "metric1", + "metric2", + "thresholdType", + "thresholdValue" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SLIMetricSpec" + }, + { + "type": "object", + "properties": { + "eventType": { + "type": "string", + "enum": [ + "Good", + "Bad" + ] + }, + "metric1": { + "type": "string" + }, + "metric2": { + "type": "string" + }, + "thresholdValue": { + "type": "number", + "format": "double" + }, + "thresholdType": { + "type": "string", + "enum": [ + ">", + "<", + ">=", + "<=" + ] + }, + "considerConsecutiveMinutes": { + "maximum": 30, + "type": "integer", + "format": "int32" + }, + "considerAllConsecutiveMinutesFromStartAsBad": { + "type": "boolean" + } + } + } + ] + }, + "RequestBasedServiceLevelIndicatorSpec": { + "required": [ + "eventType", + "metric1", + "metric2" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceLevelIndicatorSpec" + }, + { + "type": "object", + "properties": { + "eventType": { + "type": "string", + "enum": [ + "Good", + "Bad" + ] + }, + "metric1": { + "type": "string" + }, + "metric2": { + "type": "string" + } + } + } + ] + }, + "RestResponseServiceLevelObjectiveV2Response": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/ServiceLevelObjectiveV2Response" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "SLIMetricSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "SLOTargetDTO": { + "required": [ + "sloTargetPercentage", + "spec" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Rolling", + "Calender" + ] + }, + "sloTargetPercentage": { + "type": "number", + "format": "double" + }, + "spec": { + "$ref": "#/components/schemas/SLOTargetSpec" + } + } + }, + "ServiceLevelIndicatorDTO": { + "required": [ + "spec" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Window", + "Request", + "MetricLess" + ] + }, + "spec": { + "$ref": "#/components/schemas/ServiceLevelIndicatorSpec" + }, + "healthSourceRef": { + "type": "string" + } + } + }, + "ServiceLevelIndicatorSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "ServiceLevelObjectiveSpec": { + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "discriminator": { + "propertyName": "type" + } + }, + "ServiceLevelObjectiveV2Response": { + "required": [ + "serviceLevelObjectiveV2" + ], + "type": "object", + "properties": { + "serviceLevelObjectiveV2": { + "$ref": "#/components/schemas/AbstractServiceLevelObjective" + }, + "createdAt": { + "type": "integer", + "format": "int64" + }, + "lastModifiedAt": { + "type": "integer", + "format": "int64" + } + } + }, + "SimpleServiceLevelObjectiveSpec": { + "required": [ + "monitoredServiceRef", + "serviceLevelIndicators" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceLevelObjectiveSpec" + }, + { + "type": "object", + "properties": { + "monitoredServiceRef": { + "type": "string" + }, + "healthSourceRef": { + "type": "string" + }, + "serviceLevelIndicators": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceLevelIndicatorDTO" + } + } + } + } + ] + }, + "ThresholdSLIMetricSpec": { + "required": [ + "metric1", + "thresholdType", + "thresholdValue" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/SLIMetricSpec" + }, + { + "type": "object", + "properties": { + "metric1": { + "type": "string" + }, + "thresholdValue": { + "type": "number", + "format": "double" + }, + "thresholdType": { + "type": "string", + "enum": [ + ">", + "<", + ">=", + "<=" + ] + }, + "considerConsecutiveMinutes": { + "maximum": 30, + "type": "integer", + "format": "int32" + }, + "considerAllConsecutiveMinutesFromStartAsBad": { + "type": "boolean" + } + } + } + ] + }, + "WindowBasedServiceLevelIndicatorSpec": { + "required": [ + "spec" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/ServiceLevelIndicatorSpec" + }, + { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/SLIMetricSpec" + }, + "sliMissingDataType": { + "type": "string", + "enum": [ + "Good", + "Bad", + "Ignore" + ] + }, + "type": { + "type": "string", + "enum": [ + "Threshold", + "Ratio" + ] + } + } + } + ] + }, + "PageResponseServiceLevelObjectiveV2Response": { + "type": "object", + "properties": { + "totalPages": { + "type": "integer", + "format": "int64" + }, + "totalItems": { + "type": "integer", + "format": "int64" + }, + "pageItemCount": { + "type": "integer", + "format": "int64" + }, + "pageSize": { + "type": "integer", + "format": "int64" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceLevelObjectiveV2Response" + } + }, + "pageIndex": { + "type": "integer", + "format": "int64" + }, + "empty": { + "type": "boolean" + }, + "pageToken": { + "type": "string" + } + } + }, + "ResponseDTOPageResponseServiceLevelObjectiveV2Response": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageResponseServiceLevelObjectiveV2Response" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "RestResponseListSLOErrorBudgetReset": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SLOErrorBudgetReset" + } + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "SLOErrorBudgetReset": { + "type": "object", + "properties": { + "serviceLevelObjectiveIdentifier": { + "type": "string" + }, + "errorBudgetIncrementPercentage": { + "type": "number", + "format": "double" + }, + "errorBudgetIncrementMinutes": { + "type": "integer", + "format": "int32" + }, + "remainingErrorBudgetAtReset": { + "type": "integer", + "format": "int32" + }, + "errorBudgetAtReset": { + "type": "integer", + "format": "int32" + }, + "reason": { + "type": "string" + }, + "validUntil": { + "type": "integer", + "format": "int64" + }, + "createdAt": { + "type": "integer", + "format": "int64" + } + }, + "description": "This is the SLO Error Budget Reset entity defined in Harness" + }, + "RestResponseSLOErrorBudgetReset": { + "type": "object", + "properties": { + "metaData": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "resource": { + "$ref": "#/components/schemas/SLOErrorBudgetReset" + }, + "responseMessages": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseMessage" + } + } + } + }, + "MetricGraph": { + "required": [ + "start_time" + ], + "type": "object", + "properties": { + "start_time": { + "type": "integer", + "description": "Start time of the Graph Values.", + "format": "int64" + }, + "end_time": { + "type": "integer", + "description": "End time of the Graph Values.", + "format": "int64" + }, + "data_points": { + "type": "array", + "description": "List of the Data points between start and end times.", + "items": { + "$ref": "#/components/schemas/DataPoints" + } + }, + "metric_name": { + "type": "string", + "description": "Name of the Metric. " + }, + "metric_identifier": { + "type": "string", + "description": "Identifier of the Metric. " + } + }, + "description": "Metric Graph" + }, + "DowntimeStatus": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "description": "Enum For Downtime Statuses" + }, + "SLIEvaluationType": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "Evaluation Type of SLI" + }, + "SLOTargetType": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "Types of SLO Target Period." + }, + "ServiceLevelObjectiveType": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "description": "Types of Service Level Objectives." + }, + "UserJourney": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the User Journey." + }, + "identifier": { + "type": "string", + "description": "Identifier of the User Journey." + } + }, + "description": "User Journey Details." + }, + "ResponseDTOSRMLicenseUsageDTO": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/SRMLicenseUsageDTO" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "SRMLicenseUsageDTO": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string" + }, + "module": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + }, + "activeServices": { + "$ref": "#/components/schemas/UsageDataDTO" + } + } + }, + "ActiveMonitoredService": { + "required": [ + "identifier" + ], + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Active Service identifier." + }, + "monitoredServiceCount": { + "type": "integer", + "description": "Monitored Service Count.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Active Service name." + }, + "orgName": { + "type": "string", + "description": "Organization name." + }, + "envNames": { + "type": "array", + "description": "Environment name.", + "items": { + "type": "string", + "description": "Environment name." + } + }, + "projectName": { + "type": "string", + "description": "Project name." + }, + "accountIdentifier": { + "type": "string" + }, + "module": { + "type": "string" + }, + "timestamp": { + "type": "integer", + "format": "int64" + } + }, + "description": "This is details of the Active Service Monitored entity defined in Harness." + }, + "PageActiveMonitoredService": { + "type": "object", + "properties": { + "totalElements": { + "type": "integer", + "format": "int64" + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "pageable": { + "$ref": "#/components/schemas/Pageable" + }, + "numberOfElements": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + }, + "first": { + "type": "boolean" + }, + "size": { + "type": "integer", + "format": "int32" + }, + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ActiveMonitoredService" + } + }, + "number": { + "type": "integer", + "format": "int32" + }, + "sort": { + "$ref": "#/components/schemas/Sort" + }, + "empty": { + "type": "boolean" + } + } + }, + "ResponseDTOPageActiveMonitoredService": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ] + }, + "data": { + "$ref": "#/components/schemas/PageActiveMonitoredService" + }, + "metaData": { + "type": "object" + }, + "correlationId": { + "type": "string" + } + } + }, + "ActiveServiceMonitoredFilterParams": { + "type": "object", + "properties": { + "orgIdentifier": { + "type": "string", + "description": "Organization identifier of the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project identifier of the Entity." + }, + "serviceIdentifier": { + "type": "string", + "description": "Service identifier of the Entity." + } + }, + "description": "Active Services Monitored Filter Params" + }, + "AgentQueryAgentSortByOptions": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "HEALTH_STATUS", + "CONNECTIVITY_STATUS", + "NAMESPACE", + "VERSION" + ], + "default": "SORT_BY_NOT_SET" + }, + "ApplicationQueryApplicationSortByOptions": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "GITOPS_AGENT", + "SOURCE", + "DESTINATION" + ], + "default": "SORT_BY_NOT_SET" + }, + "ApplicationSetGeneratorGetQueryApplicationSetGeneratorType": { + "type": "string", + "enum": [ + "GENERATOR_TYPE_NOT_SET", + "LIST", + "CLUSTERS", + "GIT", + "SCM_PROVIDER_GITHUB", + "SCM_PROVIDER_GITLAB", + "SCM_PROVIDER_GITEA", + "SCM_PROVIDER_BITBUCKET", + "SCM_PROVIDER_AZURE", + "SCM_PROVIDER_BITBUCKET_CLOUD", + "SCM_PROVIDER_AWS_CODE_COMMIT", + "DUCK_TYPE", + "PULL_REQUEST_GITHUB", + "PULL_REQUEST_GITLAB", + "PULL_REQUEST_GITEA", + "PULL_REQUEST_BITBUCKET", + "PULL_REQUEST_BITBUCKET_CLOUD", + "PULL_REQUEST_AZURE", + "MATRIX", + "MERGE", + "PLUGIN" + ], + "default": "GENERATOR_TYPE_NOT_SET" + }, + "ApplicationSetGetQueryFetchMode": { + "type": "string", + "enum": [ + "NOT_SET", + "LIVE", + "CACHED" + ], + "default": "NOT_SET" + }, + "ApplicationSetQueryApplicationSetSortByOptions": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "GITOPS_AGENT", + "SOURCE", + "DESTINATION" + ], + "default": "SORT_BY_NOT_SET" + }, + "ClusterQueryClusterSortByOptions": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "GITOPS_AGENT", + "URL", + "VERSION", + "CONNECTIVITY_STATUS" + ], + "default": "SORT_BY_NOT_SET" + }, + "OCIRepoTypeResponseOCIRepoTypeEnum": { + "type": "string", + "enum": [ + "UNSET", + "AWS", + "GOOGLE", + "GITHUB", + "DOCKERHUB" + ], + "default": "UNSET" + }, + "RepoListReqRepoSortByOptions": { + "type": "string", + "enum": [ + "SORT_BY_NOT_SET", + "NAME", + "CONNECTIVITY_STATUS", + "TYPE", + "REPOSITORY" + ], + "default": "SORT_BY_NOT_SET" + }, + "applicationsApplication": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "spec": { + "$ref": "#/components/schemas/applicationsApplicationSpec" + }, + "status": { + "$ref": "#/components/schemas/applicationsApplicationStatus" + }, + "operation": { + "$ref": "#/components/schemas/applicationsOperation" + } + }, + "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" + }, + "applicationsApplicationBulkRefreshRequest": { + "type": "object", + "properties": { + "applicationTargets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsBulkOperationAppTarget" + }, + "title": "List of application targets to refresh" + }, + "refresh": { + "type": "string", + "title": "forces application reconciliation if set to hard" + } + }, + "title": "ApplicationBulkRefreshRequest for bulk refreshing multiple applications" + }, + "applicationsApplicationBulkRefreshResponse": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationRefreshResponse" + } + } + } + }, + "applicationsApplicationBulkSyncRequest": { + "type": "object", + "properties": { + "applicationTargets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsBulkOperationAppTarget" + }, + "title": "List of application targets to sync" + }, + "dryRun": { + "type": "boolean", + "title": "Common sync settings for all applications" + }, + "prune": { + "type": "boolean" + }, + "strategy": { + "$ref": "#/components/schemas/applicationsSyncStrategy" + }, + "retryStrategy": { + "$ref": "#/components/schemas/applicationsRetryStrategy" + }, + "syncOptions": { + "$ref": "#/components/schemas/applicationsSyncOptions" + }, + "syncTrackingIds": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "a map of applicationName to syncTrackingId for tracking syncs" + } + }, + "title": "ApplicationBulkSyncRequest for bulk synchronization of multiple applications" + }, + "applicationsApplicationBulkSyncResponse": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSyncResponse" + } + } + } + }, + "applicationsApplicationCondition": { + "type": "object", + "properties": { + "type": { + "type": "string", + "title": "Type is an application condition type" + }, + "message": { + "type": "string", + "title": "Message contains human-readable message indicating details about condition" + }, + "lastTransitionTime": { + "$ref": "#/components/schemas/v1Time" + }, + "lastTransitionTimeTs": { + "type": "string", + "format": "date-time", + "title": "LastTransitionTimeTs is the google timestamp variation of LastTransitionTime" + } + }, + "title": "ApplicationCondition contains details about an application condition, which is usally an error or warning" + }, + "applicationsApplicationCreateRequest": { + "type": "object", + "properties": { + "application": { + "$ref": "#/components/schemas/applicationsApplication" + }, + "upsert": { + "type": "boolean" + }, + "validate": { + "type": "boolean" + }, + "project": { + "type": "string" + }, + "isPLG": { + "type": "boolean" + } + } + }, + "applicationsApplicationDeleteRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "cascade": { + "type": "boolean" + }, + "propagationPolicy": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationDestination": { + "type": "object", + "properties": { + "server": { + "type": "string", + "title": "Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API" + }, + "namespace": { + "type": "string", + "title": "Namespace specifies the target namespace for the application's resources.\nThe namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace" + }, + "name": { + "type": "string", + "title": "Name is an alternate way of specifying the target cluster by its symbolic name" + } + }, + "title": "ApplicationDestination holds information about the application's destination" + }, + "applicationsApplicationList": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ListMeta" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplication" + } + } + }, + "title": "ApplicationList is list of Application resources\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object" + }, + "applicationsApplicationManifestQuery": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "revision": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + }, + "sourcePositions": { + "type": "array", + "items": { + "type": "string", + "format": "int64" + } + }, + "revisions": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "title": "ManifestQuery is a query for manifest resources" + }, + "applicationsApplicationMatchExpression": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "operator": { + "type": "string" + }, + "values": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "applicationsApplicationPatchRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "patch": { + "type": "string" + }, + "patchType": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + }, + "title": "ApplicationPatchRequest is a request to patch an application" + }, + "applicationsApplicationPodLogsQuery": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "podName": { + "type": "string" + }, + "container": { + "type": "string" + }, + "sinceSeconds": { + "type": "string", + "format": "int64" + }, + "sinceTime": { + "$ref": "#/components/schemas/v1Time" + }, + "tailLines": { + "type": "string", + "format": "int64" + }, + "follow": { + "type": "boolean" + }, + "untilTime": { + "type": "string" + }, + "filter": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "group": { + "type": "string" + }, + "resourceName": { + "type": "string" + }, + "previous": { + "type": "boolean" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationPreservedFields": { + "type": "object", + "properties": { + "annotations": { + "type": "array", + "items": { + "type": "string" + } + }, + "labels": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "applicationsApplicationQuery": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "the application's name" + }, + "refresh": { + "type": "string", + "description": "set to \"normal\" OR \"hard\" if an application refresh is required before fetching.\n\nnormal refresh only if source has changed(commit, helm chart version, etc.)\n\nhard refresh will invalidate all generated manifest caches and force regeneration." + }, + "project": { + "type": "array", + "items": { + "type": "string" + }, + "title": "the project names to restrict returned list applications" + }, + "resourceVersion": { + "type": "string", + "description": "when specified with a watch call, shows changes that occur after that particular version of a resource." + }, + "selector": { + "type": "string", + "title": "the selector to to restrict returned list to applications only with matched labels" + }, + "repo": { + "type": "string", + "title": "the repoURL to restrict returned list applications" + }, + "appNamespace": { + "type": "string" + } + }, + "title": "ApplicationQuery is a query for application resources" + }, + "applicationsApplicationRefreshResponse": { + "type": "object", + "properties": { + "applicationName": { + "type": "string" + }, + "agentIdentifier": { + "type": "string" + }, + "success": { + "type": "boolean" + }, + "error": { + "type": "string" + }, + "applicationResponse": { + "$ref": "#/components/schemas/applicationsApplication" + } + } + }, + "applicationsApplicationResourceDeleteRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "resourceName": { + "type": "string" + }, + "version": { + "type": "string" + }, + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "force": { + "type": "boolean" + }, + "orphan": { + "type": "boolean" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationResourceEventsQuery": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "resourceNamespace": { + "type": "string" + }, + "resourceName": { + "type": "string" + }, + "resourceUID": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + }, + "title": "ApplicationEventsQuery is a query for application resource events" + }, + "applicationsApplicationResourcePatchRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "resourceName": { + "type": "string" + }, + "version": { + "type": "string" + }, + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "patch": { + "type": "string" + }, + "patchType": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationResourceRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "resourceName": { + "type": "string" + }, + "version": { + "type": "string" + }, + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationResourceResponse": { + "type": "object", + "properties": { + "manifest": { + "type": "string" + } + } + }, + "applicationsApplicationResponse": { + "type": "object" + }, + "applicationsApplicationRollbackRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "id": { + "type": "string", + "format": "int64" + }, + "dryRun": { + "type": "boolean" + }, + "prune": { + "type": "boolean" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationSet": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "spec": { + "$ref": "#/components/schemas/applicationsApplicationSetSpec" + }, + "status": { + "$ref": "#/components/schemas/applicationsApplicationSetStatus" + } + } + }, + "applicationsApplicationSetApplicationStatus": { + "type": "object", + "properties": { + "application": { + "type": "string", + "title": "Application contains the name of the Application resource" + }, + "lastTransitionTime": { + "$ref": "#/components/schemas/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": { + "type": "array", + "items": { + "type": "string" + }, + "description": "TargetRevision tracks the desired revisions the Application should be synced to." + } + }, + "title": "ApplicationSetApplicationStatus contains details about each Application managed by the ApplicationSet" + }, + "applicationsApplicationSetCondition": { + "type": "object", + "properties": { + "type": { + "type": "string", + "title": "Type is an applicationset condition type" + }, + "message": { + "type": "string", + "title": "Message contains human-readable message indicating details about condition" + }, + "lastTransitionTime": { + "$ref": "#/components/schemas/v1Time" + }, + "status": { + "type": "string", + "title": "True/False/Unknown" + }, + "reason": { + "type": "string", + "title": "Single word camelcase representing the reason for the status eg ErrorOccurred" + } + }, + "title": "ApplicationSetCondition contains details about an applicationset condition, which is usually an error or warning" + }, + "applicationsApplicationSetCreateRequest": { + "type": "object", + "properties": { + "applicationset": { + "$ref": "#/components/schemas/applicationsApplicationSet" + }, + "upsert": { + "type": "boolean" + }, + "dryRun": { + "type": "boolean" + }, + "yaml": { + "type": "string", + "format": "byte" + } + } + }, + "applicationsApplicationSetGenerateRequest": { + "type": "object", + "properties": { + "applicationset": { + "$ref": "#/components/schemas/applicationsApplicationSet" + }, + "yaml": { + "type": "string", + "format": "byte", + "title": "helper field for keeping string representation of marshalled ApplicationSetq" + } + }, + "title": "ApplicationSetGenerateRequest is a query for applicationset generate resources" + }, + "applicationsApplicationSetGenerateResponse": { + "type": "object", + "properties": { + "applications": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplication" + } + } + }, + "title": "ApplicationSetGenerateResponse is a response for applicationset generate request" + }, + "applicationsApplicationSetGenerator": { + "type": "object", + "properties": { + "list": { + "$ref": "#/components/schemas/applicationsListGenerator" + }, + "clusters": { + "$ref": "#/components/schemas/applicationsClusterGenerator" + }, + "git": { + "$ref": "#/components/schemas/applicationsGitGenerator" + }, + "scmProvider": { + "$ref": "#/components/schemas/applicationsSCMProviderGenerator" + }, + "clusterDecisionResource": { + "$ref": "#/components/schemas/applicationsDuckTypeGenerator" + }, + "pullRequest": { + "$ref": "#/components/schemas/applicationsPullRequestGenerator" + }, + "matrix": { + "$ref": "#/components/schemas/applicationsMatrixGenerator" + }, + "merge": { + "$ref": "#/components/schemas/applicationsMergeGenerator" + }, + "selector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "plugin": { + "$ref": "#/components/schemas/applicationsPluginGenerator" + } + }, + "description": "ApplicationSetGenerator represents a generator at the top level of an ApplicationSet." + }, + "applicationsApplicationSetNestedGenerator": { + "type": "object", + "properties": { + "list": { + "$ref": "#/components/schemas/applicationsListGenerator" + }, + "clusters": { + "$ref": "#/components/schemas/applicationsClusterGenerator" + }, + "git": { + "$ref": "#/components/schemas/applicationsGitGenerator" + }, + "scmProvider": { + "$ref": "#/components/schemas/applicationsSCMProviderGenerator" + }, + "clusterDecisionResource": { + "$ref": "#/components/schemas/applicationsDuckTypeGenerator" + }, + "pullRequest": { + "$ref": "#/components/schemas/applicationsPullRequestGenerator" + }, + "matrix": { + "$ref": "#/components/schemas/v1JSON" + }, + "merge": { + "$ref": "#/components/schemas/v1JSON" + }, + "selector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "plugin": { + "$ref": "#/components/schemas/applicationsPluginGenerator" + } + }, + "description": "ApplicationSetNestedGenerator represents a generator nested within a combination-type generator (MatrixGenerator or\nMergeGenerator)." + }, + "applicationsApplicationSetResourceIgnoreDifferences": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name is the name of the application to ignore differences for. If not specified, the rule applies to all applications." + }, + "jsonPointers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "JSONPointers is a list of JSON pointers to fields to ignore differences for." + }, + "jqPathExpressions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "JQPathExpressions is a list of JQ path expressions to fields to ignore differences for." + } + }, + "description": "ApplicationSetResourceIgnoreDifferences configures how the ApplicationSet controller will ignore differences in live\napplications when applying changes from generated applications." + }, + "applicationsApplicationSetResponse": { + "type": "object", + "properties": { + "project": { + "type": "string" + }, + "applicationset": { + "$ref": "#/components/schemas/applicationsApplicationSet" + } + } + }, + "applicationsApplicationSetRolloutStep": { + "type": "object", + "properties": { + "matchExpressions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationMatchExpression" + } + }, + "maxUpdate": { + "$ref": "#/components/schemas/intstrIntOrString" + } + } + }, + "applicationsApplicationSetRolloutStrategy": { + "type": "object", + "properties": { + "steps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetRolloutStep" + } + } + } + }, + "applicationsApplicationSetSpec": { + "type": "object", + "properties": { + "goTemplate": { + "type": "boolean" + }, + "generators": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetGenerator" + } + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "syncPolicy": { + "$ref": "#/components/schemas/applicationsApplicationSetSyncPolicy" + }, + "strategy": { + "$ref": "#/components/schemas/applicationsApplicationSetStrategy" + }, + "preservedFields": { + "$ref": "#/components/schemas/applicationsApplicationPreservedFields" + }, + "goTemplateOptions": { + "type": "array", + "items": { + "type": "string" + } + }, + "applyNestedSelectors": { + "type": "boolean", + "title": "ApplyNestedSelectors enables selectors defined within the generators of two level-nested matrix or merge generators" + }, + "ignoreApplicationDifferences": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetResourceIgnoreDifferences" + } + }, + "templatePatch": { + "type": "string" + } + }, + "description": "ApplicationSetSpec represents a class of application set state." + }, + "applicationsApplicationSetStatus": { + "type": "object", + "properties": { + "conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetCondition" + }, + "title": "INSERT ADDITIONAL STATUS FIELD - define observed state of cluster\nImportant: Run \"make\" to regenerate code after modifying this file" + }, + "applicationStatus": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetApplicationStatus" + } + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceStatus" + }, + "description": "Resources is a list of Applications resources managed by this application set." + } + }, + "title": "ApplicationSetStatus defines the observed state of ApplicationSet" + }, + "applicationsApplicationSetStrategy": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "rollingSync": { + "$ref": "#/components/schemas/applicationsApplicationSetRolloutStrategy" + } + }, + "description": "ApplicationSetStrategy configures how generated Applications are updated in sequence." + }, + "applicationsApplicationSetSyncPolicy": { + "type": "object", + "properties": { + "preserveResourcesOnDeletion": { + "type": "boolean", + "description": "PreserveResourcesOnDeletion will preserve resources on deletion. If PreserveResourcesOnDeletion is set to true, these Applications will not be deleted." + }, + "applicationsSync": { + "type": "string", + "title": "ApplicationsSync represents the policy applied on the generated applications. Possible values are create-only, create-update, create-delete, sync\n+kubebuilder:validation:Optional\n+kubebuilder:validation:Enum=create-only;create-update;create-delete;sync" + } + }, + "description": "ApplicationSetSyncPolicy configures how generated Applications will relate to their\nApplicationSet." + }, + "applicationsApplicationSetTemplate": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplateMeta" + }, + "spec": { + "$ref": "#/components/schemas/applicationsApplicationSpec" + } + }, + "title": "ApplicationSetTemplate represents argocd ApplicationSpec" + }, + "applicationsApplicationSetTemplateMeta": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "annotations": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "finalizers": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "title": "ApplicationSetTemplateMeta represents the Argo CD application fields that may\nbe used for Applications generated from the ApplicationSet (based on metav1.ObjectMeta)" + }, + "applicationsApplicationSetTree": { + "type": "object", + "properties": { + "nodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceNode" + }, + "title": "Nodes contains list of nodes which are directly managed by the applicationset" + } + }, + "title": "ApplicationSetTree holds nodes which belongs to the application\nUsed to build a tree of an ApplicationSet and its children" + }, + "applicationsApplicationSetTreeQuery": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "appsetNamespace": { + "type": "string", + "title": "The application set namespace. Default empty is argocd control plane namespace" + } + } + }, + "applicationsApplicationSource": { + "type": "object", + "properties": { + "repoURL": { + "type": "string", + "title": "RepoURL is the URL to the repository (Git or Helm) that contains the application manifests" + }, + "path": { + "type": "string", + "description": "Path is a directory path within the Git repository, and is only valid for applications sourced from Git." + }, + "targetRevision": { + "type": "string", + "description": "TargetRevision defines the revision of the source to sync the application to.\nIn case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD.\nIn case of Helm, this is a semver tag for the Chart's version." + }, + "helm": { + "$ref": "#/components/schemas/applicationsApplicationSourceHelm" + }, + "kustomize": { + "$ref": "#/components/schemas/applicationsApplicationSourceKustomize" + }, + "ksonnet": { + "$ref": "#/components/schemas/applicationsApplicationSourceKsonnet" + }, + "directory": { + "$ref": "#/components/schemas/applicationsApplicationSourceDirectory" + }, + "plugin": { + "$ref": "#/components/schemas/applicationsApplicationSourcePlugin" + }, + "chart": { + "type": "string", + "description": "Chart is a Helm chart name, and must be specified for applications sourced from a Helm repo." + }, + "ref": { + "type": "string", + "description": "Ref is reference to another source within sources field. This field will not be used if used with a `source` tag." + }, + "name": { + "type": "string", + "description": "Name is used to refer to a source and is displayed in the UI. It is used in multi-source Applications." + } + }, + "title": "ApplicationSource contains all information about the source of an application" + }, + "applicationsApplicationSourceDirectory": { + "type": "object", + "properties": { + "recurse": { + "type": "boolean", + "title": "Recurse specifies whether to scan a directory recursively for manifests" + }, + "jsonnet": { + "$ref": "#/components/schemas/applicationsApplicationSourceJsonnet" + }, + "exclude": { + "type": "string", + "title": "Exclude contains a glob pattern to match paths against that should be explicitly excluded from being used during manifest generation" + }, + "include": { + "type": "string", + "title": "Include contains a glob pattern to match paths against that should be explicitly included during manifest generation" + } + }, + "title": "ApplicationSourceDirectory holds options for applications of type plain YAML or Jsonnet" + }, + "applicationsApplicationSourceHelm": { + "type": "object", + "properties": { + "valueFiles": { + "type": "array", + "items": { + "type": "string" + }, + "title": "ValuesFiles is a list of Helm value files to use when generating a template" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsHelmParameter" + }, + "title": "Parameters is a list of Helm parameters which are passed to the helm template command upon manifest generation" + }, + "releaseName": { + "type": "string", + "title": "ReleaseName is the Helm release name to use. If omitted it will use the application name" + }, + "values": { + "type": "string", + "title": "Values specifies Helm values to be passed to helm template, typically defined as a block" + }, + "fileParameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsHelmFileParameter" + }, + "title": "FileParameters are file parameters to the helm template" + }, + "version": { + "type": "string", + "title": "Version is the Helm version to use for templating (either \"2\" or \"3\")" + }, + "passCredentials": { + "type": "boolean", + "title": "PassCredentials pass credentials to all domains (Helm's --pass-credentials)" + }, + "ignoreMissingValueFiles": { + "type": "boolean", + "title": "IgnoreMissingValueFiles prevents helm template from failing when valueFiles do not exist locally by not appending them to helm template --values" + }, + "skipCrds": { + "type": "boolean", + "title": "SkipCrds skips custom resource definition installation step (Helm's --skip-crds)" + }, + "valuesObject": { + "type": "object", + "title": "ValuesObject specifies Helm values to be passed to helm template, defined as a map. This takes precedence over Values.\n+kubebuilder:pruning:PreserveUnknownFields" + }, + "namespace": { + "type": "string", + "description": "Namespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace." + }, + "kubeVersion": { + "type": "string", + "description": "KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD\nuses the Kubernetes version of the target cluster." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default,\nArgo CD uses the API versions of the target cluster. The format is [group/]version/kind." + }, + "skipTests": { + "type": "boolean", + "description": "SkipTests skips test manifest installation step (Helm's --skip-tests)." + }, + "skipSchemaValidation": { + "type": "boolean", + "title": "SkipSchemaValidation skips JSON schema validation (Helm's --skip-schema-validation)" + } + }, + "title": "ApplicationSourceHelm holds helm specific options" + }, + "applicationsApplicationSourceJsonnet": { + "type": "object", + "properties": { + "extVars": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsJsonnetVar" + }, + "title": "ExtVars is a list of Jsonnet External Variables" + }, + "tlas": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsJsonnetVar" + }, + "title": "TLAS is a list of Jsonnet Top-level Arguments" + }, + "libs": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Additional library search dirs" + } + }, + "title": "ApplicationSourceJsonnet holds options specific to applications of type Jsonnet" + }, + "applicationsApplicationSourceKsonnet": { + "type": "object", + "properties": { + "environment": { + "type": "string", + "title": "Environment is a ksonnet application environment name" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsKsonnetParameter" + }, + "title": "Parameters are a list of ksonnet component parameter override values" + } + }, + "title": "ApplicationSourceKsonnet holds ksonnet specific options" + }, + "applicationsApplicationSourceKustomize": { + "type": "object", + "properties": { + "namePrefix": { + "type": "string", + "title": "NamePrefix is a prefix appended to resources for Kustomize apps" + }, + "nameSuffix": { + "type": "string", + "title": "NameSuffix is a suffix appended to resources for Kustomize apps" + }, + "images": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Images is a list of Kustomize image override specifications" + }, + "commonLabels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "CommonLabels is a list of additional labels to add to rendered manifests" + }, + "version": { + "type": "string", + "title": "Version controls which version of Kustomize to use for rendering manifests" + }, + "commonAnnotations": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "CommonAnnotations is a list of additional annotations to add to rendered manifests" + }, + "forceCommonLabels": { + "type": "boolean", + "title": "ForceCommonLabels specifies whether to force applying common labels to resources for Kustomize apps" + }, + "forceCommonAnnotations": { + "type": "boolean", + "title": "ForceCommonAnnotations specifies whether to force applying common annotations to resources for Kustomize apps" + }, + "namespace": { + "type": "string", + "title": "Namespace sets the namespace that Kustomize adds to all resources" + }, + "replicas": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsKustomizeReplicas" + }, + "title": "Replicas is a list of Kustomize Replicas override specifications" + }, + "patches": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsKustomizePatch" + }, + "title": "Patches is a list of Kustomize patches" + }, + "components": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Components specifies a list of kustomize components to add to the kustomization before building" + }, + "labelWithoutSelector": { + "type": "boolean", + "title": "LabelWithoutSelector specifies whether to apply common labels to resource selectors or not" + }, + "kubeVersion": { + "type": "string", + "description": "KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD\nuses the Kubernetes version of the target cluster." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default,\nArgo CD uses the API versions of the target cluster. The format is [group/]version/kind." + } + }, + "title": "ApplicationSourceKustomize holds options specific to an Application source specific to Kustomize" + }, + "applicationsApplicationSourcePlugin": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "env": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsEnvEntry" + } + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSourcePluginParameter" + } + } + }, + "title": "ApplicationSourcePlugin holds options specific to config management plugins" + }, + "applicationsApplicationSourcePluginParameter": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name is the name identifying a parameter." + }, + "string": { + "type": "string", + "description": "String_ is the value of a string type parameter." + }, + "map": { + "$ref": "#/components/schemas/applicationsOptionalMap" + }, + "array": { + "$ref": "#/components/schemas/applicationsOptionalArray" + } + } + }, + "applicationsApplicationSpec": { + "type": "object", + "properties": { + "source": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "destination": { + "$ref": "#/components/schemas/applicationsApplicationDestination" + }, + "project": { + "type": "string", + "description": "Project is a reference to the project this application belongs to.\nThe empty string means that application belongs to the 'default' project." + }, + "syncPolicy": { + "$ref": "#/components/schemas/applicationsSyncPolicy" + }, + "ignoreDifferences": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceIgnoreDifferences" + }, + "title": "IgnoreDifferences is a list of resources and their fields which should be ignored during comparison" + }, + "info": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsInfo" + }, + "title": "Info contains a list of information (URLs, email addresses, and plain text) that relates to the application" + }, + "revisionHistoryLimit": { + "type": "string", + "format": "int64", + "description": "RevisionHistoryLimit limits the number of items kept in the application's revision history, which is used for informational purposes as well as for rollbacks to previous versions.\nThis should only be changed in exceptional circumstances.\nSetting to zero will store no history. This will reduce storage used.\nIncreasing will increase the space used to store the history, so we do not recommend increasing it.\nDefault is 10." + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "title": "Sources is a reference to the location of the application's manifests or chart" + } + }, + "description": "ApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision." + }, + "applicationsApplicationStatus": { + "type": "object", + "properties": { + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceStatus" + }, + "title": "Resources is a list of Kubernetes resources managed by this application" + }, + "sync": { + "$ref": "#/components/schemas/applicationsSyncStatus" + }, + "health": { + "$ref": "#/components/schemas/applicationsHealthStatus" + }, + "history": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsRevisionHistory" + }, + "title": "History contains information about the application's sync history" + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationCondition" + }, + "title": "Conditions is a list of currently observed application conditions" + }, + "reconciledAt": { + "$ref": "#/components/schemas/v1Time" + }, + "operationState": { + "$ref": "#/components/schemas/applicationsOperationState" + }, + "observedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "sourceType": { + "type": "string", + "title": "SourceType specifies the type of this application" + }, + "summary": { + "$ref": "#/components/schemas/applicationsApplicationSummary" + }, + "resourceHealthSource": { + "type": "string", + "title": "ResourceHealthSource indicates where the resource health status is stored: inline if not set or appTree" + }, + "sourceTypes": { + "type": "array", + "items": { + "type": "string" + }, + "title": "SourceTypes specifies the type of the sources included in the application" + }, + "controllerNamespace": { + "type": "string", + "title": "ControllerNamespace indicates the namespace in which the application controller is located" + } + }, + "title": "ApplicationStatus contains status information for the application" + }, + "applicationsApplicationSummary": { + "type": "object", + "properties": { + "externalURLs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "ExternalURLs holds all external URLs of application child resources." + }, + "images": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Images holds all images of application child resources." + } + }, + "title": "ApplicationSummary contains information about URLs and container images used by an application" + }, + "applicationsApplicationSyncRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "revision": { + "type": "string" + }, + "dryRun": { + "type": "boolean" + }, + "prune": { + "type": "boolean" + }, + "strategy": { + "$ref": "#/components/schemas/applicationsSyncStrategy" + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsSyncOperationResource" + } + }, + "manifests": { + "type": "array", + "items": { + "type": "string" + } + }, + "infos": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsInfo" + } + }, + "retryStrategy": { + "$ref": "#/components/schemas/applicationsRetryStrategy" + }, + "syncOptions": { + "$ref": "#/components/schemas/applicationsSyncOptions" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + }, + "sourcePositions": { + "type": "array", + "items": { + "type": "string", + "format": "int64" + } + }, + "revisions": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "title": "ApplicationSyncRequest is a request to apply the config state to live state" + }, + "applicationsApplicationSyncResponse": { + "type": "object", + "properties": { + "applicationName": { + "type": "string" + }, + "agentIdentifier": { + "type": "string" + }, + "success": { + "type": "boolean" + }, + "error": { + "type": "string" + }, + "applicationResponse": { + "$ref": "#/components/schemas/applicationsApplication" + } + } + }, + "applicationsApplicationSyncWindow": { + "type": "object", + "properties": { + "kind": { + "type": "string" + }, + "schedule": { + "type": "string" + }, + "duration": { + "type": "string" + }, + "manualSync": { + "type": "boolean" + } + } + }, + "applicationsApplicationSyncWindowsQuery": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationSyncWindowsResponse": { + "type": "object", + "properties": { + "activeWindows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSyncWindow" + } + }, + "assignedWindows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSyncWindow" + } + }, + "canSync": { + "type": "boolean" + } + } + }, + "applicationsApplicationTree": { + "type": "object", + "properties": { + "nodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceNode" + }, + "description": "Nodes contains list of nodes which either directly managed by the application and children of directly managed nodes." + }, + "orphanedNodes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceNode" + }, + "description": "OrphanedNodes contains if or orphaned nodes: nodes which are not managed by the app but in the same namespace. List is populated only if orphaned resources enabled in app project." + }, + "hosts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsHostInfo" + }, + "title": "Hosts holds list of Kubernetes nodes that run application related pods" + } + }, + "title": "ApplicationTree holds nodes which belongs to the application\nTODO: describe purpose of this type" + }, + "applicationsApplicationUpdateRequest": { + "type": "object", + "properties": { + "application": { + "$ref": "#/components/schemas/applicationsApplication" + }, + "validate": { + "type": "boolean" + }, + "project": { + "type": "string" + } + } + }, + "applicationsApplicationUpdateSpecRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "spec": { + "$ref": "#/components/schemas/applicationsApplicationSpec" + }, + "validate": { + "type": "boolean" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + }, + "title": "ApplicationUpdateSpecRequest is a request to update application spec" + }, + "applicationsApplicationWatchEvent": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "application": { + "$ref": "#/components/schemas/applicationsApplication" + } + }, + "description": "ApplicationWatchEvent contains information about application change." + }, + "applicationsBackoff": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "title": "Duration is the amount to back off. Default unit is seconds, but could also be a duration (e.g. \"2m\", \"1h\")" + }, + "factor": { + "type": "string", + "format": "int64", + "title": "Factor is a factor to multiply the base duration after each failed retry" + }, + "maxDuration": { + "type": "string", + "title": "MaxDuration is the maximum amount of time allowed for the backoff strategy" + } + }, + "title": "Backoff is the backoff strategy to use on subsequent retries for failing syncs" + }, + "applicationsBasicAuthBitbucketServer": { + "type": "object", + "properties": { + "username": { + "type": "string", + "title": "Username for Basic auth" + }, + "passwordRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + } + }, + "description": "BasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth." + }, + "applicationsBearerTokenBitbucket": { + "type": "object", + "properties": { + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + } + }, + "description": "BearerTokenBitbucket defines the Bearer token for BitBucket AppToken auth." + }, + "applicationsBearerTokenBitbucketCloud": { + "type": "object", + "properties": { + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + } + }, + "description": "BearerTokenBitbucketCloud defines the Bearer token for BitBucket AppToken auth." + }, + "applicationsBulkOperationAppTarget": { + "type": "object", + "properties": { + "applicationName": { + "type": "string" + }, + "agentIdentifier": { + "type": "string" + } + }, + "title": "BulkOperationAppTarget uniquely identifies an application by name and agent in a project" + }, + "applicationsClusterGenerator": { + "type": "object", + "properties": { + "selector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Values contains key/value pairs which are passed directly as parameters to the template" + }, + "flatList": { + "type": "boolean", + "title": "returns the clusters a single 'clusters' value in the template" + } + }, + "description": "ClusterGenerator defines a generator to match against clusters registered with ArgoCD." + }, + "applicationsComparedTo": { + "type": "object", + "properties": { + "source": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "destination": { + "$ref": "#/components/schemas/applicationsApplicationDestination" + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "title": "Sources is a reference to the application's multiple sources used for comparison" + }, + "ignoreDifferences": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceIgnoreDifferences" + }, + "title": "IgnoreDifferences is a reference to the application's ignored differences used for comparison" + } + }, + "title": "ComparedTo contains application source and target which was used for resources comparison" + }, + "applicationsConfigMapKeyRef": { + "type": "object", + "properties": { + "configMapName": { + "type": "string" + }, + "key": { + "type": "string" + } + }, + "description": "Utility struct for a reference to a configmap key." + }, + "applicationsDuckTypeGenerator": { + "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" + }, + "name": { + "type": "string" + }, + "requeueAfterSeconds": { + "type": "string", + "format": "int64" + }, + "labelSelector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Values contains key/value pairs which are passed directly as parameters to the template" + } + }, + "description": "DuckType defines a generator to match against clusters registered with ArgoCD." + }, + "applicationsEnvEntry": { + "type": "object", + "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" + } + }, + "title": "EnvEntry represents an entry in the application's environment" + }, + "applicationsEvent": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "involvedObject": { + "$ref": "#/components/schemas/applicationsObjectReference" + }, + "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+" + }, + "message": { + "type": "string", + "title": "A human-readable description of the status of this operation.\nTODO: decide on maximum length.\n+" + }, + "source": { + "$ref": "#/components/schemas/applicationsEventSource" + }, + "firstTimestamp": { + "$ref": "#/components/schemas/v1Time" + }, + "lastTimestamp": { + "$ref": "#/components/schemas/v1Time" + }, + "count": { + "type": "integer", + "format": "int32", + "title": "The number of times this event has occurred.\n+" + }, + "type": { + "type": "string", + "title": "Type of this event (Normal, Warning), new types could be added in the future\n+" + }, + "eventTime": { + "$ref": "#/components/schemas/v1MicroTime" + }, + "series": { + "$ref": "#/components/schemas/applicationsEventSeries" + }, + "action": { + "type": "string", + "title": "What action was taken/failed regarding to the Regarding object.\n+" + }, + "related": { + "$ref": "#/components/schemas/applicationsObjectReference" + }, + "reportingComponent": { + "type": "string", + "title": "Name of the controller that emitted this Event, e.g. `kubernetes.io/kubelet`.\n+" + }, + "reportingInstance": { + "type": "string", + "title": "ID of the controller instance, e.g. `kubelet-xyzf`.\n+" + }, + "firstTimestampTs": { + "type": "string", + "format": "date-time" + }, + "lastTimestampTs": { + "type": "string", + "format": "date-time" + } + } + }, + "applicationsEventList": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ListMeta" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsEvent" + }, + "title": "List of events" + } + }, + "description": "EventList is a list of events." + }, + "applicationsEventSeries": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "format": "int32", + "title": "Number of occurrences in this series up to the last heartbeat time" + }, + "lastObservedTime": { + "$ref": "#/components/schemas/v1MicroTime" + } + }, + "description": "EventSeries contain information on series of events, i.e. thing that was/is happening\ncontinuously for some time." + }, + "applicationsEventSource": { + "type": "object", + "properties": { + "component": { + "type": "string", + "title": "Component from which the event is generated.\n+" + }, + "host": { + "type": "string", + "title": "Node name on which the event is generated.\n+" + } + } + }, + "applicationsGitDirectoryGeneratorItem": { + "type": "object", + "properties": { + "path": { + "type": "string" + }, + "exclude": { + "type": "boolean" + } + } + }, + "applicationsGitFileGeneratorItem": { + "type": "object", + "properties": { + "path": { + "type": "string" + } + } + }, + "applicationsGitGenerator": { + "type": "object", + "properties": { + "repoURL": { + "type": "string" + }, + "directories": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsGitDirectoryGeneratorItem" + } + }, + "files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsGitFileGeneratorItem" + } + }, + "revision": { + "type": "string" + }, + "requeueAfterSeconds": { + "type": "string", + "format": "int64" + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "pathParamPrefix": { + "type": "string" + }, + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Values contains key/value pairs which are passed directly as parameters to the template" + } + } + }, + "applicationsHealthStatus": { + "type": "object", + "properties": { + "status": { + "type": "string", + "title": "Status holds the status code of the application or resource" + }, + "message": { + "type": "string", + "title": "Message is a human-readable informational message describing the health status" + }, + "lastTransitionTime": { + "$ref": "#/components/schemas/v1Time" + } + }, + "title": "HealthStatus contains information about the currently observed health state of an application or resource" + }, + "applicationsHelmFileParameter": { + "type": "object", + "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" + } + }, + "title": "HelmFileParameter is a file parameter that's passed to helm template during manifest generation" + }, + "applicationsHelmParameter": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name is the name of the Helm parameter" + }, + "value": { + "type": "string", + "title": "Value is the value for the Helm parameter" + }, + "forceString": { + "type": "boolean", + "title": "ForceString determines whether to tell Helm to interpret booleans and numbers as strings" + } + }, + "title": "HelmParameter is a parameter that's passed to helm template during manifest generation" + }, + "applicationsHostInfo": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "resourcesInfo": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsHostResourceInfo" + } + }, + "systemInfo": { + "$ref": "#/components/schemas/v1NodeSystemInfo" + } + }, + "title": "HostInfo holds host name and resources metrics\nTODO: describe purpose of this type\nTODO: describe members of this type" + }, + "applicationsHostResourceInfo": { + "type": "object", + "properties": { + "resourceName": { + "type": "string" + }, + "requestedByApp": { + "type": "string", + "format": "int64" + }, + "requestedByNeighbors": { + "type": "string", + "format": "int64" + }, + "capacity": { + "type": "string", + "format": "int64" + } + }, + "title": "TODO: describe this type" + }, + "applicationsInfo": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "applicationsInfoItem": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name is a human readable title for this piece of information." + }, + "value": { + "type": "string", + "description": "Value is human readable content." + } + }, + "title": "InfoItem contains arbitrary, human readable information about an application" + }, + "applicationsJsonnetVar": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + }, + "code": { + "type": "boolean" + } + }, + "title": "JsonnetVar represents a variable to be passed to jsonnet during manifest generation" + }, + "applicationsKsonnetParameter": { + "type": "object", + "properties": { + "component": { + "type": "string" + }, + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "title": "KsonnetParameter is a ksonnet component parameter" + }, + "applicationsKustomizeGvk": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "version": { + "type": "string" + }, + "kind": { + "type": "string" + } + } + }, + "applicationsKustomizePatch": { + "type": "object", + "properties": { + "path": { + "type": "string" + }, + "patch": { + "type": "string" + }, + "target": { + "$ref": "#/components/schemas/applicationsKustomizeSelector" + }, + "options": { + "type": "object", + "additionalProperties": { + "type": "boolean" + } + } + } + }, + "applicationsKustomizeReplicas": { + "type": "object", + "properties": { + "count": { + "type": "string", + "title": "Number of replicas" + }, + "name": { + "type": "string", + "title": "Name of Deployment or StatefulSet" + } + } + }, + "applicationsKustomizeResId": { + "type": "object", + "properties": { + "gvk": { + "$ref": "#/components/schemas/applicationsKustomizeGvk" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + } + } + }, + "applicationsKustomizeSelector": { + "type": "object", + "properties": { + "resId": { + "$ref": "#/components/schemas/applicationsKustomizeResId" + }, + "annotationSelector": { + "type": "string" + }, + "labelSelector": { + "type": "string" + } + } + }, + "applicationsListGenerator": { + "type": "object", + "properties": { + "elements": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1JSON" + }, + "title": "+kubebuilder:validation:Optional" + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "elementsYaml": { + "type": "string" + } + }, + "title": "ListGenerator include items info" + }, + "applicationsLogEntriesBatch": { + "type": "object", + "properties": { + "entries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsLogEntry" + } + }, + "count": { + "type": "integer", + "format": "int32" + }, + "batchIndex": { + "type": "integer", + "format": "int32" + }, + "last": { + "type": "boolean" + } + } + }, + "applicationsLogEntry": { + "type": "object", + "properties": { + "content": { + "type": "string" + }, + "timeStamp": { + "$ref": "#/components/schemas/v1Time" + }, + "last": { + "type": "boolean" + }, + "timeStampStr": { + "type": "string" + }, + "podName": { + "type": "string" + } + } + }, + "applicationsManagedNamespaceMetadata": { + "type": "object", + "properties": { + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "annotations": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "applicationsManagedResourcesResponse": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceDiff" + } + } + } + }, + "applicationsMatrixGenerator": { + "type": "object", + "properties": { + "generators": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetNestedGenerator" + } + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + } + }, + "description": "MatrixGenerator generates the cartesian product of two sets of parameters. The parameters are defined by two nested\ngenerators." + }, + "applicationsMergeGenerator": { + "type": "object", + "properties": { + "generators": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetNestedGenerator" + } + }, + "mergeKeys": { + "type": "array", + "items": { + "type": "string" + } + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + } + }, + "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." + }, + "applicationsObjectReference": { + "type": "object", + "properties": { + "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+" + }, + "namespace": { + "type": "string", + "title": "Namespace of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/\n+" + }, + "name": { + "type": "string", + "title": "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\n+" + }, + "uid": { + "type": "string", + "title": "UID of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids\n+" + }, + "apiVersion": { + "type": "string", + "title": "API version of the referent.\n+" + }, + "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+" + }, + "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+" + } + } + }, + "applicationsOperation": { + "type": "object", + "properties": { + "sync": { + "$ref": "#/components/schemas/applicationsSyncOperation" + }, + "initiatedBy": { + "$ref": "#/components/schemas/applicationsOperationInitiator" + }, + "info": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsInfo" + }, + "title": "Info is a list of informational items for this operation" + }, + "retry": { + "$ref": "#/components/schemas/applicationsRetryStrategy" + } + }, + "title": "Operation contains information about a requested or running operation" + }, + "applicationsOperationInitiator": { + "type": "object", + "properties": { + "username": { + "type": "string", + "title": "Username contains the name of a user who started operation" + }, + "automated": { + "type": "boolean", + "description": "Automated is set to true if operation was initiated automatically by the application controller." + } + }, + "title": "OperationInitiator contains information about the initiator of an operation" + }, + "applicationsOperationState": { + "type": "object", + "properties": { + "operation": { + "$ref": "#/components/schemas/applicationsOperation" + }, + "phase": { + "type": "string", + "title": "Phase is the current phase of the operation" + }, + "message": { + "type": "string", + "description": "Message holds any pertinent messages when attempting to perform operation (typically errors)." + }, + "syncResult": { + "$ref": "#/components/schemas/applicationsSyncOperationResult" + }, + "startedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "finishedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "retryCount": { + "type": "string", + "format": "int64", + "title": "RetryCount contains time of operation retries" + }, + "startedAtTs": { + "type": "string", + "format": "date-time", + "title": "Started at Timestamp" + }, + "finishedAtTs": { + "type": "string", + "format": "date-time", + "title": "Finised at Timestamp" + } + }, + "title": "OperationState contains information about state of a running operation" + }, + "applicationsOperationTerminateRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsOperationTerminateResponse": { + "type": "object" + }, + "applicationsOptionalArray": { + "type": "object", + "properties": { + "array": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Array is the value of an array type parameter.\n+optional" + } + } + }, + "applicationsOptionalMap": { + "type": "object", + "properties": { + "map": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Map is the value of a map type parameter.\n+optional" + } + } + }, + "applicationsPluginConfigMapRef": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name of the ConfigMap" + } + } + }, + "applicationsPluginGenerator": { + "type": "object", + "properties": { + "configMapRef": { + "$ref": "#/components/schemas/applicationsPluginConfigMapRef" + }, + "input": { + "$ref": "#/components/schemas/applicationsPluginInput" + }, + "requeueAfterSeconds": { + "type": "string", + "format": "int64", + "description": "RequeueAfterSeconds determines how long the ApplicationSet controller will wait before reconciling the ApplicationSet again." + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "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." + } + }, + "description": "PluginGenerator defines connection info specific to Plugin." + }, + "applicationsPluginInput": { + "type": "object", + "properties": { + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/v1JSON" + }, + "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." + } + } + }, + "applicationsPullRequestGenerator": { + "type": "object", + "properties": { + "github": { + "$ref": "#/components/schemas/applicationsPullRequestGeneratorGithub" + }, + "gitlab": { + "$ref": "#/components/schemas/applicationsPullRequestGeneratorGitLab" + }, + "gitea": { + "$ref": "#/components/schemas/applicationsPullRequestGeneratorGitea" + }, + "bitbucketServer": { + "$ref": "#/components/schemas/applicationsPullRequestGeneratorBitbucketServer" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsPullRequestGeneratorFilter" + }, + "description": "Filters for which pull requests should be considered." + }, + "requeueAfterSeconds": { + "type": "string", + "format": "int64", + "description": "Standard parameters." + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "bitbucket": { + "$ref": "#/components/schemas/applicationsPullRequestGeneratorBitbucket" + }, + "azuredevops": { + "$ref": "#/components/schemas/applicationsPullRequestGeneratorAzureDevOps" + } + }, + "description": "PullRequestGenerator defines a generator that scrapes a PullRequest API to find candidate pull requests." + }, + "applicationsPullRequestGeneratorAzureDevOps": { + "type": "object", + "properties": { + "organization": { + "type": "string", + "description": "Azure DevOps org to scan. Required." + }, + "project": { + "type": "string", + "description": "Azure DevOps project name to scan. Required." + }, + "repo": { + "type": "string", + "description": "Azure DevOps repo name to scan. Required." + }, + "api": { + "type": "string", + "description": "The Azure DevOps API URL to talk to. If blank, use https://dev.azure.com/." + }, + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "labels": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Labels is used to filter the PRs that you want to target" + } + }, + "description": "PullRequestGeneratorAzureDevOps defines connection info specific to AzureDevOps." + }, + "applicationsPullRequestGeneratorBitbucket": { + "type": "object", + "properties": { + "owner": { + "type": "string", + "description": "Workspace to scan. Required." + }, + "repo": { + "type": "string", + "description": "Repo name to scan. Required." + }, + "api": { + "type": "string", + "description": "The Bitbucket REST API URL to talk to. If blank, uses https://api.bitbucket.org/2.0." + }, + "basicAuth": { + "$ref": "#/components/schemas/applicationsBasicAuthBitbucketServer" + }, + "bearerToken": { + "$ref": "#/components/schemas/applicationsBearerTokenBitbucketCloud" + } + }, + "description": "PullRequestGeneratorBitbucket defines connection info specific to Bitbucket." + }, + "applicationsPullRequestGeneratorBitbucketServer": { + "type": "object", + "properties": { + "project": { + "type": "string", + "description": "Project to scan. Required." + }, + "repo": { + "type": "string", + "description": "Repo name to scan. Required." + }, + "api": { + "type": "string", + "description": "The Bitbucket REST API URL to talk to e.g. https://bitbucket.org/rest Required." + }, + "basicAuth": { + "$ref": "#/components/schemas/applicationsBasicAuthBitbucketServer" + }, + "bearerToken": { + "$ref": "#/components/schemas/applicationsBearerTokenBitbucket" + }, + "insecure": { + "type": "boolean", + "title": "Allow self-signed TLS / Certificates; default: false" + }, + "caRef": { + "$ref": "#/components/schemas/applicationsConfigMapKeyRef" + } + }, + "description": "PullRequestGeneratorBitbucketServer defines connection info specific to BitbucketServer." + }, + "applicationsPullRequestGeneratorFilter": { + "type": "object", + "properties": { + "branchMatch": { + "type": "string" + }, + "targetBranchMatch": { + "type": "string" + } + }, + "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." + }, + "applicationsPullRequestGeneratorGitLab": { + "type": "object", + "properties": { + "project": { + "type": "string", + "description": "GitLab project to scan. Required." + }, + "api": { + "type": "string", + "description": "The GitLab API URL to talk to. If blank, uses https://gitlab.com/." + }, + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "labels": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Labels is used to filter the MRs that you want to target" + }, + "pullRequestState": { + "type": "string", + "title": "PullRequestState is an additional MRs filter to get only those with a certain state. Default: \"\" (all states)" + }, + "insecure": { + "type": "boolean", + "title": "Skips validating the SCM provider's TLS certificate - useful for self-signed certificates.; default: false" + }, + "caRef": { + "$ref": "#/components/schemas/applicationsConfigMapKeyRef" + } + }, + "description": "PullRequestGeneratorGitLab defines connection info specific to GitLab." + }, + "applicationsPullRequestGeneratorGitea": { + "type": "object", + "properties": { + "owner": { + "type": "string", + "description": "Gitea org or user to scan. Required." + }, + "repo": { + "type": "string", + "description": "Gitea repo name to scan. Required." + }, + "api": { + "type": "string", + "title": "The Gitea API URL to talk to. Required" + }, + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "insecure": { + "type": "boolean", + "description": "Allow insecure tls, for self-signed certificates; default: false." + } + }, + "description": "PullRequestGeneratorGitea defines connection info specific to Gitea." + }, + "applicationsPullRequestGeneratorGithub": { + "type": "object", + "properties": { + "owner": { + "type": "string", + "description": "GitHub org or user to scan. Required." + }, + "repo": { + "type": "string", + "description": "GitHub repo name to scan. Required." + }, + "api": { + "type": "string", + "description": "The GitHub API URL to talk to. If blank, use https://api.github.com/." + }, + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "appSecretName": { + "type": "string", + "description": "AppSecretName is a reference to a GitHub App repo-creds secret with permission to access pull requests." + }, + "labels": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Labels is used to filter the PRs that you want to target" + } + }, + "description": "PullRequestGenerator defines connection info specific to GitHub." + }, + "applicationsResourceAction": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "params": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceActionParam" + } + }, + "disabled": { + "type": "boolean" + } + }, + "title": "TODO: describe this type\nTODO: describe members of this type" + }, + "applicationsResourceActionParam": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + }, + "type": { + "type": "string" + }, + "default": { + "type": "string" + } + }, + "title": "TODO: describe this type\nTODO: describe members of this type" + }, + "applicationsResourceActionRunRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "resourceName": { + "type": "string" + }, + "version": { + "type": "string" + }, + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "action": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsResourceActionsListResponse": { + "type": "object", + "properties": { + "actions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceAction" + } + } + } + }, + "applicationsResourceDiff": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "name": { + "type": "string" + }, + "targetState": { + "type": "string", + "title": "TargetState contains the JSON serialized resource manifest defined in the Git/Helm" + }, + "liveState": { + "type": "string", + "title": "TargetState contains the JSON live resource manifest" + }, + "diff": { + "type": "string", + "title": "Diff contains the JSON patch between target and live resource\nDeprecated: use NormalizedLiveState and PredictedLiveState to render the difference" + }, + "hook": { + "type": "boolean" + }, + "normalizedLiveState": { + "type": "string", + "title": "NormalizedLiveState contains JSON serialized live resource state with applied normalizations" + }, + "predictedLiveState": { + "type": "string", + "title": "PredictedLiveState contains JSON serialized resource state that is calculated based on normalized and target resource state" + }, + "resourceVersion": { + "type": "string" + }, + "modified": { + "type": "boolean" + } + }, + "title": "ResourceDiff holds the diff of a live and target resource object\nTODO: describe members of this type" + }, + "applicationsResourceIgnoreDifferences": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "jsonPointers": { + "type": "array", + "items": { + "type": "string" + } + }, + "jqPathExpressions": { + "type": "array", + "items": { + "type": "string" + } + }, + "managedFieldsManagers": { + "type": "array", + "items": { + "type": "string" + }, + "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" + } + }, + "description": "ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state." + }, + "applicationsResourceNetworkingInfo": { + "type": "object", + "properties": { + "targetLabels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetRefs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceRef" + } + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ingress": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1LoadBalancerIngress" + } + }, + "externalURLs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "ExternalURLs holds list of URLs which should be available externally. List is populated for ingress resources using rules hostnames." + } + }, + "title": "ResourceNetworkingInfo holds networking resource related information\nTODO: describe members of this type" + }, + "applicationsResourceNode": { + "type": "object", + "properties": { + "resourceRef": { + "$ref": "#/components/schemas/applicationsResourceRef" + }, + "parentRefs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceRef" + } + }, + "info": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsInfoItem" + } + }, + "networkingInfo": { + "$ref": "#/components/schemas/applicationsResourceNetworkingInfo" + }, + "resourceVersion": { + "type": "string" + }, + "images": { + "type": "array", + "items": { + "type": "string" + } + }, + "health": { + "$ref": "#/components/schemas/applicationsHealthStatus" + }, + "createdAt": { + "$ref": "#/components/schemas/v1Time" + } + }, + "title": "ResourceNode contains information about live resource and its children\nTODO: describe members of this type" + }, + "applicationsResourceRef": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "version": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "name": { + "type": "string" + }, + "uid": { + "type": "string" + } + }, + "title": "ResourceRef includes fields which uniquely identify a resource" + }, + "applicationsResourceResult": { + "type": "object", + "properties": { + "group": { + "type": "string", + "title": "Group specifies the API group of the resource" + }, + "version": { + "type": "string", + "title": "Version specifies the API version of the resource" + }, + "kind": { + "type": "string", + "title": "Kind specifies the API kind of the resource" + }, + "namespace": { + "type": "string", + "title": "Namespace specifies the target namespace of the resource" + }, + "name": { + "type": "string", + "title": "Name specifies the name 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" + }, + "message": { + "type": "string", + "title": "Message contains an informational or error message for the last sync OR operation" + }, + "hookType": { + "type": "string", + "title": "HookType specifies the type of the hook. Empty for non-hook resources" + }, + "hookPhase": { + "type": "string", + "description": "HookPhase contains the state of any operation associated with this resource OR hook\nThis can also contain values for non-hook resources." + }, + "syncPhase": { + "type": "string", + "title": "SyncPhase indicates the particular phase of the sync that this result was acquired in" + } + }, + "title": "ResourceResult holds the operation result details of a specific resource" + }, + "applicationsResourceStatus": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "version": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "name": { + "type": "string" + }, + "status": { + "type": "string" + }, + "health": { + "$ref": "#/components/schemas/applicationsHealthStatus" + }, + "hook": { + "type": "boolean" + }, + "requiresPruning": { + "type": "boolean" + }, + "syncWave": { + "type": "string", + "format": "int64" + }, + "requiresDeletionConfirmation": { + "type": "boolean" + } + }, + "title": "ResourceStatus holds the current sync and health status of a resource\nTODO: describe members of this type" + }, + "applicationsResourcesQuery": { + "type": "object", + "properties": { + "applicationName": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "name": { + "type": "string" + }, + "version": { + "type": "string" + }, + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "appNamespace": { + "type": "string" + }, + "project": { + "type": "string" + } + } + }, + "applicationsRetryStrategy": { + "type": "object", + "properties": { + "limit": { + "type": "string", + "format": "int64", + "description": "Limit is the maximum number of attempts for retrying a failed sync. If set to 0, no retries will be performed." + }, + "backoff": { + "$ref": "#/components/schemas/applicationsBackoff" + } + }, + "title": "RetryStrategy contains information about the strategy to apply when a sync failed" + }, + "applicationsRevisionHistory": { + "type": "object", + "properties": { + "revision": { + "type": "string", + "title": "Revision holds the revision the sync was performed against" + }, + "deployedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "id": { + "type": "string", + "format": "int64", + "title": "ID is an auto incrementing identifier of the RevisionHistory" + }, + "source": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "deployStartedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "deployedAtTs": { + "type": "string", + "format": "date-time" + }, + "deployStartedAtTs": { + "type": "string", + "format": "date-time" + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "title": "Sources is a reference to the application sources used for the sync operation" + }, + "revisions": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Revisions holds the revision of each source in sources field the sync was performed against" + }, + "initiatedBy": { + "$ref": "#/components/schemas/applicationsOperationInitiator" + } + }, + "title": "RevisionHistory contains history information about a previous sync" + }, + "applicationsRevisionMetadataQuery": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "the application's name" + }, + "revision": { + "type": "string", + "title": "the revision of the app" + }, + "appNamespace": { + "type": "string", + "title": "the application's namespace" + }, + "project": { + "type": "string" + }, + "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)" + } + } + }, + "applicationsSCMProviderGenerator": { + "type": "object", + "properties": { + "github": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorGithub" + }, + "gitlab": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorGitlab" + }, + "bitbucket": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorBitbucket" + }, + "bitbucketServer": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorBitbucketServer" + }, + "gitea": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorGitea" + }, + "azureDevOps": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorAzureDevOps" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorFilter" + }, + "description": "Filters for which repos should be considered." + }, + "cloneProtocol": { + "type": "string", + "description": "Which protocol to use for the SCM URL. Default is provider-specific but ssh if possible. Not all providers\nnecessarily support all protocols." + }, + "requeueAfterSeconds": { + "type": "string", + "format": "int64", + "description": "Standard parameters." + }, + "template": { + "$ref": "#/components/schemas/applicationsApplicationSetTemplate" + }, + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Values contains key/value pairs which are passed directly as parameters to the template" + }, + "awsCodeCommit": { + "$ref": "#/components/schemas/applicationsSCMProviderGeneratorAWSCodeCommit" + } + }, + "description": "SCMProviderGenerator defines a generator that scrapes a SCMaaS API to find candidate repos." + }, + "applicationsSCMProviderGeneratorAWSCodeCommit": { + "type": "object", + "properties": { + "tagFilters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsTagFilter" + }, + "title": "TagFilters provides the tag filter(s) for repo discovery" + }, + "role": { + "type": "string", + "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." + }, + "region": { + "type": "string", + "description": "Region provides the AWS region to discover repos.\nif not provided, AppSet controller will infer the current region from environment." + }, + "allBranches": { + "type": "boolean", + "description": "Scan all branches instead of just the default branch." + } + }, + "description": "SCMProviderGeneratorAWSCodeCommit defines connection info specific to AWS CodeCommit." + }, + "applicationsSCMProviderGeneratorAzureDevOps": { + "type": "object", + "properties": { + "organization": { + "type": "string", + "description": "Azure Devops organization. Required. E.g. \"my-organization\"." + }, + "api": { + "type": "string", + "description": "The URL to Azure DevOps. If blank, use https://dev.azure.com." + }, + "teamProject": { + "type": "string", + "description": "Azure Devops team project. Required. E.g. \"my-team\"." + }, + "accessTokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "allBranches": { + "type": "boolean", + "description": "Scan all branches instead of just the default branch." + } + }, + "description": "SCMProviderGeneratorAzureDevOps defines connection info specific to Azure DevOps." + }, + "applicationsSCMProviderGeneratorBitbucket": { + "type": "object", + "properties": { + "owner": { + "type": "string", + "description": "Bitbucket workspace to scan. Required." + }, + "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" + }, + "appPasswordRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "allBranches": { + "type": "boolean", + "description": "Scan all branches instead of just the main branch." + } + }, + "description": "SCMProviderGeneratorBitbucket defines connection info specific to Bitbucket Cloud (API version 2)." + }, + "applicationsSCMProviderGeneratorBitbucketServer": { + "type": "object", + "properties": { + "project": { + "type": "string", + "description": "Project to scan. Required." + }, + "api": { + "type": "string", + "description": "The Bitbucket Server REST API URL to talk to. Required." + }, + "basicAuth": { + "$ref": "#/components/schemas/applicationsBasicAuthBitbucketServer" + }, + "allBranches": { + "type": "boolean", + "description": "Scan all branches instead of just the default branch." + }, + "bearerToken": { + "$ref": "#/components/schemas/applicationsBearerTokenBitbucket" + }, + "insecure": { + "type": "boolean", + "title": "Allow self-signed TLS / Certificates; default: false" + }, + "caRef": { + "$ref": "#/components/schemas/applicationsConfigMapKeyRef" + } + }, + "description": "SCMProviderGeneratorBitbucketServer defines connection info specific to Bitbucket Server." + }, + "applicationsSCMProviderGeneratorFilter": { + "type": "object", + "properties": { + "repositoryMatch": { + "type": "string", + "description": "A regex for repo names." + }, + "pathsExist": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of paths, all of which must exist." + }, + "pathsDoNotExist": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of paths, all of which must not exist." + }, + "labelMatch": { + "type": "string", + "description": "A regex which must match at least one label." + }, + "branchMatch": { + "type": "string", + "description": "A regex which must match the branch name." + } + }, + "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." + }, + "applicationsSCMProviderGeneratorGitea": { + "type": "object", + "properties": { + "owner": { + "type": "string", + "description": "Gitea organization or user to scan. Required." + }, + "api": { + "type": "string", + "description": "The Gitea URL to talk to. For example https://gitea.mydomain.com/." + }, + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "allBranches": { + "type": "boolean", + "description": "Scan all branches instead of just the default branch." + }, + "insecure": { + "type": "boolean", + "title": "Allow self-signed TLS / Certificates; default: false" + } + }, + "description": "SCMProviderGeneratorGitea defines a connection info specific to Gitea." + }, + "applicationsSCMProviderGeneratorGithub": { + "type": "object", + "properties": { + "organization": { + "type": "string", + "description": "GitHub org to scan. Required." + }, + "api": { + "type": "string", + "description": "The GitHub API URL to talk to. If blank, use https://api.github.com/." + }, + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "appSecretName": { + "type": "string", + "description": "AppSecretName is a reference to a GitHub App repo-creds secret." + }, + "allBranches": { + "type": "boolean", + "description": "Scan all branches instead of just the default branch." + } + }, + "description": "SCMProviderGeneratorGithub defines connection info specific to GitHub." + }, + "applicationsSCMProviderGeneratorGitlab": { + "type": "object", + "properties": { + "group": { + "type": "string", + "description": "Gitlab group to scan. Required. You can use either the project id (recommended) or the full namespaced path." + }, + "includeSubgroups": { + "type": "boolean", + "title": "Recurse through subgroups (true) or scan only the base group (false). Defaults to \"false\"" + }, + "api": { + "type": "string", + "description": "The Gitlab API URL to talk to." + }, + "tokenRef": { + "$ref": "#/components/schemas/applicationsSecretRef" + }, + "allBranches": { + "type": "boolean", + "description": "Scan all branches instead of just the default branch." + }, + "insecure": { + "type": "boolean", + "title": "Skips validating the SCM provider's TLS certificate - useful for self-signed certificates.; default: false" + }, + "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\"" + }, + "topic": { + "type": "string", + "description": "Filter repos list based on Gitlab Topic." + }, + "caRef": { + "$ref": "#/components/schemas/applicationsConfigMapKeyRef" + } + }, + "description": "SCMProviderGeneratorGitlab defines connection info specific to Gitlab." + }, + "applicationsSecretRef": { + "type": "object", + "properties": { + "secretName": { + "type": "string" + }, + "key": { + "type": "string" + } + }, + "description": "Utility struct for a reference to a secret key." + }, + "applicationsSyncOperation": { + "type": "object", + "properties": { + "revision": { + "type": "string", + "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." + }, + "prune": { + "type": "boolean", + "title": "Prune specifies to delete resources from the cluster that are no longer tracked in git" + }, + "dryRun": { + "type": "boolean", + "title": "DryRun specifies to perform a `kubectl apply --dry-run` without actually performing the sync" + }, + "syncStrategy": { + "$ref": "#/components/schemas/applicationsSyncStrategy" + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsSyncOperationResource" + }, + "title": "Resources describes which resources shall be part of the sync" + }, + "source": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "manifests": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Manifests is an field that overrides sync source with a local directory for development" + }, + "syncOptions": { + "type": "array", + "items": { + "type": "string" + }, + "title": "SyncOptions provide per-sync sync-options, e.g. Validate=false" + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "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" + }, + "revisions": { + "type": "array", + "items": { + "type": "string" + }, + "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." + }, + "autoHealAttemptsCount": { + "type": "string", + "format": "int64", + "title": "SelfHealAttemptsCount contains the number of auto-heal attempts" + } + }, + "description": "SyncOperation contains details about a sync operation." + }, + "applicationsSyncOperationResource": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + } + }, + "description": "SyncOperationResource contains resources to sync." + }, + "applicationsSyncOperationResult": { + "type": "object", + "properties": { + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsResourceResult" + }, + "title": "Resources contains a list of sync result items for each individual resource in a sync operation" + }, + "revision": { + "type": "string", + "title": "Revision holds the revision this sync operation was performed to" + }, + "source": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "title": "Source records the application source information of the sync, used for comparing auto-sync" + }, + "revisions": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Revisions holds the revision this sync operation was performed for respective indexed source in sources field" + }, + "managedNamespaceMetadata": { + "$ref": "#/components/schemas/applicationsManagedNamespaceMetadata" + } + }, + "title": "SyncOperationResult represent result of sync operation" + }, + "applicationsSyncOptions": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "applicationsSyncPolicy": { + "type": "object", + "properties": { + "automated": { + "$ref": "#/components/schemas/applicationsSyncPolicyAutomated" + }, + "syncOptions": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Options allow you to specify whole app sync-options" + }, + "retry": { + "$ref": "#/components/schemas/applicationsRetryStrategy" + }, + "managedNamespaceMetadata": { + "$ref": "#/components/schemas/applicationsManagedNamespaceMetadata" + } + }, + "title": "SyncPolicy controls when a sync will be performed in response to updates in git" + }, + "applicationsSyncPolicyAutomated": { + "type": "object", + "properties": { + "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 specifes whether to revert resources back to their desired state upon modification in the cluster (default: false)" + }, + "allowEmpty": { + "type": "boolean", + "title": "AllowEmpty allows apps have zero live resources (default: false)" + } + }, + "title": "SyncPolicyAutomated controls the behavior of an automated sync" + }, + "applicationsSyncStatus": { + "type": "object", + "properties": { + "status": { + "type": "string", + "title": "Status is the sync state of the comparison" + }, + "comparedTo": { + "$ref": "#/components/schemas/applicationsComparedTo" + }, + "revision": { + "type": "string", + "title": "Revision contains information about the revision the comparison has been performed to" + }, + "revisions": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Revisions contains information about the revisions of multiple sources the comparison has been performed to" + } + }, + "title": "SyncStatus contains information about the currently observed live and desired states of an application" + }, + "applicationsSyncStrategy": { + "type": "object", + "properties": { + "apply": { + "$ref": "#/components/schemas/applicationsSyncStrategyApply" + }, + "hook": { + "$ref": "#/components/schemas/applicationsSyncStrategyHook" + } + }, + "title": "SyncStrategy controls the manner in which a sync is performed" + }, + "applicationsSyncStrategyApply": { + "type": "object", + "properties": { + "force": { + "type": "boolean", + "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." + } + }, + "title": "SyncStrategyApply uses `kubectl apply` to perform the apply" + }, + "applicationsSyncStrategyHook": { + "type": "object", + "properties": { + "force": { + "type": "boolean", + "title": "Embed SyncStrategyApply type to inherit any `apply` options\n+" + } + }, + "description": "SyncStrategyHook will perform a sync using hooks annotations.\nIf no hook annotation is specified falls back to `kubectl apply`." + }, + "applicationsTagFilter": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "appprojectsAppProject": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "spec": { + "$ref": "#/components/schemas/appprojectsAppProjectSpec" + }, + "status": { + "$ref": "#/components/schemas/appprojectsAppProjectStatus" + } + }, + "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" + }, + "appprojectsAppProjectList": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ListMeta" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsAppProject" + } + } + }, + "title": "AppProjectList is list of AppProject resources\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object" + }, + "appprojectsAppProjectSpec": { + "type": "object", + "properties": { + "sourceRepos": { + "type": "array", + "items": { + "type": "string" + }, + "title": "SourceRepos contains list of repository URLs which can be used for deployment" + }, + "destinations": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsApplicationDestination" + }, + "title": "Destinations contains list of destinations available for deployment" + }, + "description": { + "type": "string", + "title": "Description contains optional project description" + }, + "roles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsProjectRole" + }, + "title": "Roles are user defined RBAC roles associated with this project" + }, + "clusterResourceWhitelist": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1GroupKind" + }, + "title": "ClusterResourceWhitelist contains list of whitelisted cluster level resources" + }, + "namespaceResourceBlacklist": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1GroupKind" + }, + "title": "NamespaceResourceBlacklist contains list of blacklisted namespace level resources" + }, + "orphanedResources": { + "$ref": "#/components/schemas/appprojectsOrphanedResourcesMonitorSettings" + }, + "syncWindows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsSyncWindow" + }, + "title": "SyncWindows controls when syncs can be run for apps in this project" + }, + "namespaceResourceWhitelist": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1GroupKind" + }, + "title": "NamespaceResourceWhitelist contains list of whitelisted namespace level resources" + }, + "signatureKeys": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsSignatureKey" + }, + "title": "SignatureKeys contains a list of PGP key IDs that commits in Git must be signed with in order to be allowed for sync" + }, + "clusterResourceBlacklist": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1GroupKind" + }, + "title": "ClusterResourceBlacklist contains list of blacklisted cluster level resources" + }, + "sourceNamespaces": { + "type": "array", + "items": { + "type": "string" + }, + "title": "SourceNamespaces defines the namespaces application resources are allowed to be created in" + }, + "permitOnlyProjectScopedClusters": { + "type": "boolean", + "title": "PermitOnlyProjectScopedClusters determines whether destinations can only reference clusters which are project-scoped" + }, + "destinationServiceAccounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsApplicationDestinationServiceAccount" + }, + "description": "DestinationServiceAccounts holds information about the service accounts to be impersonated for the application sync operation for each destination." + } + }, + "title": "AppProjectSpec is the specification of an AppProject" + }, + "appprojectsAppProjectStatus": { + "type": "object", + "properties": { + "jwtTokensByRole": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/appprojectsJWTTokens" + }, + "title": "JWTTokensByRole contains a list of JWT tokens issued for a given role" + } + }, + "title": "AppProjectStatus contains status information for AppProject CRs" + }, + "appprojectsApplicationDestination": { + "type": "object", + "properties": { + "server": { + "type": "string", + "title": "Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API" + }, + "namespace": { + "type": "string", + "title": "Namespace specifies the target namespace for the application's resources.\nThe namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace" + }, + "name": { + "type": "string", + "title": "Name is an alternate way of specifying the target cluster by its symbolic name" + } + }, + "title": "ApplicationDestination holds information about the application's destination" + }, + "appprojectsApplicationDestinationServiceAccount": { + "type": "object", + "properties": { + "server": { + "type": "string", + "description": "Server specifies the URL of the target cluster's Kubernetes control plane API." + }, + "namespace": { + "type": "string", + "description": "Namespace specifies the target namespace for the application's resources." + }, + "defaultServiceAccount": { + "type": "string", + "title": "DefaultServiceAccount to be used for impersonation during the sync operation" + } + }, + "description": "ApplicationDestinationServiceAccount holds information about the service account to be impersonated for the application sync operation." + }, + "appprojectsJWTToken": { + "type": "object", + "properties": { + "iat": { + "type": "string", + "format": "int64" + }, + "exp": { + "type": "string", + "format": "int64" + }, + "id": { + "type": "string" + } + }, + "title": "JWTToken holds the issuedAt and expiresAt values of a token" + }, + "appprojectsJWTTokens": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsJWTToken" + } + } + }, + "title": "JWTTokens represents a list of JWT tokens" + }, + "appprojectsOrphanedResourceKey": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "title": "OrphanedResourceKey is a reference to a resource to be ignored from" + }, + "appprojectsOrphanedResourcesMonitorSettings": { + "type": "object", + "properties": { + "warn": { + "type": "boolean", + "title": "Warn indicates if warning condition should be created for apps which have orphaned resources" + }, + "ignore": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsOrphanedResourceKey" + }, + "title": "Ignore contains a list of resources that are to be excluded from orphaned resources monitoring" + } + }, + "title": "OrphanedResourcesMonitorSettings holds settings of orphaned resources monitoring" + }, + "appprojectsProjectRole": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name is a name for this role" + }, + "description": { + "type": "string", + "title": "Description is a description of the role" + }, + "policies": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Policies Stores a list of casbin formatted strings that define access policies for the role in the project" + }, + "jwtTokens": { + "type": "array", + "items": { + "$ref": "#/components/schemas/appprojectsJWTToken" + }, + "title": "JWTTokens are a list of generated JWT tokens bound to this role" + }, + "groups": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Groups are a list of OIDC group claims bound to this role" + } + }, + "title": "ProjectRole represents a role that has access to a project" + }, + "appprojectsSignatureKey": { + "type": "object", + "properties": { + "keyID": { + "type": "string", + "title": "The ID of the key in hexadecimal notation" + } + }, + "title": "SignatureKey is the specification of a key required to verify commit signatures with" + }, + "appprojectsSyncWindow": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "title": "Kind defines if the window allows or blocks syncs" + }, + "schedule": { + "type": "string", + "title": "Schedule is the time the window will begin, specified in cron format" + }, + "duration": { + "type": "string", + "title": "Duration is the amount of time the sync window will be open" + }, + "applications": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Applications contains a list of applications that the window will apply to" + }, + "namespaces": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Namespaces contains a list of namespaces that the window will apply to" + }, + "clusters": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Clusters contains a list of clusters that the window will apply to" + }, + "manualSync": { + "type": "boolean", + "title": "ManualSync enables manual syncs when they would otherwise be blocked" + }, + "timeZone": { + "type": "string", + "title": "TimeZone of the sync that will be applied to the schedule" + } + }, + "title": "SyncWindow contains the kind, time, duration and attributes that are used to assign the syncWindows to apps" + }, + "certificatesRepositoryCertificate": { + "type": "object", + "properties": { + "serverName": { + "type": "string", + "title": "ServerName specifies the DNS name of the server this certificate is intended for" + }, + "certType": { + "type": "string", + "title": "CertType specifies the type of the certificate - currently one of \"https\" or \"ssh\"" + }, + "certSubType": { + "type": "string", + "title": "CertSubType specifies the sub type of the cert, i.e. \"ssh-rsa\"" + }, + "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)" + } + }, + "title": "A RepositoryCertificate is either SSH known hosts entry or TLS certificate" + }, + "certificatesRepositoryCertificateCreateRequest": { + "type": "object", + "properties": { + "certificates": { + "$ref": "#/components/schemas/certificatesRepositoryCertificateList" + }, + "upsert": { + "type": "boolean", + "title": "Whether to upsert already existing certificates" + } + }, + "title": "Request to create a set of certificates" + }, + "certificatesRepositoryCertificateList": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ListMeta" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/certificatesRepositoryCertificate" + }, + "title": "List of certificates to be processed" + } + }, + "title": "RepositoryCertificateList is a collection of RepositoryCertificates" + }, + "certificatesRepositoryCertificateQuery": { + "type": "object", + "properties": { + "hostNamePattern": { + "type": "string", + "title": "A file-glob pattern (not regular expression) the host name has to match" + }, + "certType": { + "type": "string", + "title": "The type of the certificate to match (ssh or https)" + }, + "certSubType": { + "type": "string", + "title": "The sub type of the certificate to match (protocol dependent, usually only used for ssh certs)" + } + } + }, + "clustersAWSAuthConfig": { + "type": "object", + "properties": { + "clusterName": { + "type": "string", + "title": "ClusterName contains AWS cluster name" + }, + "roleARN": { + "type": "string", + "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." + } + }, + "title": "AWSAuthConfig is an AWS IAM authentication configuration" + }, + "clustersCluster": { + "type": "object", + "properties": { + "server": { + "type": "string", + "title": "Server is the API server URL of the Kubernetes cluster" + }, + "name": { + "type": "string", + "title": "Name of the cluster. If omitted, will use the server address" + }, + "config": { + "$ref": "#/components/schemas/clustersClusterConfig" + }, + "connectionState": { + "$ref": "#/components/schemas/commonsConnectionState" + }, + "serverVersion": { + "type": "string", + "title": "DEPRECATED: use Info.ServerVersion field instead.\nThe server version" + }, + "namespaces": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Holds list of namespaces which are accessible in that cluster. Cluster level resources will be ignored if namespace list is not empty." + }, + "refreshRequestedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "info": { + "$ref": "#/components/schemas/clustersClusterInfo" + }, + "shard_deprecated": { + "type": "string", + "format": "int64", + "description": "DEPRECATED: use Shard field instead.\nShard contains optional shard number. Calculated on the fly by the application controller if not specified." + }, + "clusterResources": { + "type": "boolean", + "description": "Indicates if cluster level resources should be managed. This setting is used only if cluster is connected in a namespaced mode." + }, + "project": { + "type": "string", + "title": "Reference between project and cluster that allow you automatically to be added as item inside Destinations project entity" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Labels for cluster secret metadata" + }, + "annotations": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Annotations for cluster secret metadata" + }, + "type": { + "$ref": "#/components/schemas/clustersClusterType" + }, + "refreshRequestedAtTs": { + "type": "string", + "format": "date-time", + "title": "refreshRequestedAtTs is the google timestamp variation of refreshRequestedAt" + }, + "shard": { + "type": "string", + "format": "int64" + } + }, + "title": "Cluster is the definition of a cluster resource" + }, + "clustersClusterCacheInfo": { + "type": "object", + "properties": { + "resourcesCount": { + "type": "string", + "format": "int64", + "title": "ResourcesCount holds number of observed Kubernetes resources" + }, + "apisCount": { + "type": "string", + "format": "int64", + "title": "APIsCount holds number of observed Kubernetes API count" + }, + "lastCacheSyncTime": { + "$ref": "#/components/schemas/v1Time" + }, + "lastCacheSyncTimeTs": { + "type": "string", + "format": "date-time", + "title": "lastCacheSyncTimeTs is the google timestamp variation of lastCacheSyncTime" + } + }, + "title": "ClusterCacheInfo contains information about the cluster cache" + }, + "clustersClusterConfig": { + "type": "object", + "properties": { + "username": { + "type": "string", + "title": "Server requires Basic authentication" + }, + "password": { + "type": "string" + }, + "bearerToken": { + "type": "string", + "description": "Server requires Bearer authentication. This client will not attempt to use\nrefresh tokens for an OAuth2 flow.\nTODO: demonstrate an OAuth2 compatible client." + }, + "tlsClientConfig": { + "$ref": "#/components/schemas/clustersTLSClientConfig" + }, + "awsAuthConfig": { + "$ref": "#/components/schemas/clustersAWSAuthConfig" + }, + "execProviderConfig": { + "$ref": "#/components/schemas/clustersExecProviderConfig" + }, + "clusterConnectionType": { + "type": "string", + "title": "Identifies the authentication method used to connect to the cluster" + }, + "roleARN": { + "type": "string", + "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." + }, + "awsClusterName": { + "type": "string", + "description": "AWS Cluster name. If set then AWS CLI EKS token command will be used to access cluster." + }, + "disableCompression": { + "type": "boolean", + "description": "DisableCompression bypasses automatic GZip compression requests to the server." + }, + "proxyUrl": { + "type": "string", + "title": "ProxyURL is the URL to the proxy to be used for all requests send to the server" + } + }, + "description": "ClusterConfig is the configuration attributes. This structure is subset of the go-client\nrest.Config with annotations added for marshalling." + }, + "clustersClusterCreateRequest": { + "type": "object", + "properties": { + "cluster": { + "$ref": "#/components/schemas/clustersCluster" + }, + "upsert": { + "type": "boolean" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "clustersClusterID": { + "type": "object", + "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" + } + }, + "title": "ClusterID holds a cluster server URL or cluster name" + }, + "clustersClusterInfo": { + "type": "object", + "properties": { + "connectionState": { + "$ref": "#/components/schemas/commonsConnectionState" + }, + "serverVersion": { + "type": "string", + "title": "ServerVersion contains information about the Kubernetes version of the cluster" + }, + "cacheInfo": { + "$ref": "#/components/schemas/clustersClusterCacheInfo" + }, + "applicationsCount": { + "type": "string", + "format": "int64", + "title": "ApplicationsCount is the number of applications managed by Argo CD on the cluster" + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "title": "APIVersions contains list of API versions supported by the cluster" + } + }, + "title": "ClusterInfo contains information about the cluster" + }, + "clustersClusterList": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ListMeta" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/clustersCluster" + } + } + }, + "description": "ClusterList is a collection of Clusters." + }, + "clustersClusterQuery": { + "type": "object", + "properties": { + "server": { + "type": "string" + }, + "name": { + "type": "string" + }, + "id": { + "$ref": "#/components/schemas/clustersClusterID" + }, + "project": { + "type": "string" + } + }, + "title": "ClusterQuery is a query for cluster resources" + }, + "clustersClusterResponse": { + "type": "object" + }, + "clustersClusterType": { + "type": "string", + "enum": [ + "CUSTOMER_PROVIDED", + "HARNESS_HOSTED" + ], + "default": "CUSTOMER_PROVIDED" + }, + "clustersClusterUpdateRequest": { + "type": "object", + "properties": { + "cluster": { + "$ref": "#/components/schemas/clustersCluster" + }, + "updatedFields": { + "type": "array", + "items": { + "type": "string" + } + }, + "updateMask": { + "$ref": "#/components/schemas/protobufFieldMask" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "id": { + "$ref": "#/components/schemas/clustersClusterID" + } + } + }, + "clustersExecProviderConfig": { + "type": "object", + "properties": { + "command": { + "type": "string", + "title": "Command to execute" + }, + "args": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Arguments to pass to the command when executing it" + }, + "env": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Env defines additional environment variables to expose to the process" + }, + "apiVersion": { + "type": "string", + "title": "Preferred input version of the ExecInfo" + }, + "installHint": { + "type": "string", + "title": "This text is shown to the user when the executable doesn't seem to be present" + } + }, + "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" + }, + "clustersTLSClientConfig": { + "type": "object", + "properties": { + "insecure": { + "type": "boolean", + "description": "Insecure specifies that the server should be accessed without verifying the TLS certificate. For testing only." + }, + "serverName": { + "type": "string", + "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." + }, + "certData": { + "type": "string", + "format": "byte", + "title": "CertData holds PEM-encoded bytes (typically read from a client certificate file).\nCertData takes precedence over CertFile" + }, + "keyData": { + "type": "string", + "format": "byte", + "title": "KeyData holds PEM-encoded bytes (typically read from a client certificate key file).\nKeyData takes precedence over KeyFile" + }, + "caData": { + "type": "string", + "format": "byte", + "title": "CAData holds PEM-encoded bytes (typically read from a root certificates bundle).\nCAData takes precedence over CAFile" + } + }, + "title": "TLSClientConfig contains settings to enable transport layer security" + }, + "commonsConnectionState": { + "type": "object", + "properties": { + "status": { + "type": "string", + "title": "Status contains the current status indicator for the connection" + }, + "message": { + "type": "string", + "title": "Message contains human readable information about the connection status" + }, + "attemptedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "attemptedAtTs": { + "type": "string", + "format": "date-time", + "title": "attemptedAtTs is the google timestamp variation of attemptedAt" + } + }, + "title": "ConnectionState contains information about remote resource connection state, currently used for clusters and repositories" + }, + "gatewayruntimeError": { + "type": "object", + "properties": { + "error": { + "type": "string" + }, + "code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/protobufAny" + } + } + } + }, + "gitopsservicev1Namespace": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + } + }, + "gitopsservicev1NamespaceList": { + "type": "object", + "properties": { + "namespaces": { + "type": "array", + "items": { + "$ref": "#/components/schemas/gitopsservicev1Namespace" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "gpgkeysGnuPGPublicKey": { + "type": "object", + "properties": { + "keyID": { + "type": "string", + "title": "KeyID specifies the key ID, in hexadecimal string format" + }, + "fingerprint": { + "type": "string", + "title": "Fingerprint is the fingerprint of the key" + }, + "owner": { + "type": "string", + "title": "Owner holds the owner identification, e.g. a name and e-mail address" + }, + "trust": { + "type": "string", + "title": "Trust holds the level of trust assigned to this key" + }, + "subType": { + "type": "string", + "title": "SubType holds the key's sub type (e.g. rsa4096)" + }, + "keyData": { + "type": "string", + "title": "KeyData holds the raw key data, in base64 encoded format" + } + }, + "title": "GnuPGPublicKey is a representation of a GnuPG public key" + }, + "gpgkeysGnuPGPublicKeyCreateRequest": { + "type": "object", + "properties": { + "publickey": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKey" + }, + "upsert": { + "type": "boolean", + "title": "Whether to upsert already existing public keys" + } + }, + "title": "Request to create one or more public keys on the server" + }, + "gpgkeysGnuPGPublicKeyCreateResponse": { + "type": "object", + "properties": { + "created": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKeyList" + }, + "skipped": { + "type": "array", + "items": { + "type": "string" + }, + "title": "List of key IDs that haven been skipped because they already exist on the server" + } + }, + "title": "Response to a public key creation request" + }, + "gpgkeysGnuPGPublicKeyList": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ListMeta" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKey" + } + } + }, + "title": "GnuPGPublicKeyList is a collection of GnuPGPublicKey objects" + }, + "gpgkeysGnuPGPublicKeyQuery": { + "type": "object", + "properties": { + "keyID": { + "type": "string", + "title": "The GPG key ID to query for" + } + }, + "title": "Message to query the server for configured GPG public keys" + }, + "gpgkeysGnuPGPublicKeyResponse": { + "type": "object", + "title": "Generic (empty) response for GPG public key CRUD requests" + }, + "hrepocredsRepoCreds": { + "type": "object", + "properties": { + "url": { + "type": "string", + "title": "URL is the URL that this credentials matches to" + }, + "username": { + "type": "string", + "title": "Username for authenticating at the repo server" + }, + "password": { + "type": "string", + "title": "Password for authenticating 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" + }, + "githubAppPrivateKey": { + "type": "string", + "title": "GithubAppPrivateKey specifies the private key PEM data for authentication via GitHub app" + }, + "githubAppID": { + "type": "string", + "format": "int64", + "title": "GithubAppId specifies the Github App ID of the app used to access the repo for GitHub app authentication" + }, + "githubAppInstallationID": { + "type": "string", + "format": "int64", + "title": "GithubAppInstallationId specifies the ID of the installed GitHub App for GitHub app authentication" + }, + "githubAppEnterpriseBaseUrl": { + "type": "string", + "title": "GithubAppEnterpriseBaseURL specifies the GitHub API URL for GitHub app authentication. If empty will default to https://api.github.com" + }, + "enableOCI": { + "type": "boolean", + "title": "EnableOCI specifies whether helm-oci support should be enabled for this repo" + }, + "type": { + "type": "string", + "description": "Type specifies the type of the repoCreds. Can be either \"git\" or \"helm. \"git\" is assumed if empty or absent." + }, + "name": { + "type": "string", + "title": "Repository human readable name" + } + }, + "title": "RepoCreds holds the definition for repository credentials" + }, + "hrepocredsRepoCredsCreateRequest": { + "type": "object", + "properties": { + "creds": { + "$ref": "#/components/schemas/hrepocredsRepoCreds" + }, + "upsert": { + "type": "boolean", + "title": "Whether to create in upsert mode" + } + }, + "title": "RepoCreateRequest is a request for creating repository credentials config" + }, + "hrepocredsRepoCredsQuery": { + "type": "object", + "properties": { + "url": { + "type": "string", + "title": "Repo URL for query" + }, + "repoCredsType": { + "type": "string", + "title": "RepoCreds type - git or helm" + } + }, + "title": "RepoCredsQuery is a query for RepoCreds resources" + }, + "hrepocredsRepoCredsResponse": { + "type": "object", + "title": "RepoCredsResponse is a response to most repository credentials requests" + }, + "hrepocredsRepoCredsUpdateRequest": { + "type": "object", + "properties": { + "creds": { + "$ref": "#/components/schemas/hrepocredsRepoCreds" + }, + "updateMask": { + "$ref": "#/components/schemas/protobufFieldMask" + } + }, + "title": "RepoCredsUpdateRequest is a request for updating existing repository credentials config" + }, + "intstrIntOrString": { + "type": "object", + "properties": { + "type": { + "type": "string", + "format": "int64" + }, + "intVal": { + "type": "integer", + "format": "int32" + }, + "strVal": { + "type": "string" + } + }, + "description": "+protobuf=true\n+protobuf.options.(gogoproto.goproto_stringer)=false\n+k8s:openapi-gen=true", + "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" + }, + "projectsEmptyResponse": { + "type": "object" + }, + "projectsProjectCreateRequest": { + "type": "object", + "properties": { + "project": { + "$ref": "#/components/schemas/appprojectsAppProject" + }, + "upsert": { + "type": "boolean" + } + }, + "description": "ProjectCreateRequest defines project creation parameters." + }, + "projectsProjectQuery": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + }, + "title": "ProjectQuery is a query for Project resources" + }, + "projectsProjectUpdateRequest": { + "type": "object", + "properties": { + "project": { + "$ref": "#/components/schemas/appprojectsAppProject" + } + } + }, + "protobufAny": { + "type": "object", + "properties": { + "type_url": { + "type": "string", + "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com. As of May 2023, there are no widely used type server\nimplementations and no plans to implement one.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics." + }, + "value": { + "type": "string", + "format": "byte", + "description": "Must be a valid serialized protocol buffer of the above specified type." + } + }, + "description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n // or ...\n if (any.isSameTypeAs(Foo.getDefaultInstance())) {\n foo = any.unpack(Foo.getDefaultInstance());\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := anypb.New(foo)\n if err != nil {\n ...\n }\n ...\n foo := &pb.Foo{}\n if err := any.UnmarshalTo(foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": ,\n \"lastName\": \n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }" + }, + "protobufFieldMask": { + "type": "object", + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of field mask paths." + } + }, + "description": "paths: \"f.a\"\n paths: \"f.b.d\"\n\nHere `f` represents a field in some root message, `a` and `b`\nfields in the message found in `f`, and `d` a field found in the\nmessage in `f.b`.\n\nField masks are used to specify a subset of fields that should be\nreturned by a get operation or modified by an update operation.\nField masks also have a custom JSON encoding (see below).\n\n# Field Masks in Projections\n\nWhen used in the context of a projection, a response message or\nsub-message is filtered by the API to only contain those fields as\nspecified in the mask. For example, if the mask in the previous\nexample is applied to a response message as follows:\n\n f {\n a : 22\n b {\n d : 1\n x : 2\n }\n y : 13\n }\n z: 8\n\nThe result will not contain specific values for fields x,y and z\n(their value will be set to the default, and omitted in proto text\noutput):\n\n\n f {\n a : 22\n b {\n d : 1\n }\n }\n\nA repeated field is not allowed except at the last position of a\npaths string.\n\nIf a FieldMask object is not present in a get operation, the\noperation applies to all fields (as if a FieldMask of all fields\nhad been specified).\n\nNote that a field mask does not necessarily apply to the\ntop-level response message. In case of a REST get operation, the\nfield mask applies directly to the response, but in case of a REST\nlist operation, the mask instead applies to each individual message\nin the returned resource list. In case of a REST custom method,\nother definitions may be used. Where the mask applies will be\nclearly documented together with its declaration in the API. In\nany case, the effect on the returned resource/resources is required\nbehavior for APIs.\n\n# Field Masks in Update Operations\n\nA field mask in update operations specifies which fields of the\ntargeted resource are going to be updated. The API is required\nto only change the values of the fields as specified in the mask\nand leave the others untouched. If a resource is passed in to\ndescribe the updated values, the API ignores the values of all\nfields not covered by the mask.\n\nIf a repeated field is specified for an update operation, new values will\nbe appended to the existing repeated field in the target resource. Note that\na repeated field is only allowed in the last position of a `paths` string.\n\nIf a sub-message is specified in the last position of the field mask for an\nupdate operation, then new value will be merged into the existing sub-message\nin the target resource.\n\nFor example, given the target message:\n\n f {\n b {\n d: 1\n x: 2\n }\n c: [1]\n }\n\nAnd an update message:\n\n f {\n b {\n d: 10\n }\n c: [2]\n }\n\nthen if the field mask is:\n\n paths: [\"f.b\", \"f.c\"]\n\nthen the result will be:\n\n f {\n b {\n d: 10\n x: 2\n }\n c: [1, 2]\n }\n\nAn implementation may provide options to override this default behavior for\nrepeated and message fields.\n\nIn order to reset a field's value to the default, the field must\nbe in the mask and set to the default value in the provided resource.\nHence, in order to reset all fields of a resource, provide a default\ninstance of the resource and set all fields in the mask, or do\nnot provide a mask as described below.\n\nIf a field mask is not present on update, the operation applies to\nall fields (as if a field mask of all fields has been specified).\nNote that in the presence of schema evolution, this may mean that\nfields the client does not know and has therefore not filled into\nthe request will be reset to their default. If this is unwanted\nbehavior, a specific service may require a client to always specify\na field mask, producing an error if not.\n\nAs with get operations, the location of the resource which\ndescribes the updated values in the request message depends on the\noperation kind. In any case, the effect of the field mask is\nrequired to be honored by the API.\n\n## Considerations for HTTP REST\n\nThe HTTP kind of an update operation which uses a field mask must\nbe set to PATCH instead of PUT in order to satisfy HTTP semantics\n(PUT must only be used for full updates).\n\n# JSON Encoding of Field Masks\n\nIn JSON, a field mask is encoded as a single string where paths are\nseparated by a comma. Fields name in each path are converted\nto/from lower-camel naming conventions.\n\nAs an example, consider the following message declarations:\n\n message Profile {\n User user = 1;\n Photo photo = 2;\n }\n message User {\n string display_name = 1;\n string address = 2;\n }\n\nIn proto a field mask for `Profile` may look as such:\n\n mask {\n paths: \"user.display_name\"\n paths: \"photo\"\n }\n\nIn JSON, the same mask is represented as below:\n\n {\n mask: \"user.displayName,photo\"\n }\n\n# Field Masks and Oneof Fields\n\nField masks treat fields in oneofs just as regular fields. Consider the\nfollowing message:\n\n message SampleMessage {\n oneof test_oneof {\n string name = 4;\n SubMessage sub_message = 9;\n }\n }\n\nThe field mask can be:\n\n mask {\n paths: \"name\"\n }\n\nOr:\n\n mask {\n paths: \"sub_message\"\n }\n\nNote that oneof type names (\"test_oneof\" in this case) cannot be used in\npaths.\n\n## Field Mask Verification\n\nThe implementation of any API method which has a FieldMask type field in the\nrequest should verify the included field paths, and return an\n`INVALID_ARGUMENT` error if any path is unmappable.", + "title": "`FieldMask` represents a set of symbolic field paths, for example:" + }, + "protobufNullValue": { + "type": "string", + "enum": [ + "NULL_VALUE" + ], + "default": "NULL_VALUE", + "description": "`NullValue` is a singleton enumeration to represent the null value for the\n`Value` type union.\n\nThe JSON representation for `NullValue` is JSON `null`.\n\n - NULL_VALUE: Null value." + }, + "reconcilerReconcileCountsResponse": { + "type": "object", + "properties": { + "applicationCount": { + "type": "integer", + "format": "int32" + }, + "clusterCount": { + "type": "integer", + "format": "int32" + }, + "repositoryCount": { + "type": "integer", + "format": "int32" + }, + "repositoryCertificateCount": { + "type": "integer", + "format": "int32" + }, + "gnuPGPublicKeyCount": { + "type": "integer", + "format": "int32" + }, + "repoCredsCount": { + "type": "integer", + "format": "int32" + }, + "applicationSetCount": { + "type": "integer", + "format": "int32" + }, + "applicationPerProjectCount": { + "type": "object", + "additionalProperties": { + "type": "integer", + "format": "int32" + } + }, + "applicationSetPerProjectCount": { + "type": "object", + "additionalProperties": { + "type": "integer", + "format": "int32" + } + }, + "clusterPerProjectCount": { + "type": "object", + "additionalProperties": { + "type": "integer", + "format": "int32" + } + }, + "repositoryPerProjectCount": { + "type": "object", + "additionalProperties": { + "type": "integer", + "format": "int32" + } + } + } + }, + "repositoriesAWSSecretRef": { + "type": "object", + "properties": { + "awsAccessKeyID": { + "type": "string" + }, + "awsSecretAccessKey": { + "type": "string" + }, + "awsSessionToken": { + "type": "string" + } + } + }, + "repositoriesAppInfo": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "title": "AppInfo contains application type and app file path" + }, + "repositoriesCheckESOResponse": { + "type": "object", + "properties": { + "esoPresent": { + "type": "boolean" + } + } + }, + "repositoriesDirectoryAppSpec": { + "type": "object", + "title": "DirectoryAppSpec contains directory" + }, + "repositoriesECRAuthorizationTokenGenerator": { + "type": "object", + "properties": { + "region": { + "type": "string" + }, + "secretRef": { + "$ref": "#/components/schemas/repositoriesAWSSecretRef" + }, + "jwtAuth": { + "$ref": "#/components/schemas/repositoriesServiceAccountSelector" + }, + "role": { + "type": "string" + } + }, + "description": "ECRAuthorizationTokenSpec represents externalSecret for ECR External Secret Operator generator." + }, + "repositoriesESOGeneratorResponse": { + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/repositoriesESOGeneratorType" + }, + "ecrGen": { + "$ref": "#/components/schemas/repositoriesECRAuthorizationTokenGenerator" + }, + "gcrGen": { + "$ref": "#/components/schemas/repositoriesGCRAccessTokenGenerator" + } + } + }, + "repositoriesESOGeneratorType": { + "type": "string", + "enum": [ + "UNSET", + "AWS_ECR", + "GOOGLE_GCR" + ], + "default": "UNSET" + }, + "repositoriesGCRAccessTokenGenerator": { + "type": "object", + "properties": { + "projectID": { + "type": "string" + }, + "accessKey": { + "type": "string" + }, + "workloadIdentity": { + "$ref": "#/components/schemas/repositoriesGCRWorkloadIdentity" + } + } + }, + "repositoriesGCRWorkloadIdentity": { + "type": "object", + "properties": { + "serviceAccountRef": { + "$ref": "#/components/schemas/repositoriesServiceAccountSelector" + }, + "clusterLocation": { + "type": "string" + }, + "clusterName": { + "type": "string" + }, + "clusterProjectID": { + "type": "string" + } + } + }, + "repositoriesHelmAppSpec": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "valueFiles": { + "type": "array", + "items": { + "type": "string" + } + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsHelmParameter" + }, + "title": "the output of `helm inspect values`" + }, + "values": { + "type": "string", + "title": "the contents of values.yaml" + }, + "fileParameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsHelmFileParameter" + }, + "title": "helm file parameters" + } + }, + "title": "HelmAppSpec contains helm app name in source repo" + }, + "repositoriesHelmChart": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "versions": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "repositoriesHelmChartsResponse": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/repositoriesHelmChart" + } + } + } + }, + "repositoriesKsonnetAppSpec": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "environments": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/repositoriesKsonnetEnvironment" + } + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsKsonnetParameter" + } + } + }, + "title": "KsonnetAppSpec contains Ksonnet app response\nThis roughly reflects: ksonnet/ksonnet/metadata/app/schema.go" + }, + "repositoriesKsonnetEnvironment": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name is the user defined name of an environment" + }, + "k8sVersion": { + "type": "string", + "description": "KubernetesVersion is the kubernetes version the targeted cluster is running on." + }, + "destination": { + "$ref": "#/components/schemas/repositoriesKsonnetEnvironmentDestination" + } + } + }, + "repositoriesKsonnetEnvironmentDestination": { + "type": "object", + "properties": { + "server": { + "type": "string", + "description": "Server is the Kubernetes server that the cluster is running on." + }, + "namespace": { + "type": "string", + "title": "Namespace is the namespace of the Kubernetes server that targets should be deployed to" + } + } + }, + "repositoriesKustomizeAppSpec": { + "type": "object", + "properties": { + "images": { + "type": "array", + "items": { + "type": "string" + }, + "description": "images is a list of available images." + } + }, + "title": "KustomizeAppSpec contains kustomize images" + }, + "repositoriesManifestResponse": { + "type": "object", + "properties": { + "manifests": { + "type": "array", + "items": { + "type": "string" + } + }, + "namespace": { + "type": "string" + }, + "server": { + "type": "string" + }, + "revision": { + "type": "string", + "title": "resolved revision" + }, + "sourceType": { + "type": "string" + }, + "verifyResult": { + "type": "string", + "title": "Raw response of git verify-commit operation (always the empty string for Helm)" + } + } + }, + "repositoriesRefs": { + "type": "object", + "properties": { + "branches": { + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "title": "A subset of the repository's named refs" + }, + "repositoriesRepoAccessQuery": { + "type": "object", + "properties": { + "repo": { + "type": "string", + "title": "The URL to the repo" + }, + "username": { + "type": "string", + "title": "Username for accessing repo" + }, + "password": { + "type": "string", + "title": "Password for accessing repo" + }, + "sshPrivateKey": { + "type": "string", + "title": "Private key data for accessing SSH repository" + }, + "insecure": { + "type": "boolean", + "title": "Whether to skip certificate or host key validation" + }, + "tlsClientCertData": { + "type": "string", + "title": "TLS client cert data for accessing HTTPS repository" + }, + "tlsClientCertKey": { + "type": "string", + "title": "TLS client cert key for accessing HTTPS repository" + }, + "type": { + "type": "string", + "title": "The type of the repo" + }, + "name": { + "type": "string", + "title": "The name of the repo" + }, + "enableOci": { + "type": "boolean", + "title": "Whether helm-oci support should be enabled for this repo" + }, + "githubAppPrivateKey": { + "type": "string", + "title": "Github App Private Key PEM data" + }, + "githubAppID": { + "type": "string", + "format": "int64", + "title": "Github App ID of the app used to access the repo" + }, + "githubAppInstallationID": { + "type": "string", + "format": "int64", + "title": "Github App Installation ID of the installed GitHub App" + }, + "githubAppEnterpriseBaseUrl": { + "type": "string", + "title": "Github App Enterprise base url if empty will default to https://api.github.com" + }, + "proxy": { + "type": "string", + "title": "HTTP/HTTPS proxy to access the repository" + }, + "project": { + "type": "string", + "title": "Reference between project and repository that allow you automatically to be added as item inside SourceRepos project entity" + }, + "connectionType": { + "type": "string", + "title": "Connection type of the repository" + }, + "updateMask": { + "$ref": "#/components/schemas/protobufFieldMask" + } + }, + "title": "RepoAccessQuery is a query for checking access to a repo" + }, + "repositoriesRepoAppDetailsQuery": { + "type": "object", + "properties": { + "source": { + "$ref": "#/components/schemas/applicationsApplicationSource" + }, + "appName": { + "type": "string" + }, + "appProject": { + "type": "string" + }, + "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)" + } + }, + "title": "RepoAppDetailsQuery contains query information for app details request" + }, + "repositoriesRepoAppDetailsResponse": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "ksonnet": { + "$ref": "#/components/schemas/repositoriesKsonnetAppSpec" + }, + "helm": { + "$ref": "#/components/schemas/repositoriesHelmAppSpec" + }, + "kustomize": { + "$ref": "#/components/schemas/repositoriesKustomizeAppSpec" + }, + "directory": { + "$ref": "#/components/schemas/repositoriesDirectoryAppSpec" + } + }, + "title": "RepoAppDetailsResponse application details" + }, + "repositoriesRepoAppsQuery": { + "type": "object", + "properties": { + "repo": { + "type": "string" + }, + "revision": { + "type": "string" + }, + "appName": { + "type": "string" + }, + "appProject": { + "type": "string" + } + }, + "title": "RepoAppsQuery is a query for Repository apps" + }, + "repositoriesRepoAppsResponse": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/repositoriesAppInfo" + } + } + }, + "title": "RepoAppsResponse contains applications of specified repository" + }, + "repositoriesRepoCreateRequest": { + "type": "object", + "properties": { + "repo": { + "$ref": "#/components/schemas/repositoriesRepository" + }, + "upsert": { + "type": "boolean", + "title": "Whether to create in upsert mode" + }, + "credsOnly": { + "type": "boolean", + "title": "Whether to operate on credential set instead of repository" + }, + "genType": { + "$ref": "#/components/schemas/repositoriesESOGeneratorType" + }, + "ecrGen": { + "$ref": "#/components/schemas/repositoriesECRAuthorizationTokenGenerator" + }, + "gcrGen": { + "$ref": "#/components/schemas/repositoriesGCRAccessTokenGenerator" + }, + "refreshInterval": { + "type": "string", + "description": "refreshInterval in format 1s, 1m, 1h..." + } + }, + "title": "RepoCreateRequest is a request for creating repository config" + }, + "repositoriesRepoQuery": { + "type": "object", + "properties": { + "repo": { + "type": "string", + "title": "Repo URL for query" + }, + "forceRefresh": { + "type": "boolean", + "title": "Whether to force a cache refresh on repo's connection state" + }, + "project": { + "type": "string", + "title": "The associated project project" + } + }, + "title": "RepoQuery is a query for Repository resources" + }, + "repositoriesRepoResponse": { + "type": "object" + }, + "repositoriesRepoUpdateRequest": { + "type": "object", + "properties": { + "repo": { + "$ref": "#/components/schemas/repositoriesRepository" + }, + "updateMask": { + "$ref": "#/components/schemas/protobufFieldMask" + }, + "genType": { + "$ref": "#/components/schemas/repositoriesESOGeneratorType" + }, + "ecrGen": { + "$ref": "#/components/schemas/repositoriesECRAuthorizationTokenGenerator" + }, + "gcrGen": { + "$ref": "#/components/schemas/repositoriesGCRAccessTokenGenerator" + }, + "refreshInterval": { + "type": "string", + "description": "refreshInterval in format 1s, 1m, 1h..." + } + } + }, + "repositoriesRepository": { + "type": "object", + "properties": { + "repo": { + "type": "string", + "title": "Repo contains the URL to the remote repository" + }, + "username": { + "type": "string", + "title": "Username contains the user name used for authenticating at the remote repository" + }, + "password": { + "type": "string", + "title": "Password contains the password or PAT used for authenticating at the remote repository" + }, + "sshPrivateKey": { + "type": "string", + "description": "SSHPrivateKey contains the PEM data for authenticating at the repo server. Only used with Git repos." + }, + "connectionState": { + "$ref": "#/components/schemas/commonsConnectionState" + }, + "insecureIgnoreHostKey": { + "type": "boolean", + "title": "InsecureIgnoreHostKey should not be used anymore, Insecure is favoured\nUsed only for Git repos" + }, + "insecure": { + "type": "boolean", + "title": "Insecure specifies whether the connection to the repository ignores any errors when verifying TLS certificates or SSH host keys" + }, + "enableLfs": { + "type": "boolean", + "description": "EnableLFS specifies whether git-lfs support should be enabled for this repo. Only valid for Git repositories." + }, + "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": { + "type": "string", + "description": "Type specifies the type of the repo. Can be either \"git\" or \"helm. \"git\" is assumed if empty or absent." + }, + "name": { + "type": "string", + "title": "Name specifies a name to be used for this repo. Only used with Helm repos" + }, + "inheritedCreds": { + "type": "boolean", + "title": "Whether credentials were inherited from a credential set" + }, + "enableOCI": { + "type": "boolean", + "title": "EnableOCI specifies whether helm-oci support should be enabled for this repo" + }, + "githubAppPrivateKey": { + "type": "string", + "title": "Github App Private Key PEM data" + }, + "githubAppID": { + "type": "string", + "format": "int64", + "title": "GithubAppId specifies the ID of the GitHub app used to access the repo" + }, + "githubAppInstallationID": { + "type": "string", + "format": "int64", + "title": "GithubAppInstallationId specifies the installation ID of the GitHub App used to access the repo" + }, + "githubAppEnterpriseBaseUrl": { + "type": "string", + "title": "GithubAppEnterpriseBaseURL specifies the base URL of GitHub Enterprise installation. If empty will default to https://api.github.com" + }, + "proxy": { + "type": "string", + "title": "Proxy specifies the HTTP/HTTPS proxy used to access the repo" + }, + "project": { + "type": "string", + "title": "Reference between project and repository that allow you automatically to be added as item inside SourceRepos project entity" + }, + "connectionType": { + "type": "string", + "title": "Identifies the authentication method used to connect to the repository" + }, + "forceHttpBasicAuth": { + "type": "boolean", + "title": "ForceHttpBasicAuth specifies whether Argo CD should attempt to force basic auth for HTTP connections" + }, + "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" + } + }, + "title": "Repository is a repository holding application configurations" + }, + "repositoriesRepositoryList": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ListMeta" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/repositoriesRepository" + } + } + }, + "description": "RepositoryList is a collection of Repositories." + }, + "repositoriesRevisionMetadata": { + "type": "object", + "properties": { + "author": { + "type": "string", + "title": "who authored this revision,\ntypically their name and email, e.g. \"John Doe \",\nbut might not match this example" + }, + "date": { + "$ref": "#/components/schemas/v1Time" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Tags specifies any tags currently attached to the revision\nFloating tags can move from one revision to another" + }, + "message": { + "type": "string", + "title": "Message contains the message associated with the revision, most likely the commit message.\nThe message is truncated to the first newline or 64 characters (which ever comes first)" + }, + "signatureInfo": { + "type": "string", + "description": "SignatureInfo contains a hint on the signer if the revision was signed with GPG, and signature verification is enabled." + } + }, + "title": "RevisionMetadata contains metadata for a specific revision in a Git repository" + }, + "repositoriesServiceAccountSelector": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string" + }, + "audiences": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "resourceQuantity": { + "type": "object", + "properties": { + "string": { + "type": "string" + } + }, + "description": "Quantity is a fixed-point representation of a number.\nIt provides convenient marshaling/unmarshaling in JSON and YAML,\nin addition to String() and AsInt64() accessors.\n\nThe serialization format is:\n\n```\n ::= \n\n\t(Note that may be empty, from the \"\" case in .)\n\n ::= 0 | 1 | ... | 9\n ::= | \n ::= | . | . | .\n ::= \"+\" | \"-\"\n ::= | \n ::= | | \n ::= Ki | Mi | Gi | Ti | Pi | Ei\n\n\t(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)\n\n ::= m | \"\" | k | M | G | T | P | E\n\n\t(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)\n\n ::= \"e\" | \"E\" \n```\n\nNo matter which of the three exponent forms is used, no quantity may represent\na number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal\nplaces. Numbers larger or more precise will be capped or rounded up.\n(E.g.: 0.1m will rounded up to 1m.)\nThis may be extended in the future if we require larger or smaller quantities.\n\nWhen a Quantity is parsed from a string, it will remember the type of suffix\nit had, and will use the same type again when it is serialized.\n\nBefore serializing, Quantity will be put in \"canonical form\".\nThis means that Exponent/suffix will be adjusted up or down (with a\ncorresponding increase or decrease in Mantissa) such that:\n\n- No precision is lost\n- No fractional digits will be emitted\n- The exponent (or suffix) is as large as possible.\n\nThe sign will be omitted unless the number is negative.\n\nExamples:\n\n- 1.5 will be serialized as \"1500m\"\n- 1.5Gi will be serialized as \"1536Mi\"\n\nNote that the quantity will NEVER be internally represented by a\nfloating point number. That is the whole point of this exercise.\n\nNon-canonical values will still parse as long as they are well formed,\nbut will be re-emitted in their canonical form. (So always use canonical\nform, or don't diff.)\n\nThis format is intended to make it difficult to use these numbers without\nwriting some sort of special handling code in the hopes that that will\ncause implementors to also use a fixed point implementation.\n\n+protobuf=true\n+protobuf.embed=string\n+protobuf.options.marshal=false\n+protobuf.options.(gogoproto.goproto_stringer)=false\n+k8s:deepcopy-gen=true\n+k8s:openapi-gen=true" + }, + "runtimeStreamError": { + "type": "object", + "properties": { + "grpc_code": { + "type": "integer", + "format": "int32" + }, + "http_code": { + "type": "integer", + "format": "int32" + }, + "message": { + "type": "string" + }, + "http_status": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/protobufAny" + } + } + } + }, + "servicev1AppProjectMapping": { + "type": "object", + "properties": { + "appProjMap": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/servicev1Project" + } + } + } + }, + "servicev1Application": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "name": { + "type": "string" + }, + "clusterIdentifier": { + "type": "string" + }, + "repoIdentifier": { + "type": "string" + }, + "app": { + "$ref": "#/components/schemas/applicationsApplication" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + }, + "stale": { + "type": "boolean" + }, + "skipRepoValidation": { + "type": "boolean" + }, + "repoIdentifiers": { + "type": "array", + "items": { + "type": "string" + } + }, + "parentAppRef": { + "type": "string", + "description": "Reference of owner application (Application Set)" + } + } + }, + "servicev1ApplicationDeleteRequestOptions": { + "type": "object", + "properties": { + "removeExistingFinalizers": { + "type": "boolean" + } + } + }, + "servicev1ApplicationPatchRequest": { + "type": "object", + "properties": { + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "request": { + "$ref": "#/components/schemas/applicationsApplicationPatchRequest" + } + } + }, + "servicev1ApplicationQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "searchTerm": { + "type": "string" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "filter": { + "type": "object", + "description": "Filters for Application. Eg. \"app.status.sync.status\": \"Synced\" or \"app.status.sync.status\": { \"$in\": [\"Synced\", \"NotSynced\"]" + }, + "sortBy": { + "$ref": "#/components/schemas/ApplicationQueryApplicationSortByOptions" + }, + "sortOrder": { + "$ref": "#/components/schemas/v1SortOrderOptions" + }, + "metadataOnly": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "servicev1ApplicationSet": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "UUID for the Application Set." + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + }, + "owner": { + "type": "string" + }, + "appset": { + "$ref": "#/components/schemas/applicationsApplicationSet" + } + } + }, + "servicev1ApplicationSetList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/servicev1ApplicationSet" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "servicev1Applicationlist": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/servicev1Application" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "servicev1Cluster": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "identifier": { + "type": "string" + }, + "cluster": { + "$ref": "#/components/schemas/clustersCluster" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + }, + "stale": { + "type": "boolean" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "servicev1ClusterQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "identifier": { + "type": "string" + }, + "searchTerm": { + "type": "string" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "filter": { + "type": "object", + "description": "Filters for Clusters. Eg. \"identifier\": { \"$in\": [\"id1\", \"id2\"]" + }, + "sortBy": { + "$ref": "#/components/schemas/ClusterQueryClusterSortByOptions" + }, + "sortOrder": { + "$ref": "#/components/schemas/v1SortOrderOptions" + } + } + }, + "servicev1GnuPGPublicKeyList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Gnupg" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "servicev1HealthStatus": { + "type": "string", + "enum": [ + "HEALTH_STATUS_UNSET", + "HEALTHY", + "UNHEALTHY" + ], + "default": "HEALTH_STATUS_UNSET" + }, + "servicev1Project": { + "type": "object", + "properties": { + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + } + } + }, + "servicev1ReconcilerFilter": { + "type": "object", + "properties": { + "projectNames": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "servicev1Repository": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "identifier": { + "type": "string" + }, + "repository": { + "$ref": "#/components/schemas/repositoriesRepository" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + }, + "stale": { + "type": "boolean" + }, + "repositoryCredentialsId": { + "type": "string" + } + } + }, + "servicev1RepositoryCertificate": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "cert": { + "$ref": "#/components/schemas/certificatesRepositoryCertificate" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + } + } + }, + "servicev1RepositoryCredentials": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "identifier": { + "type": "string" + }, + "repoCreds": { + "$ref": "#/components/schemas/hrepocredsRepoCreds" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + }, + "stale": { + "type": "boolean" + } + } + }, + "servicev1RepositoryCredentialsList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/servicev1RepositoryCredentials" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1AWSElasticBlockStoreVolumeSource": { + "type": "object", + "properties": { + "volumeID": { + "type": "string", + "title": "volumeID is unique ID of the persistent disk resource in AWS (Amazon EBS volume).\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore" + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore\nTODO: how do we prevent errors in the filesystem from compromising the machine\n+optional" + }, + "partition": { + "type": "integer", + "format": "int32", + "title": "partition is the partition in the volume that you want to mount.\nIf omitted, the default is to mount by volume name.\nExamples: For volume /dev/sda1, you specify the partition as \"1\".\nSimilarly, the volume partition for /dev/sda is \"0\" (or you can leave the property empty).\n+optional" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly value true will force the readOnly setting in VolumeMounts.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore\n+optional" + } + }, + "description": "Represents a Persistent Disk resource in AWS.\n\nAn AWS EBS disk must exist before mounting to a container. The disk\nmust also be in the same AWS zone as the kubelet. An AWS EBS disk\ncan only be mounted as read/write once. AWS EBS volumes support\nownership management and SELinux relabeling." + }, + "v1Affinity": { + "type": "object", + "properties": { + "nodeAffinity": { + "$ref": "#/components/schemas/v1NodeAffinity" + }, + "podAffinity": { + "$ref": "#/components/schemas/v1PodAffinity" + }, + "podAntiAffinity": { + "$ref": "#/components/schemas/v1PodAntiAffinity" + } + }, + "description": "Affinity is a group of affinity scheduling rules." + }, + "v1Agent": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity.", + "title": "The ID of the Harness Account that this gitops-agent belongs to" + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity.", + "title": "The ID of the Harness Project that this gitops-agent belongs to" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity.", + "title": "The ID of the Harness Organization that this gitops-agent belongs to" + }, + "identifier": { + "type": "string", + "title": "The gitops-server generated ID for this gitops-agent" + }, + "name": { + "type": "string", + "title": "A human readable name for the gitops-agent" + }, + "metadata": { + "$ref": "#/components/schemas/v1AgentMetadata" + }, + "description": { + "type": "string", + "title": "A human readable description for the gitops-agent" + }, + "type": { + "$ref": "#/components/schemas/v1AgentType" + }, + "createdAt": { + "$ref": "#/components/schemas/v1Time" + }, + "lastModifiedAt": { + "$ref": "#/components/schemas/v1Time" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Tags that help organize gitops-agents" + }, + "health": { + "$ref": "#/components/schemas/v1AgentHealth" + }, + "credentials": { + "$ref": "#/components/schemas/v1AgentCredentials" + }, + "version": { + "$ref": "#/components/schemas/v1SemanticVersion" + }, + "upgradeAvailable": { + "type": "boolean", + "title": "Indicates whether this agent has an upgrade available (i.e. the version of this gitops-agent is not the latest released)" + }, + "scope": { + "$ref": "#/components/schemas/v1AgentScope" + }, + "disasterRecoveryNode": { + "$ref": "#/components/schemas/v1DisasterRecoveryNode" + }, + "isPLG": { + "type": "boolean", + "description": "Indicates if the agent is for PLG." + }, + "operator": { + "$ref": "#/components/schemas/v1AgentOperator" + }, + "prefixedIdentifier": { + "type": "string", + "description": "The scoped identifier of the agent. This is a combination of the account, org, project, and agent identifiers." + } + }, + "title": "A gitops-agent" + }, + "v1AgentComponentHealth": { + "type": "object", + "properties": { + "status": { + "$ref": "#/components/schemas/servicev1HealthStatus" + }, + "k8sError": { + "type": "string" + }, + "message": { + "type": "string" + }, + "version": { + "type": "string" + } + } + }, + "v1AgentCredentials": { + "type": "object", + "properties": { + "privateKey": { + "type": "string" + }, + "publicKey": { + "type": "string" + } + } + }, + "v1AgentHealth": { + "type": "object", + "properties": { + "lastHeartbeat": { + "type": "string", + "format": "date-time", + "title": "The last time the agent sent a HeartbeatRequest" + }, + "argoRepoServer": { + "$ref": "#/components/schemas/v1AgentComponentHealth" + }, + "argoAppController": { + "$ref": "#/components/schemas/v1AgentComponentHealth" + }, + "argoRedisServer": { + "$ref": "#/components/schemas/v1AgentComponentHealth" + }, + "harnessGitopsAgent": { + "$ref": "#/components/schemas/v1AgentComponentHealth" + }, + "connectionStatus": { + "$ref": "#/components/schemas/v1ConnectedStatus" + }, + "argoAppSetController": { + "$ref": "#/components/schemas/v1AgentComponentHealth" + } + } + }, + "v1AgentList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Agent" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1AgentMetadata": { + "type": "object", + "properties": { + "namespace": { + "type": "string", + "title": "The k8s namespace that this agent resides in" + }, + "highAvailability": { + "type": "boolean", + "title": "Whether or not this deployment should be deployed using deploy-ha.yaml" + }, + "deployedApplicationCount": { + "type": "integer", + "format": "int32", + "title": "Number of Deployed Applications" + }, + "existingInstallation": { + "type": "boolean", + "title": "If the agent is running in an existing argo installation" + }, + "mappedProjects": { + "$ref": "#/components/schemas/servicev1AppProjectMapping" + }, + "infraType": { + "$ref": "#/components/schemas/v1ClusterInfraType" + }, + "isNamespaced": { + "type": "boolean" + } + } + }, + "v1AgentOperator": { + "type": "string", + "enum": [ + "UNKNOWN", + "ARGO", + "FLAMINGO" + ], + "default": "UNKNOWN" + }, + "v1AgentQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/v1AgentType" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "searchTerm": { + "type": "string" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "scope": { + "$ref": "#/components/schemas/v1AgentScope" + }, + "filter": { + "type": "object", + "description": "Filters for Agents." + }, + "drIdentifier": { + "type": "string" + }, + "sortBy": { + "$ref": "#/components/schemas/AgentQueryAgentSortByOptions" + }, + "sortOrder": { + "$ref": "#/components/schemas/v1SortOrderOptions" + }, + "metadataOnly": { + "type": "boolean" + }, + "ignoreScope": { + "type": "boolean" + }, + "connectedStatus": { + "$ref": "#/components/schemas/v1ConnectedStatus" + }, + "healthStatus": { + "$ref": "#/components/schemas/servicev1HealthStatus" + }, + "withCredentials": { + "type": "boolean", + "description": "Applicable when trying to retrieve an agent. Set to true to include the credentials for the agent in the response. (Private key may not be included in response if agent is already connected to harness). NOTE: Setting this to true requires the user to have edit permissions on Agent." + }, + "includeSecondary": { + "type": "boolean" + }, + "mappedProjects": { + "$ref": "#/components/schemas/servicev1AppProjectMapping" + } + } + }, + "v1AgentScaleRequest": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "identifier": { + "type": "string" + }, + "type": { + "type": "string" + }, + "replicas": { + "type": "integer", + "format": "int32" + } + } + }, + "v1AgentScope": { + "type": "string", + "enum": [ + "AGENT_SCOPE_UNSET", + "ACCOUNT", + "ORG", + "PROJECT" + ], + "default": "AGENT_SCOPE_UNSET" + }, + "v1AgentSetPrimaryNodeRequest": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "disasterRecoveryIdentifier": { + "type": "string", + "description": "Disaster Recovery Identifier for entity." + }, + "disableSyncWindows": { + "type": "boolean", + "description": "Disable sync windows for the new primary agent." + } + } + }, + "v1AgentType": { + "type": "string", + "enum": [ + "AGENT_TYPE_UNSET", + "CONNECTED_ARGO_PROVIDER", + "MANAGED_ARGO_PROVIDER", + "HOSTED_ARGO_PROVIDER" + ], + "default": "AGENT_TYPE_UNSET", + "description": "AgentType is the type of agent. CONNECTED_ARGO_PROVIDER is deprecated and will be removed in a future release.\n\nPlease use type \"MANAGED_ARGO_PROVIDER\" to create your agents.\n\n\"MANAGED_ARGO_PROVIDER\" agents are user managed agents and \"HOSTED_ARGO_PROVIDER\" agents are Harness managed agents(these cannot be created by users directly)." + }, + "v1AgentYamlQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "namespace": { + "type": "string" + }, + "disasterRecoveryIdentifier": { + "type": "string", + "description": "Disaster Recovery Identifier for entity." + }, + "skipCrds": { + "type": "boolean" + }, + "caData": { + "type": "string", + "description": "Certificate chain for the agent, must be base64 encoded." + }, + "proxy": { + "$ref": "#/components/schemas/v1Proxy" + }, + "privateKey": { + "type": "string" + }, + "argocdSettings": { + "$ref": "#/components/schemas/v1ArgoCDSettings" + } + } + }, + "v1AnalysisRunArgument": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name argument name" + }, + "value": { + "type": "string", + "title": "Value a hardcoded value for the argument. This field is a one of field with valueFrom" + }, + "valueFrom": { + "$ref": "#/components/schemas/v1ArgumentValueFrom" + } + }, + "title": "AnalysisRunArgument argument to add to analysisRun" + }, + "v1AnalysisRunMetadata": { + "type": "object", + "properties": { + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Labels Additional labels to add to the AnalysisRun\n+optional" + }, + "annotations": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Annotations additional annotations to add to the AnalysisRun\n+optional" + } + }, + "title": "AnalysisRunMetadata extra labels to add to the AnalysisRun" + }, + "v1AppArmorProfile": { + "type": "object", + "properties": { + "type": { + "type": "string", + "title": "type indicates which kind of AppArmor profile will be applied.\nValid options are:\n Localhost - a profile pre-loaded on the node.\n RuntimeDefault - the container runtime's default profile.\n Unconfined - no AppArmor enforcement.\n+unionDiscriminator" + }, + "localhostProfile": { + "type": "string", + "title": "localhostProfile indicates a profile loaded on the node that should be used.\nThe profile must be preconfigured on the node to work.\nMust match the loaded name of the profile.\nMust be set if and only if type is \"Localhost\".\n+optional" + } + }, + "title": "AppArmorProfile defines a pod or container's AppArmor settings.\n+union" + }, + "v1AppProjectMappingCreateRequestV2": { + "type": "object", + "properties": { + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "argoProjectName": { + "type": "string" + } + } + }, + "v1AppProjectMappingQueryV2": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "app project mapping identifier." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "argoProjectName": { + "type": "string" + } + } + }, + "v1AppProjectMappingV2": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "ArgoProjectName": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "accountIdentifier": { + "type": "string" + }, + "agentIdentifier": { + "type": "string" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + } + } + }, + "v1AppProjectMappingV2List": { + "type": "object", + "properties": { + "appProjectMappings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1AppProjectMappingV2" + } + } + } + }, + "v1ApplicationAttributes": { + "type": "object", + "properties": { + "applicationIdentifier": { + "type": "string" + }, + "attributes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "v1ApplicationAttributesList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ApplicationAttributes" + } + } + } + }, + "v1ApplicationSetGeneratorList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/applicationsApplicationSetGenerator" + } + } + } + }, + "v1ApplicationSetQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "searchTerm": { + "type": "string" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "filter": { + "type": "object", + "description": "Filters for ApplicationSet. Eg. \"app.status.sync.status\": \"Synced\" or \"app.status.sync.status\": { \"$in\": [\"Synced\", \"NotSynced\"]" + }, + "sortBy": { + "$ref": "#/components/schemas/ApplicationSetQueryApplicationSetSortByOptions" + }, + "sortOrder": { + "$ref": "#/components/schemas/v1SortOrderOptions" + }, + "metadataOnly": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "v1ApplicationStatusCounts": { + "type": "object", + "properties": { + "total": { + "type": "integer", + "format": "int32" + }, + "healthStatusCounts": { + "$ref": "#/components/schemas/v1HealthStatusCounts" + }, + "syncStatusCounts": { + "$ref": "#/components/schemas/v1SyncStatusCounts" + } + } + }, + "v1ApplicationSyncStatus": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "applicationName": { + "type": "string" + }, + "syncStatus": { + "$ref": "#/components/schemas/applicationsSyncStatus" + }, + "createdAt": { + "type": "string", + "format": "int64" + }, + "lastModifiedAt": { + "type": "string", + "format": "int64" + }, + "operationState": { + "$ref": "#/components/schemas/applicationsOperationState" + }, + "reqIdentifier": { + "type": "string" + }, + "lastKnownRevisionId": { + "type": "string", + "format": "int64" + }, + "syncedBy": { + "$ref": "#/components/schemas/v1User" + }, + "autoSyncCount": { + "type": "integer", + "format": "int32" + }, + "serviceRef": { + "type": "string" + }, + "envRef": { + "type": "string" + } + } + }, + "v1ApplicationSyncStatusQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "applicationName": { + "type": "string" + }, + "searchTerm": { + "type": "string" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "endTime": { + "type": "integer", + "format": "int32" + }, + "startTime": { + "type": "integer", + "format": "int32" + }, + "operationPhase": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1OperationPhase" + } + }, + "serviceRef": { + "type": "string" + }, + "envRef": { + "type": "string" + } + } + }, + "v1ApplicationSyncStatuslist": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ApplicationSyncStatus" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1ArgoCDSettings": { + "type": "object", + "properties": { + "enableHelmPathTraversal": { + "type": "boolean", + "description": "Controls the Environment variable HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny dot-dot-slash values file paths. Disabled by default for security reasons. This config is pushed as an env variable to the repo-server." + } + } + }, + "v1ArgumentValueFrom": { + "type": "object", + "properties": { + "podTemplateHashValue": { + "type": "string", + "title": "PodTemplateHashValue gets the value from one of the children ReplicaSet's Pod Template Hash" + }, + "fieldRef": { + "$ref": "#/components/schemas/v1FieldRef" + } + }, + "title": "ArgumentValueFrom defines references to fields within resources to grab for the value (i.e. Pod Template Hash)" + }, + "v1AzureDiskVolumeSource": { + "type": "object", + "properties": { + "diskName": { + "type": "string", + "title": "diskName is the Name of the data disk in the blob storage" + }, + "diskURI": { + "type": "string", + "title": "diskURI is the URI of data disk in the blob storage" + }, + "cachingMode": { + "type": "string", + "title": "cachingMode is the Host Caching mode: None, Read Only, Read Write.\n+optional\n+default=ref(AzureDataDiskCachingReadWrite)" + }, + "fsType": { + "type": "string", + "title": "fsType is Filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\n+optional\n+default=\"ext4\"" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly Defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\n+optional\n+default=false" + }, + "kind": { + "type": "string", + "title": "kind expected values are Shared: multiple blob disks per storage account Dedicated: single blob disk per storage account Managed: azure managed data disk (only in managed availability set). defaults to shared\n+default=ref(AzureSharedBlobDisk)" + } + }, + "description": "AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod." + }, + "v1AzureFileVolumeSource": { + "type": "object", + "properties": { + "secretName": { + "type": "string", + "title": "secretName is the name of secret that contains Azure Storage Account Name and Key" + }, + "shareName": { + "type": "string", + "title": "shareName is the azure share Name" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\n+optional" + } + }, + "description": "AzureFile represents an Azure File Service mount on the host and bind mount to the pod." + }, + "v1CSIVolumeSource": { + "type": "object", + "properties": { + "driver": { + "type": "string", + "description": "driver is the name of the CSI driver that handles this volume.\nConsult with your admin for the correct name as registered in the cluster." + }, + "readOnly": { + "type": "boolean", + "title": "readOnly specifies a read-only configuration for the volume.\nDefaults to false (read/write).\n+optional" + }, + "fsType": { + "type": "string", + "title": "fsType to mount. Ex. \"ext4\", \"xfs\", \"ntfs\".\nIf not provided, the empty value is passed to the associated CSI driver\nwhich will determine the default filesystem to apply.\n+optional" + }, + "volumeAttributes": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "volumeAttributes stores driver-specific properties that are passed to the CSI\ndriver. Consult your driver's documentation for supported values.\n+optional" + }, + "nodePublishSecretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + } + }, + "title": "Represents a source location of a volume to mount, managed by an external CSI driver" + }, + "v1CanaryStep": { + "type": "object", + "properties": { + "setWeight": { + "type": "integer", + "format": "int32", + "title": "SetWeight sets what percentage of the newRS should receive" + }, + "pause": { + "$ref": "#/components/schemas/v1RolloutPause" + }, + "experiment": { + "$ref": "#/components/schemas/v1RolloutExperimentStep" + }, + "analysis": { + "$ref": "#/components/schemas/v1RolloutAnalysis" + }, + "setCanaryScale": { + "$ref": "#/components/schemas/v1SetCanaryScale" + }, + "setHeaderRoute": { + "$ref": "#/components/schemas/v1SetHeaderRoute" + }, + "setMirrorRoute": { + "$ref": "#/components/schemas/v1SetMirrorRoute" + } + }, + "description": "CanaryStep defines a step of a canary deployment." + }, + "v1Capabilities": { + "type": "object", + "properties": { + "add": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Added capabilities\n+optional\n+listType=atomic" + }, + "drop": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Removed capabilities\n+optional\n+listType=atomic" + } + }, + "description": "Adds and removes POSIX capabilities from running containers." + }, + "v1CephFSVolumeSource": { + "type": "object", + "properties": { + "monitors": { + "type": "array", + "items": { + "type": "string" + }, + "title": "monitors is Required: Monitors is a collection of Ceph monitors\nMore info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it\n+listType=atomic" + }, + "path": { + "type": "string", + "title": "path is Optional: Used as the mounted root, rather than the full Ceph tree, default is /\n+optional" + }, + "user": { + "type": "string", + "title": "user is optional: User is the rados user name, default is admin\nMore info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it\n+optional" + }, + "secretFile": { + "type": "string", + "title": "secretFile is Optional: SecretFile is the path to key ring for User, default is /etc/ceph/user.secret\nMore info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it\n+optional" + }, + "secretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly is Optional: Defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\nMore info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it\n+optional" + } + }, + "description": "Represents a Ceph Filesystem mount that lasts the lifetime of a pod\nCephfs volumes do not support ownership management or SELinux relabeling." + }, + "v1Certificatelist": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/servicev1RepositoryCertificate" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1CinderVolumeSource": { + "type": "object", + "properties": { + "volumeID": { + "type": "string", + "title": "volumeID used to identify the volume in cinder.\nMore info: https://examples.k8s.io/mysql-cinder-pd/README.md" + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://examples.k8s.io/mysql-cinder-pd/README.md\n+optional" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\nMore info: https://examples.k8s.io/mysql-cinder-pd/README.md\n+optional" + }, + "secretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + } + }, + "description": "Represents a cinder volume resource in Openstack.\nA Cinder volume must exist before mounting to a container.\nThe volume must also be in the same region as the kubelet.\nCinder volumes support ownership management and SELinux relabeling." + }, + "v1CloudWatchMetric": { + "type": "object", + "properties": { + "interval": { + "type": "string" + }, + "metricDataQueries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1CloudWatchMetricDataQuery" + } + } + }, + "title": "CloudWatchMetric defines the cloudwatch query to perform canary analysis" + }, + "v1CloudWatchMetricDataQuery": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "expression": { + "type": "string" + }, + "label": { + "type": "string" + }, + "metricStat": { + "$ref": "#/components/schemas/v1CloudWatchMetricStat" + }, + "period": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "returnData": { + "type": "boolean" + } + }, + "title": "CloudWatchMetricDataQuery defines the cloudwatch query" + }, + "v1CloudWatchMetricStat": { + "type": "object", + "properties": { + "metric": { + "$ref": "#/components/schemas/v1CloudWatchMetricStatMetric" + }, + "period": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "stat": { + "type": "string" + }, + "unit": { + "type": "string" + } + } + }, + "v1CloudWatchMetricStatMetric": { + "type": "object", + "properties": { + "dimensions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1CloudWatchMetricStatMetricDimension" + } + }, + "metricName": { + "type": "string" + }, + "namespace": { + "type": "string" + } + } + }, + "v1CloudWatchMetricStatMetricDimension": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "v1ClusterInfraType": { + "type": "string", + "enum": [ + "UNSET", + "OPENSHIFT" + ], + "default": "UNSET", + "title": "Agent destination cluster type" + }, + "v1ClusterTrustBundleProjection": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Select a single ClusterTrustBundle by object name. Mutually-exclusive\nwith signerName and labelSelector.\n+optional" + }, + "signerName": { + "type": "string", + "title": "Select all ClusterTrustBundles that match this signer name.\nMutually-exclusive with name. The contents of all selected\nClusterTrustBundles will be unified and deduplicated.\n+optional" + }, + "labelSelector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "optional": { + "type": "boolean", + "title": "If true, don't block pod startup if the referenced ClusterTrustBundle(s)\naren't available. If using name, then the named ClusterTrustBundle is\nallowed not to exist. If using signerName, then the combination of\nsignerName and labelSelector is allowed to match zero\nClusterTrustBundles.\n+optional" + }, + "path": { + "type": "string", + "description": "Relative path from the volume root to write the bundle." + } + }, + "description": "ClusterTrustBundleProjection describes how to select a set of\nClusterTrustBundle objects and project their contents into the pod\nfilesystem." + }, + "v1Clusterlist": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/servicev1Cluster" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1ConfigMapEnvSource": { + "type": "object", + "properties": { + "localObjectReference": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "optional": { + "type": "boolean", + "title": "Specify whether the ConfigMap must be defined\n+optional" + } + }, + "description": "ConfigMapEnvSource selects a ConfigMap to populate the environment\nvariables with.\n\nThe contents of the target ConfigMap's Data field will represent the\nkey-value pairs as environment variables." + }, + "v1ConfigMapKeySelector": { + "type": "object", + "properties": { + "localObjectReference": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "key": { + "type": "string", + "description": "The key to select." + }, + "optional": { + "type": "boolean", + "title": "Specify whether the ConfigMap or its key must be defined\n+optional" + } + }, + "title": "Selects a key from a ConfigMap.\n+structType=atomic" + }, + "v1ConfigMapProjection": { + "type": "object", + "properties": { + "localObjectReference": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1KeyToPath" + }, + "title": "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'.\n+optional\n+listType=atomic" + }, + "optional": { + "type": "boolean", + "title": "optional specify whether the ConfigMap or its keys must be defined\n+optional" + } + }, + "description": "Adapts a ConfigMap into a projected volume.\n\nThe contents of the target ConfigMap's Data field will be presented in a\nprojected volume as files using the keys in the Data field as the file names,\nunless the items element is populated with specific mappings of keys to paths.\nNote that this is identical to a configmap volume source without the default\nmode." + }, + "v1ConfigMapVolumeSource": { + "type": "object", + "properties": { + "localObjectReference": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1KeyToPath" + }, + "title": "items if unspecified, each key-value pair in the Data field of the referenced\nConfigMap will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the ConfigMap,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'.\n+optional\n+listType=atomic" + }, + "defaultMode": { + "type": "integer", + "format": "int32", + "title": "defaultMode is optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set.\n+optional" + }, + "optional": { + "type": "boolean", + "title": "optional specify whether the ConfigMap or its keys must be defined\n+optional" + } + }, + "description": "Adapts a ConfigMap into a volume.\n\nThe contents of the target ConfigMap's Data field will be presented in a\nvolume as files using the keys in the Data field as the file names, unless\nthe items element is populated with specific mappings of keys to paths.\nConfigMap volumes support ownership management and SELinux relabeling." + }, + "v1ConnectedStatus": { + "type": "string", + "enum": [ + "CONNECTED_STATUS_UNSET", + "CONNECTED", + "DISCONNECTED" + ], + "default": "CONNECTED_STATUS_UNSET" + }, + "v1Container": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the container specified as a DNS_LABEL.\nEach container in a pod must have a unique name (DNS_LABEL).\nCannot be updated." + }, + "image": { + "type": "string", + "title": "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets.\n+optional" + }, + "command": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Entrypoint array. Not executed within a shell.\nThe container image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell\n+optional\n+listType=atomic" + }, + "args": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Arguments to the entrypoint.\nThe container image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell\n+optional\n+listType=atomic" + }, + "workingDir": { + "type": "string", + "title": "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated.\n+optional" + }, + "ports": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ContainerPort" + }, + "title": "List of ports to expose from the container. Not specifying a port here\nDOES NOT prevent that port from being exposed. Any port which is\nlistening on the default \"0.0.0.0\" address inside a container will be\naccessible from the network.\nModifying this array with strategic merge patch may corrupt the data.\nFor more information See https://github.com/kubernetes/kubernetes/issues/108255.\nCannot be updated.\n+optional\n+patchMergeKey=containerPort\n+patchStrategy=merge\n+listType=map\n+listMapKey=containerPort\n+listMapKey=protocol" + }, + "envFrom": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1EnvFromSource" + }, + "title": "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated.\n+optional\n+listType=atomic" + }, + "env": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1EnvVar" + }, + "title": "List of environment variables to set in the container.\nCannot be updated.\n+optional\n+patchMergeKey=name\n+patchStrategy=merge\n+listType=map\n+listMapKey=name" + }, + "resources": { + "$ref": "#/components/schemas/v1ResourceRequirements" + }, + "resizePolicy": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ContainerResizePolicy" + }, + "title": "Resources resize policy for the container.\n+featureGate=InPlacePodVerticalScaling\n+optional\n+listType=atomic" + }, + "restartPolicy": { + "type": "string", + "title": "RestartPolicy defines the restart behavior of individual containers in a pod.\nThis field may only be set for init containers, and the only allowed value is \"Always\".\nFor non-init containers or when this field is not specified,\nthe restart behavior is defined by the Pod's restart policy and the container type.\nSetting the RestartPolicy as \"Always\" for the init container will have the following effect:\nthis init container will be continually restarted on\nexit until all regular containers have terminated. Once all regular\ncontainers have completed, all init containers with restartPolicy \"Always\"\nwill be shut down. This lifecycle differs from normal init containers and\nis often referred to as a \"sidecar\" container. Although this init\ncontainer still starts in the init container sequence, it does not wait\nfor the container to complete before proceeding to the next init\ncontainer. Instead, the next init container starts immediately after this\ninit container is started, or after any startupProbe has successfully\ncompleted.\n+featureGate=SidecarContainers\n+optional" + }, + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1VolumeMount" + }, + "title": "Pod volumes to mount into the container's filesystem.\nCannot be updated.\n+optional\n+patchMergeKey=mountPath\n+patchStrategy=merge\n+listType=map\n+listMapKey=mountPath" + }, + "volumeDevices": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1VolumeDevice" + }, + "title": "volumeDevices is the list of block devices to be used by the container.\n+patchMergeKey=devicePath\n+patchStrategy=merge\n+listType=map\n+listMapKey=devicePath\n+optional" + }, + "livenessProbe": { + "$ref": "#/components/schemas/v1Probe" + }, + "readinessProbe": { + "$ref": "#/components/schemas/v1Probe" + }, + "startupProbe": { + "$ref": "#/components/schemas/v1Probe" + }, + "lifecycle": { + "$ref": "#/components/schemas/v1Lifecycle" + }, + "terminationMessagePath": { + "type": "string", + "title": "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated.\n+optional" + }, + "terminationMessagePolicy": { + "type": "string", + "title": "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated.\n+optional" + }, + "imagePullPolicy": { + "type": "string", + "title": "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images\n+optional" + }, + "securityContext": { + "$ref": "#/components/schemas/v1SecurityContext" + }, + "stdin": { + "type": "boolean", + "title": "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false.\n+optional" + }, + "stdinOnce": { + "type": "boolean", + "title": "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false\n+optional" + }, + "tty": { + "type": "boolean", + "title": "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false.\n+optional" + } + }, + "description": "A single application container that you want to run within a pod." + }, + "v1ContainerPort": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each\nnamed port in a pod must have a unique name. Name for the port that can be\nreferred to by services.\n+optional" + }, + "hostPort": { + "type": "integer", + "format": "int32", + "title": "Number of port to expose on the host.\nIf specified, this must be a valid port number, 0 < x < 65536.\nIf HostNetwork is specified, this must match ContainerPort.\nMost containers do not need this.\n+optional" + }, + "containerPort": { + "type": "integer", + "format": "int32", + "description": "Number of port to expose on the pod's IP address.\nThis must be a valid port number, 0 < x < 65536." + }, + "protocol": { + "type": "string", + "title": "Protocol for port. Must be UDP, TCP, or SCTP.\nDefaults to \"TCP\".\n+optional\n+default=\"TCP\"" + }, + "hostIP": { + "type": "string", + "title": "What host IP to bind the external port to.\n+optional" + } + }, + "description": "ContainerPort represents a network port in a single container." + }, + "v1ContainerResizePolicy": { + "type": "object", + "properties": { + "resourceName": { + "type": "string", + "description": "Name of the resource to which this resource resize policy applies.\nSupported values: cpu, memory." + }, + "restartPolicy": { + "type": "string", + "description": "Restart policy to apply when specified resource is resized.\nIf not specified, it defaults to NotRequired." + } + }, + "description": "ContainerResizePolicy represents resource resize policy for the container." + }, + "v1DashboardOverview": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "applicationStatusCounts": { + "$ref": "#/components/schemas/v1ApplicationStatusCounts" + }, + "repositoryCount": { + "type": "integer", + "format": "int32" + }, + "applicationCount": { + "type": "integer", + "format": "int32" + }, + "clusterCount": { + "type": "integer", + "format": "int32" + } + } + }, + "v1DatadogMetric": { + "type": "object", + "properties": { + "interval": { + "type": "string" + }, + "query": { + "type": "string" + }, + "apiVersion": { + "type": "string", + "description": "ApiVersion refers to the Datadog API version being used (default: v1). v1 will eventually be deprecated." + } + } + }, + "v1DeploymentsDetails": { + "type": "object", + "properties": { + "startedAt": { + "type": "string" + }, + "rollback": { + "type": "integer", + "format": "int32" + }, + "deploy": { + "type": "integer", + "format": "int32" + }, + "redeploy": { + "type": "integer", + "format": "int32" + }, + "succeeded": { + "type": "integer", + "format": "int32" + }, + "error": { + "type": "integer", + "format": "int32" + }, + "terminating": { + "type": "integer", + "format": "int32" + }, + "failed": { + "type": "integer", + "format": "int32" + }, + "running": { + "type": "integer", + "format": "int32" + }, + "totalDeployments": { + "type": "integer", + "format": "int32" + }, + "failureRate": { + "type": "number", + "format": "double" + } + } + }, + "v1DisasterRecoveryNode": { + "type": "object", + "properties": { + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/v1DisasterRecoveryType" + } + } + }, + "v1DisasterRecoveryType": { + "type": "string", + "enum": [ + "UNKNOWN_TYPE", + "PRIMARY", + "SECONDARY" + ], + "default": "UNKNOWN_TYPE" + }, + "v1DownloadResponse": { + "type": "object", + "properties": { + "chunk": { + "type": "string", + "format": "byte" + } + } + }, + "v1DownwardAPIProjection": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1DownwardAPIVolumeFile" + }, + "title": "Items is a list of DownwardAPIVolume file\n+optional\n+listType=atomic" + } + }, + "description": "Represents downward API info for projecting into a projected volume.\nNote that this is identical to a downwardAPI volume source without the default\nmode." + }, + "v1DownwardAPIVolumeFile": { + "type": "object", + "properties": { + "path": { + "type": "string", + "title": "Required: Path is the relative path name of the file to be created. Must not be absolute or contain the '..' path. Must be utf-8 encoded. The first item of the relative path must not start with '..'" + }, + "fieldRef": { + "$ref": "#/components/schemas/v1ObjectFieldSelector" + }, + "resourceFieldRef": { + "$ref": "#/components/schemas/v1ResourceFieldSelector" + }, + "mode": { + "type": "integer", + "format": "int32", + "title": "Optional: mode bits used to set permissions on this file, must be an octal value\nbetween 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set.\n+optional" + } + }, + "title": "DownwardAPIVolumeFile represents information to create the file containing the pod field" + }, + "v1DownwardAPIVolumeSource": { + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1DownwardAPIVolumeFile" + }, + "title": "Items is a list of downward API volume file\n+optional\n+listType=atomic" + }, + "defaultMode": { + "type": "integer", + "format": "int32", + "title": "Optional: mode bits to use on created files by default. Must be a\nOptional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDefaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set.\n+optional" + } + }, + "description": "DownwardAPIVolumeSource represents a volume containing downward API info.\nDownward API volumes support ownership management and SELinux relabeling." + }, + "v1DryRun": { + "type": "object", + "properties": { + "metricName": { + "type": "string", + "description": "Name of the metric which needs to be evaluated in the Dry-Run mode. Wildcard '*' is supported and denotes all\nthe available metrics." + } + }, + "description": "DryRun defines the settings for running the analysis in Dry-Run mode." + }, + "v1Empty": { + "type": "object" + }, + "v1EmptyDirVolumeSource": { + "type": "object", + "properties": { + "medium": { + "type": "string", + "title": "medium represents what type of storage medium should back this directory.\nThe default is \"\" which means to use the node's default medium.\nMust be an empty string (default) or Memory.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir\n+optional" + }, + "sizeLimit": { + "$ref": "#/components/schemas/resourceQuantity" + } + }, + "description": "Represents an empty directory for a pod.\nEmpty directory volumes support ownership management and SELinux relabeling." + }, + "v1Enabled": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "v1EnvFromSource": { + "type": "object", + "properties": { + "prefix": { + "type": "string", + "title": "An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER.\n+optional" + }, + "configMapRef": { + "$ref": "#/components/schemas/v1ConfigMapEnvSource" + }, + "secretRef": { + "$ref": "#/components/schemas/v1SecretEnvSource" + } + }, + "title": "EnvFromSource represents the source of a set of ConfigMaps" + }, + "v1EnvVar": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the environment variable. Must be a C_IDENTIFIER." + }, + "value": { + "type": "string", + "title": "Variable references $(VAR_NAME) are expanded\nusing the previously defined environment variables in the container and\nany service environment variables. If a variable cannot be resolved,\nthe reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e.\n\"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".\nEscaped references will never be expanded, regardless of whether the variable\nexists or not.\nDefaults to \"\".\n+optional" + }, + "valueFrom": { + "$ref": "#/components/schemas/v1EnvVarSource" + } + }, + "description": "EnvVar represents an environment variable present in a Container." + }, + "v1EnvVarSource": { + "type": "object", + "properties": { + "fieldRef": { + "$ref": "#/components/schemas/v1ObjectFieldSelector" + }, + "resourceFieldRef": { + "$ref": "#/components/schemas/v1ResourceFieldSelector" + }, + "configMapKeyRef": { + "$ref": "#/components/schemas/v1ConfigMapKeySelector" + }, + "secretKeyRef": { + "$ref": "#/components/schemas/v1SecretKeySelector" + } + }, + "description": "EnvVarSource represents a source for the value of an EnvVar." + }, + "v1EphemeralContainer": { + "type": "object", + "properties": { + "ephemeralContainerCommon": { + "$ref": "#/components/schemas/v1EphemeralContainerCommon" + }, + "targetContainerName": { + "type": "string", + "description": "If set, the name of the container from PodSpec that this ephemeral container targets.\nThe ephemeral container will be run in the namespaces (IPC, PID, etc) of this container.\nIf not set then the ephemeral container uses the namespaces configured in the Pod spec.\n\nThe container runtime must implement support for this feature. If the runtime does not\nsupport namespace targeting then the result of setting this field is undefined.\n+optional" + } + }, + "description": "An EphemeralContainer is a temporary container that you may add to an existing Pod for\nuser-initiated activities such as debugging. Ephemeral containers have no resource or\nscheduling guarantees, and they will not be restarted when they exit or when a Pod is\nremoved or restarted. The kubelet may evict a Pod if an ephemeral container causes the\nPod to exceed its resource allocation.\n\nTo add an ephemeral container, use the ephemeralcontainers subresource of an existing\nPod. Ephemeral containers may not be removed or restarted." + }, + "v1EphemeralContainerCommon": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the ephemeral container specified as a DNS_LABEL.\nThis name must be unique among all containers, init containers and ephemeral containers." + }, + "image": { + "type": "string", + "title": "Container image name.\nMore info: https://kubernetes.io/docs/concepts/containers/images" + }, + "command": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Entrypoint array. Not executed within a shell.\nThe image's ENTRYPOINT is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell\n+optional\n+listType=atomic" + }, + "args": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Arguments to the entrypoint.\nThe image's CMD is used if this is not provided.\nVariable references $(VAR_NAME) are expanded using the container's environment. If a variable\ncannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced\nto a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. \"$$(VAR_NAME)\" will\nproduce the string literal \"$(VAR_NAME)\". Escaped references will never be expanded, regardless\nof whether the variable exists or not. Cannot be updated.\nMore info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell\n+optional\n+listType=atomic" + }, + "workingDir": { + "type": "string", + "title": "Container's working directory.\nIf not specified, the container runtime's default will be used, which\nmight be configured in the container image.\nCannot be updated.\n+optional" + }, + "ports": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ContainerPort" + }, + "title": "Ports are not allowed for ephemeral containers.\n+optional\n+patchMergeKey=containerPort\n+patchStrategy=merge\n+listType=map\n+listMapKey=containerPort\n+listMapKey=protocol" + }, + "envFrom": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1EnvFromSource" + }, + "title": "List of sources to populate environment variables in the container.\nThe keys defined within a source must be a C_IDENTIFIER. All invalid keys\nwill be reported as an event when the container is starting. When a key exists in multiple\nsources, the value associated with the last source will take precedence.\nValues defined by an Env with a duplicate key will take precedence.\nCannot be updated.\n+optional\n+listType=atomic" + }, + "env": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1EnvVar" + }, + "title": "List of environment variables to set in the container.\nCannot be updated.\n+optional\n+patchMergeKey=name\n+patchStrategy=merge\n+listType=map\n+listMapKey=name" + }, + "resources": { + "$ref": "#/components/schemas/v1ResourceRequirements" + }, + "resizePolicy": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ContainerResizePolicy" + }, + "title": "Resources resize policy for the container.\n+featureGate=InPlacePodVerticalScaling\n+optional\n+listType=atomic" + }, + "restartPolicy": { + "type": "string", + "title": "Restart policy for the container to manage the restart behavior of each\ncontainer within a pod.\nThis may only be set for init containers. You cannot set this field on\nephemeral containers.\n+featureGate=SidecarContainers\n+optional" + }, + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1VolumeMount" + }, + "title": "Pod volumes to mount into the container's filesystem. Subpath mounts are not allowed for ephemeral containers.\nCannot be updated.\n+optional\n+patchMergeKey=mountPath\n+patchStrategy=merge\n+listType=map\n+listMapKey=mountPath" + }, + "volumeDevices": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1VolumeDevice" + }, + "title": "volumeDevices is the list of block devices to be used by the container.\n+patchMergeKey=devicePath\n+patchStrategy=merge\n+listType=map\n+listMapKey=devicePath\n+optional" + }, + "livenessProbe": { + "$ref": "#/components/schemas/v1Probe" + }, + "readinessProbe": { + "$ref": "#/components/schemas/v1Probe" + }, + "startupProbe": { + "$ref": "#/components/schemas/v1Probe" + }, + "lifecycle": { + "$ref": "#/components/schemas/v1Lifecycle" + }, + "terminationMessagePath": { + "type": "string", + "title": "Optional: Path at which the file to which the container's termination message\nwill be written is mounted into the container's filesystem.\nMessage written is intended to be brief final status, such as an assertion failure message.\nWill be truncated by the node if greater than 4096 bytes. The total message length across\nall containers will be limited to 12kb.\nDefaults to /dev/termination-log.\nCannot be updated.\n+optional" + }, + "terminationMessagePolicy": { + "type": "string", + "title": "Indicate how the termination message should be populated. File will use the contents of\nterminationMessagePath to populate the container status message on both success and failure.\nFallbackToLogsOnError will use the last chunk of container log output if the termination\nmessage file is empty and the container exited with an error.\nThe log output is limited to 2048 bytes or 80 lines, whichever is smaller.\nDefaults to File.\nCannot be updated.\n+optional" + }, + "imagePullPolicy": { + "type": "string", + "title": "Image pull policy.\nOne of Always, Never, IfNotPresent.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/containers/images#updating-images\n+optional" + }, + "securityContext": { + "$ref": "#/components/schemas/v1SecurityContext" + }, + "stdin": { + "type": "boolean", + "title": "Whether this container should allocate a buffer for stdin in the container runtime. If this\nis not set, reads from stdin in the container will always result in EOF.\nDefault is false.\n+optional" + }, + "stdinOnce": { + "type": "boolean", + "title": "Whether the container runtime should close the stdin channel after it has been opened by\na single attach. When stdin is true the stdin stream will remain open across multiple attach\nsessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the\nfirst client attaches to stdin, and then remains open and accepts data until the client disconnects,\nat which time stdin is closed and remains closed until the container is restarted. If this\nflag is false, a container processes that reads from stdin will never receive an EOF.\nDefault is false\n+optional" + }, + "tty": { + "type": "boolean", + "title": "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true.\nDefault is false.\n+optional" + } + }, + "description": "EphemeralContainerCommon is a copy of all fields in Container to be inlined in\nEphemeralContainer. This separate type allows easy conversion from EphemeralContainer\nto Container and allows separate documentation for the fields of EphemeralContainer.\nWhen a new field is added to Container it must be added here as well." + }, + "v1EphemeralVolumeSource": { + "type": "object", + "properties": { + "volumeClaimTemplate": { + "$ref": "#/components/schemas/v1PersistentVolumeClaimTemplate" + } + }, + "description": "Represents an ephemeral volume that is handled by a normal storage driver." + }, + "v1ExecAction": { + "type": "object", + "properties": { + "command": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Command is the command line to execute inside the container, the working directory for the\ncommand is root ('/') in the container's filesystem. The command is simply exec'd, it is\nnot run inside a shell, so traditional shell instructions ('|', etc) won't work. To use\na shell, you need to explicitly call out to that shell.\nExit status of 0 is treated as live/healthy and non-zero is unhealthy.\n+optional\n+listType=atomic" + } + }, + "description": "ExecAction describes a \"run in container\" action." + }, + "v1FCVolumeSource": { + "type": "object", + "properties": { + "targetWWNs": { + "type": "array", + "items": { + "type": "string" + }, + "title": "targetWWNs is Optional: FC target worldwide names (WWNs)\n+optional\n+listType=atomic" + }, + "lun": { + "type": "integer", + "format": "int32", + "title": "lun is Optional: FC target lun number\n+optional" + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nTODO: how do we prevent errors in the filesystem from compromising the machine\n+optional" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly is Optional: Defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\n+optional" + }, + "wwids": { + "type": "array", + "items": { + "type": "string" + }, + "title": "wwids Optional: FC volume world wide identifiers (wwids)\nEither wwids or combination of targetWWNs and lun must be set, but not both simultaneously.\n+optional\n+listType=atomic" + } + }, + "description": "Represents a Fibre Channel volume.\nFibre Channel volumes can only be mounted as read/write once.\nFibre Channel volumes support ownership management and SELinux relabeling." + }, + "v1FieldRef": { + "type": "object", + "properties": { + "fieldPath": { + "type": "string", + "title": "Required: Path of the field to select in the specified API version" + } + } + }, + "v1FieldsV1": { + "type": "object", + "properties": { + "Raw": { + "type": "string", + "format": "byte", + "description": "Raw is the underlying serialization of this object." + } + }, + "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:', where is the name of a field in a struct, or key in a map\n'v:', where is the exact json formatted value of a list item\n'i:', where is position of a item in a list\n'k:', where 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" + }, + "v1Filter": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Identifier for the filter." + }, + "name": { + "type": "string", + "description": "Name for the filter." + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the filter." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the filter." + }, + "filterVisibility": { + "$ref": "#/components/schemas/v1FilterVisibility" + }, + "filterProperties": { + "type": "object", + "description": "Filter properties" + }, + "filterType": { + "$ref": "#/components/schemas/v1FilterType" + } + } + }, + "v1FilterList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Filter" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1FilterType": { + "type": "string", + "enum": [ + "FILTER_TYPE_UNSET", + "APPLICATION", + "AGENT", + "CLUSTER", + "REPO" + ], + "default": "FILTER_TYPE_UNSET" + }, + "v1FilterVisibility": { + "type": "string", + "enum": [ + "FilterVisibilityUnset", + "EveryOne", + "OnlyCreator" + ], + "default": "FilterVisibilityUnset" + }, + "v1FlexVolumeSource": { + "type": "object", + "properties": { + "driver": { + "type": "string", + "description": "driver is the name of the driver to use for this volume." + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". The default filesystem depends on FlexVolume script.\n+optional" + }, + "secretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly is Optional: defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\n+optional" + }, + "options": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "options is Optional: this field holds extra command options if any.\n+optional" + } + }, + "description": "FlexVolume represents a generic volume resource that is\nprovisioned/attached using an exec based plugin." + }, + "v1FlockerVolumeSource": { + "type": "object", + "properties": { + "datasetName": { + "type": "string", + "title": "datasetName is Name of the dataset stored as metadata -> name on the dataset for Flocker\nshould be considered as deprecated\n+optional" + }, + "datasetUUID": { + "type": "string", + "title": "datasetUUID is the UUID of the dataset. This is unique identifier of a Flocker dataset\n+optional" + } + }, + "description": "Represents a Flocker volume mounted by the Flocker agent.\nOne and only one of datasetName and datasetUUID should be set.\nFlocker volumes do not support ownership management or SELinux relabeling." + }, + "v1GCEPersistentDiskVolumeSource": { + "type": "object", + "properties": { + "pdName": { + "type": "string", + "title": "pdName is unique name of the PD resource in GCE. Used to identify the disk in GCE.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk" + }, + "fsType": { + "type": "string", + "title": "fsType is filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk\nTODO: how do we prevent errors in the filesystem from compromising the machine\n+optional" + }, + "partition": { + "type": "integer", + "format": "int32", + "title": "partition is the partition in the volume that you want to mount.\nIf omitted, the default is to mount by volume name.\nExamples: For volume /dev/sda1, you specify the partition as \"1\".\nSimilarly, the volume partition for /dev/sda is \"0\" (or you can leave the property empty).\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk\n+optional" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly here will force the ReadOnly setting in VolumeMounts.\nDefaults to false.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk\n+optional" + } + }, + "description": "Represents a Persistent Disk resource in Google Compute Engine.\n\nA GCE PD must exist before mounting to a container. The disk must\nalso be in the same GCE project and zone as the kubelet. A GCE PD\ncan only be mounted as read/write once or read-only many times. GCE\nPDs support ownership management and SELinux relabeling." + }, + "v1GRPCAction": { + "type": "object", + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Port number of the gRPC service. Number must be in the range 1 to 65535." + }, + "service": { + "type": "string", + "description": "Service is the name of the service to place in the gRPC HealthCheckRequest\n(see https://github.com/grpc/grpc/blob/master/doc/health-checking.md).\n\nIf this is not specified, the default behavior is defined by gRPC.\n+optional\n+default=\"\"" + } + }, + "description": "GRPCAction specifies an action involving a GRPC service." + }, + "v1GitRepoVolumeSource": { + "type": "object", + "properties": { + "repository": { + "type": "string", + "title": "repository is the URL" + }, + "revision": { + "type": "string", + "title": "revision is the commit hash for the specified revision.\n+optional" + }, + "directory": { + "type": "string", + "title": "directory is the target directory name.\nMust not contain or start with '..'. If '.' is supplied, the volume directory will be the\ngit repository. Otherwise, if specified, the volume will contain the git repository in\nthe subdirectory with the given name.\n+optional" + } + }, + "description": "Represents a volume that is populated with the contents of a git repository.\nGit repo volumes do not support ownership management.\nGit repo volumes support SELinux relabeling.\n\nDEPRECATED: GitRepo is deprecated. To provision a container with a git repo, mount an\nEmptyDir into an InitContainer that clones the repo using git, then mount the EmptyDir\ninto the Pod's container." + }, + "v1GlusterfsVolumeSource": { + "type": "object", + "properties": { + "endpoints": { + "type": "string", + "title": "endpoints is the endpoint name that details Glusterfs topology.\nMore info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod" + }, + "path": { + "type": "string", + "title": "path is the Glusterfs volume path.\nMore info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly here will force the Glusterfs volume to be mounted with read-only permissions.\nDefaults to false.\nMore info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod\n+optional" + } + }, + "description": "Represents a Glusterfs mount that lasts the lifetime of a pod.\nGlusterfs volumes do not support ownership management or SELinux relabeling." + }, + "v1Gnupg": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "gnuPGPublicKey": { + "$ref": "#/components/schemas/gpgkeysGnuPGPublicKey" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time" + } + } + }, + "v1GraphiteMetric": { + "type": "object", + "properties": { + "address": { + "type": "string", + "title": "Address is the HTTP address and port of the Graphite server" + }, + "query": { + "type": "string", + "title": "Query is a raw Graphite query to perform" + } + }, + "title": "GraphiteMetric defines the Graphite query to perform canary analysis" + }, + "v1GroupKind": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "kind": { + "type": "string" + } + }, + "description": "+protobuf.options.(gogoproto.goproto_stringer)=false", + "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" + }, + "v1HTTPGetAction": { + "type": "object", + "properties": { + "path": { + "type": "string", + "title": "Path to access on the HTTP server.\n+optional" + }, + "port": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "host": { + "type": "string", + "title": "Host name to connect to, defaults to the pod IP. You probably want to set\n\"Host\" in httpHeaders instead.\n+optional" + }, + "scheme": { + "type": "string", + "title": "Scheme to use for connecting to the host.\nDefaults to HTTP.\n+optional" + }, + "httpHeaders": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1HTTPHeader" + }, + "title": "Custom headers to set in the request. HTTP allows repeated headers.\n+optional\n+listType=atomic" + } + }, + "description": "HTTPGetAction describes an action based on HTTP Get requests." + }, + "v1HTTPHeader": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The header field name.\nThis will be canonicalized upon output, so case-variant names will be understood as the same header." + }, + "value": { + "type": "string", + "title": "The header field value" + } + }, + "title": "HTTPHeader describes a custom header to be used in HTTP probes" + }, + "v1HeaderRoutingMatch": { + "type": "object", + "properties": { + "headerName": { + "type": "string", + "title": "HeaderName the name of the request header" + }, + "headerValue": { + "$ref": "#/components/schemas/v1StringMatch" + } + } + }, + "v1HealthStatusCounts": { + "type": "object", + "properties": { + "healthy": { + "type": "integer", + "format": "int32" + }, + "degraded": { + "type": "integer", + "format": "int32" + }, + "progressing": { + "type": "integer", + "format": "int32" + }, + "suspended": { + "type": "integer", + "format": "int32" + }, + "missing": { + "type": "integer", + "format": "int32" + }, + "unknown": { + "type": "integer", + "format": "int32" + } + } + }, + "v1HostAlias": { + "type": "object", + "properties": { + "ip": { + "type": "string", + "title": "IP address of the host file entry.\n+required" + }, + "hostnames": { + "type": "array", + "items": { + "type": "string" + }, + "title": "Hostnames for the above IP address.\n+listType=atomic" + } + }, + "description": "HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the\npod's hosts file." + }, + "v1HostPathVolumeSource": { + "type": "object", + "properties": { + "path": { + "type": "string", + "title": "path of the directory on the host.\nIf the path is a symlink, it will follow the link to the real path.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath" + }, + "type": { + "type": "string", + "title": "type for HostPath Volume\nDefaults to \"\"\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath\n+optional" + } + }, + "description": "Represents a host path mapped into a pod.\nHost path volumes do not support ownership management or SELinux relabeling." + }, + "v1ISCSIVolumeSource": { + "type": "object", + "properties": { + "targetPortal": { + "type": "string", + "description": "targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port\nis other than default (typically TCP ports 860 and 3260)." + }, + "iqn": { + "type": "string", + "description": "iqn is the target iSCSI Qualified Name." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "lun represents iSCSI Target Lun number." + }, + "iscsiInterface": { + "type": "string", + "title": "iscsiInterface is the interface Name that uses an iSCSI transport.\nDefaults to 'default' (tcp).\n+optional\n+default=\"default\"" + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi\nTODO: how do we prevent errors in the filesystem from compromising the machine\n+optional" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly here will force the ReadOnly setting in VolumeMounts.\nDefaults to false.\n+optional" + }, + "portals": { + "type": "array", + "items": { + "type": "string" + }, + "title": "portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port\nis other than default (typically TCP ports 860 and 3260).\n+optional\n+listType=atomic" + }, + "chapAuthDiscovery": { + "type": "boolean", + "title": "chapAuthDiscovery defines whether support iSCSI Discovery CHAP authentication\n+optional" + }, + "chapAuthSession": { + "type": "boolean", + "title": "chapAuthSession defines whether support iSCSI Session CHAP authentication\n+optional" + }, + "secretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "initiatorName": { + "type": "string", + "title": "initiatorName is the custom iSCSI Initiator Name.\nIf initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface\n: will be created for the connection.\n+optional" + } + }, + "description": "Represents an ISCSI disk.\nISCSI volumes can only be mounted as read/write once.\nISCSI volumes support ownership management and SELinux relabeling." + }, + "v1ImageVolumeSource": { + "type": "object", + "properties": { + "reference": { + "type": "string", + "title": "Required: Image or artifact reference to be used.\nBehaves in the same way as pod.spec.containers[*].image.\nPull secrets will be assembled in the same way as for the container image by looking up node credentials, SA image pull secrets, and pod spec image pull secrets.\nMore info: https://kubernetes.io/docs/concepts/containers/images\nThis field is optional to allow higher level config management to default or override\ncontainer images in workload controllers like Deployments and StatefulSets.\n+optional" + }, + "pullPolicy": { + "type": "string", + "title": "Policy for pulling OCI objects. Possible values are:\nAlways: the kubelet always attempts to pull the reference. Container creation will fail If the pull fails.\nNever: the kubelet never pulls the reference and only uses a local image or artifact. Container creation will fail if the reference isn't present.\nIfNotPresent: the kubelet pulls if the reference isn't already present on disk. Container creation will fail if the reference isn't present and the pull fails.\nDefaults to Always if :latest tag is specified, or IfNotPresent otherwise.\n+optional" + } + }, + "description": "ImageVolumeSource represents a image volume resource." + }, + "v1InfluxdbMetric": { + "type": "object", + "properties": { + "profile": { + "type": "string", + "title": "Profile is the name of the secret holding InfluxDB account configuration" + }, + "query": { + "type": "string", + "title": "Query is a raw InfluxDB flux query to perform" + } + }, + "title": "InfluxdbMetric defines the InfluxDB Flux query to perform canary analysis" + }, + "v1JSON": { + "type": "object", + "properties": { + "raw": { + "type": "string", + "format": "byte" + } + }, + "description": "JSON represents any valid JSON value.\nThese types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil." + }, + "v1JobMetric": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "spec": { + "$ref": "#/components/schemas/v1JobSpec" + } + }, + "title": "JobMetric defines a job to run which acts as a metric" + }, + "v1JobSpec": { + "type": "object", + "properties": { + "parallelism": { + "type": "integer", + "format": "int32", + "title": "Specifies the maximum desired number of pods the job should\nrun at any given time. The actual number of pods running in steady state will\nbe less than this number when ((.spec.completions - .status.successful) < .spec.parallelism),\ni.e. when the work left to do is less than max parallelism.\nMore info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/\n+optional" + }, + "completions": { + "type": "integer", + "format": "int32", + "title": "Specifies the desired number of successfully finished pods the\njob should be run with. Setting to null means that the success of any\npod signals the success of all pods, and allows parallelism to have any positive\nvalue. Setting to 1 means that parallelism is limited to 1 and the success of that\npod signals the success of the job.\nMore info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/\n+optional" + }, + "activeDeadlineSeconds": { + "type": "string", + "format": "int64", + "title": "Specifies the duration in seconds relative to the startTime that the job\nmay be continuously active before the system tries to terminate it; value\nmust be positive integer. If a Job is suspended (at creation or through an\nupdate), this timer will effectively be stopped and reset when the Job is\nresumed again.\n+optional" + }, + "podFailurePolicy": { + "$ref": "#/components/schemas/v1PodFailurePolicy" + }, + "successPolicy": { + "$ref": "#/components/schemas/v1SuccessPolicy" + }, + "backoffLimit": { + "type": "integer", + "format": "int32", + "title": "Specifies the number of retries before marking this job failed.\nDefaults to 6\n+optional" + }, + "backoffLimitPerIndex": { + "type": "integer", + "format": "int32", + "title": "Specifies the limit for the number of retries within an\nindex before marking this index as failed. When enabled the number of\nfailures per index is kept in the pod's\nbatch.kubernetes.io/job-index-failure-count annotation. It can only\nbe set when Job's completionMode=Indexed, and the Pod's restart\npolicy is Never. The field is immutable.\nThis field is beta-level. It can be used when the `JobBackoffLimitPerIndex`\nfeature gate is enabled (enabled by default).\n+optional" + }, + "maxFailedIndexes": { + "type": "integer", + "format": "int32", + "title": "Specifies the maximal number of failed indexes before marking the Job as\nfailed, when backoffLimitPerIndex is set. Once the number of failed\nindexes exceeds this number the entire Job is marked as Failed and its\nexecution is terminated. When left as null the job continues execution of\nall of its indexes and is marked with the `Complete` Job condition.\nIt can only be specified when backoffLimitPerIndex is set.\nIt can be null or up to completions. It is required and must be\nless than or equal to 10^4 when is completions greater than 10^5.\nThis field is beta-level. It can be used when the `JobBackoffLimitPerIndex`\nfeature gate is enabled (enabled by default).\n+optional" + }, + "selector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "manualSelector": { + "type": "boolean", + "title": "manualSelector controls generation of pod labels and pod selectors.\nLeave `manualSelector` unset unless you are certain what you are doing.\nWhen false or unset, the system pick labels unique to this job\nand appends those labels to the pod template. When true,\nthe user is responsible for picking unique labels and specifying\nthe selector. Failure to pick a unique label may cause this\nand other jobs to not function correctly. However, You may see\n`manualSelector=true` in jobs that were created with the old `extensions/v1beta1`\nAPI.\nMore info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector\n+optional" + }, + "template": { + "$ref": "#/components/schemas/v1PodTemplateSpec" + }, + "ttlSecondsAfterFinished": { + "type": "integer", + "format": "int32", + "title": "ttlSecondsAfterFinished limits the lifetime of a Job that has finished\nexecution (either Complete or Failed). If this field is set,\nttlSecondsAfterFinished after the Job finishes, it is eligible to be\nautomatically deleted. When the Job is being deleted, its lifecycle\nguarantees (e.g. finalizers) will be honored. If this field is unset,\nthe Job won't be automatically deleted. If this field is set to zero,\nthe Job becomes eligible to be deleted immediately after it finishes.\n+optional" + }, + "completionMode": { + "type": "string", + "description": "completionMode specifies how Pod completions are tracked. It can be\n`NonIndexed` (default) or `Indexed`.\n\n`NonIndexed` means that the Job is considered complete when there have\nbeen .spec.completions successfully completed Pods. Each Pod completion is\nhomologous to each other.\n\n`Indexed` means that the Pods of a\nJob get an associated completion index from 0 to (.spec.completions - 1),\navailable in the annotation batch.kubernetes.io/job-completion-index.\nThe Job is considered complete when there is one successfully completed Pod\nfor each index.\nWhen value is `Indexed`, .spec.completions must be specified and\n`.spec.parallelism` must be less than or equal to 10^5.\nIn addition, The Pod name takes the form\n`$(job-name)-$(index)-$(random-string)`,\nthe Pod hostname takes the form `$(job-name)-$(index)`.\n\nMore completion modes can be added in the future.\nIf the Job controller observes a mode that it doesn't recognize, which\nis possible during upgrades due to version skew, the controller\nskips updates for the Job.\n+optional" + }, + "suspend": { + "type": "boolean", + "description": "suspend specifies whether the Job controller should create Pods or not. If\na Job is created with suspend set to true, no Pods are created by the Job\ncontroller. If a Job is suspended after creation (i.e. the flag goes from\nfalse to true), the Job controller will delete all active Pods associated\nwith this Job. Users must design their workload to gracefully handle this.\nSuspending a Job will reset the StartTime field of the Job, effectively\nresetting the ActiveDeadlineSeconds timer too. Defaults to false.\n\n+optional" + }, + "podReplacementPolicy": { + "type": "string", + "description": "podReplacementPolicy specifies when to create replacement Pods.\nPossible values are:\n- TerminatingOrFailed means that we recreate pods\n when they are terminating (has a metadata.deletionTimestamp) or failed.\n- Failed means to wait until a previously created Pod is fully terminated (has phase\n Failed or Succeeded) before creating a replacement Pod.\n\nWhen using podFailurePolicy, Failed is the the only allowed value.\nTerminatingOrFailed and Failed are allowed values when podFailurePolicy is not in use.\nThis is an beta field. To use this, enable the JobPodReplacementPolicy feature toggle.\nThis is on by default.\n+optional" + }, + "managedBy": { + "type": "string", + "description": "ManagedBy field indicates the controller that manages a Job. The k8s Job\ncontroller reconciles jobs which don't have this field at all or the field\nvalue is the reserved string `kubernetes.io/job-controller`, but skips\nreconciling Jobs with a custom value for this field.\nThe value must be a valid domain-prefixed path (e.g. acme.io/foo) -\nall characters before the first \"/\" must be a valid subdomain as defined\nby RFC 1123. All characters trailing the first \"/\" must be valid HTTP Path\ncharacters as defined by RFC 3986. The value cannot exceed 63 characters.\nThis field is immutable.\n\nThis field is beta-level. The job controller accepts setting the field\nwhen the feature gate JobManagedBy is enabled (enabled by default).\n+optional" + } + }, + "description": "JobSpec describes how the job execution will look like." + }, + "v1KayentaMetric": { + "type": "object", + "properties": { + "address": { + "type": "string" + }, + "application": { + "type": "string" + }, + "canaryConfigName": { + "type": "string" + }, + "metricsAccountName": { + "type": "string" + }, + "configurationAccountName": { + "type": "string" + }, + "storageAccountName": { + "type": "string" + }, + "threshold": { + "$ref": "#/components/schemas/v1KayentaThreshold" + }, + "scopes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1KayentaScope" + } + } + } + }, + "v1KayentaScope": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "controlScope": { + "$ref": "#/components/schemas/v1ScopeDetail" + }, + "experimentScope": { + "$ref": "#/components/schemas/v1ScopeDetail" + } + } + }, + "v1KayentaThreshold": { + "type": "object", + "properties": { + "pass": { + "type": "string", + "format": "int64" + }, + "marginal": { + "type": "string", + "format": "int64" + } + } + }, + "v1KeyToPath": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "key is the key to project." + }, + "path": { + "type": "string", + "description": "path is the relative path of the file to map the key to.\nMay not be an absolute path.\nMay not contain the path element '..'.\nMay not start with the string '..'." + }, + "mode": { + "type": "integer", + "format": "int32", + "title": "mode is Optional: mode bits used to set permissions on this file.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nIf not specified, the volume defaultMode will be used.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set.\n+optional" + } + }, + "description": "Maps a string key to a path within a volume." + }, + "v1LabelSelector": { + "type": "object", + "properties": { + "matchLabels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "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" + }, + "matchExpressions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1LabelSelectorRequirement" + }, + "title": "matchExpressions is a list of label selector requirements. The requirements are ANDed.\n+optional\n+listType=atomic" + } + }, + "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" + }, + "v1LabelSelectorRequirement": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "key is the label key that the selector applies to." + }, + "operator": { + "type": "string", + "description": "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist." + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "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" + } + }, + "description": "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values." + }, + "v1LegacyApplicationSetList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1LegacyApplicationSetListItem" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1LegacyApplicationSetListItem": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + }, + "description": "Application set name, retrieved from application collection." + }, + "v1Lifecycle": { + "type": "object", + "properties": { + "postStart": { + "$ref": "#/components/schemas/v1LifecycleHandler" + }, + "preStop": { + "$ref": "#/components/schemas/v1LifecycleHandler" + } + }, + "description": "Lifecycle describes actions that the management system should take in response to container lifecycle\nevents. For the PostStart and PreStop lifecycle handlers, management of the container blocks\nuntil the action is complete, unless the container process fails, in which case the handler is aborted." + }, + "v1LifecycleHandler": { + "type": "object", + "properties": { + "exec": { + "$ref": "#/components/schemas/v1ExecAction" + }, + "httpGet": { + "$ref": "#/components/schemas/v1HTTPGetAction" + }, + "tcpSocket": { + "$ref": "#/components/schemas/v1TCPSocketAction" + }, + "sleep": { + "$ref": "#/components/schemas/v1SleepAction" + } + }, + "description": "LifecycleHandler defines a specific action that should be taken in a lifecycle\nhook. One and only one of the fields, except TCPSocket must be specified." + }, + "v1ListMeta": { + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "title": "Deprecated: selfLink is a legacy read-only field that is no longer populated by the system.\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" + }, + "continue": { + "type": "string", + "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." + }, + "remainingItemCount": { + "type": "string", + "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" + } + }, + "description": "ListMeta describes metadata that synthetic resources must have, including lists and\nvarious status objects. A resource may have only one of {ObjectMeta, ListMeta}." + }, + "v1LoadBalancerIngress": { + "type": "object", + "properties": { + "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" + }, + "hostname": { + "type": "string", + "title": "Hostname is set for load-balancer ingress points that are DNS based\n(typically AWS 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", + "items": { + "$ref": "#/components/schemas/v1PortStatus" + }, + "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" + } + }, + "description": "LoadBalancerIngress represents the status of a load-balancer ingress point:\ntraffic intended for the service should be sent to an ingress point." + }, + "v1LocalObjectReference": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the referent.\nThis field is effectively required, but due to backwards compatibility is\nallowed to be empty. Instances of this type with an empty value here are\nalmost certainly wrong.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\n+optional\n+default=\"\"\n+kubebuilder:default=\"\"\nTODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896." + } + }, + "description": "LocalObjectReference contains enough information to let you locate the\nreferenced object inside the same namespace.\n---\nNew uses of this type are discouraged because of difficulty describing its usage when embedded in APIs.\n 1. 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 2. 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 3. 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+structType=atomic" + }, + "v1ManagedFieldsEntry": { + "type": "object", + "properties": { + "manager": { + "type": "string", + "description": "Manager is an identifier of the workflow managing these fields." + }, + "operation": { + "type": "string", + "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'." + }, + "apiVersion": { + "type": "string", + "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." + }, + "time": { + "$ref": "#/components/schemas/v1Time" + }, + "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": "#/components/schemas/v1FieldsV1" + }, + "subresource": { + "type": "string", + "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." + } + }, + "description": "ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource\nthat the fieldset applies to." + }, + "v1MeasurementRetention": { + "type": "object", + "properties": { + "metricName": { + "type": "string", + "description": "MetricName is the name of the metric on which this retention policy should be applied." + }, + "limit": { + "type": "integer", + "format": "int32", + "description": "Limit is the maximum number of measurements to be retained for this given metric." + } + }, + "description": "MeasurementRetention defines the settings for retaining the number of measurements during the analysis." + }, + "v1Metric": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name is the name of the metric" + }, + "interval": { + "type": "string", + "title": "Interval defines an interval string (e.g. 30s, 5m, 1h) between each measurement.\nIf omitted, will perform a single measurement" + }, + "initialDelay": { + "type": "string", + "title": "InitialDelay how long the AnalysisRun should wait before starting this metric" + }, + "count": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "successCondition": { + "type": "string", + "title": "SuccessCondition is an expression which determines if a measurement is considered successful\nExpression is a goevaluate expression. The keyword `result` is a variable reference to the\nvalue of measurement. Results can be both structured data or primitive.\nExamples:\n result > 10\n (result.requests_made * result.requests_succeeded / 100) >= 90" + }, + "failureCondition": { + "type": "string", + "title": "FailureCondition is an expression which determines if a measurement is considered failed\nIf both success and failure conditions are specified, and the measurement does not fall into\neither condition, the measurement is considered Inconclusive" + }, + "failureLimit": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "inconclusiveLimit": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "consecutiveErrorLimit": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "provider": { + "$ref": "#/components/schemas/v1MetricProvider" + } + }, + "title": "Metric defines a metric in which to perform analysis" + }, + "v1MetricProvider": { + "type": "object", + "properties": { + "prometheus": { + "$ref": "#/components/schemas/v1PrometheusMetric" + }, + "kayenta": { + "$ref": "#/components/schemas/v1KayentaMetric" + }, + "web": { + "$ref": "#/components/schemas/v1WebMetric" + }, + "datadog": { + "$ref": "#/components/schemas/v1DatadogMetric" + }, + "wavefront": { + "$ref": "#/components/schemas/v1WavefrontMetric" + }, + "newRelic": { + "$ref": "#/components/schemas/v1NewRelicMetric" + }, + "job": { + "$ref": "#/components/schemas/v1JobMetric" + }, + "cloudWatch": { + "$ref": "#/components/schemas/v1CloudWatchMetric" + }, + "graphite": { + "$ref": "#/components/schemas/v1GraphiteMetric" + }, + "influxdb": { + "$ref": "#/components/schemas/v1InfluxdbMetric" + }, + "skywalking": { + "$ref": "#/components/schemas/v1SkyWalkingMetric" + }, + "plugin": { + "type": "object", + "additionalProperties": { + "type": "string", + "format": "byte" + }, + "title": "+kubebuilder:validation:Schemaless\n+kubebuilder:pruning:PreserveUnknownFields\n+kubebuilder:validation:Type=object\nPlugin specifies the hashicorp go-plugin metric to query" + } + }, + "title": "MetricProvider which external system to use to verify the analysis\nOnly one of the fields in this struct should be non-nil" + }, + "v1MicroTime": { + "type": "object", + "properties": { + "seconds": { + "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." + }, + "nanos": { + "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." + } + }, + "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" + }, + "v1NFSVolumeSource": { + "type": "object", + "properties": { + "server": { + "type": "string", + "title": "server is the hostname or IP address of the NFS server.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#nfs" + }, + "path": { + "type": "string", + "title": "path that is exported by the NFS server.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#nfs" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly here will force the NFS export to be mounted with read-only permissions.\nDefaults to false.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#nfs\n+optional" + } + }, + "description": "Represents an NFS mount that lasts the lifetime of a pod.\nNFS volumes do not support ownership management or SELinux relabeling." + }, + "v1NewRelicMetric": { + "type": "object", + "properties": { + "profile": { + "type": "string", + "title": "Profile is the name of the secret holding NR account configuration" + }, + "query": { + "type": "string", + "title": "Query is a raw newrelic NRQL query to perform" + } + }, + "title": "NewRelicMetric defines the newrelic query to perform canary analysis" + }, + "v1NodeAffinity": { + "type": "object", + "properties": { + "requiredDuringSchedulingIgnoredDuringExecution": { + "$ref": "#/components/schemas/v1NodeSelector" + }, + "preferredDuringSchedulingIgnoredDuringExecution": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PreferredSchedulingTerm" + }, + "title": "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node matches the corresponding matchExpressions; the\nnode(s) with the highest sum are the most preferred.\n+optional\n+listType=atomic" + } + }, + "description": "Node affinity is a group of node affinity scheduling rules." + }, + "v1NodeSelector": { + "type": "object", + "properties": { + "nodeSelectorTerms": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1NodeSelectorTerm" + }, + "title": "Required. A list of node selector terms. The terms are ORed.\n+listType=atomic" + } + }, + "title": "A node selector represents the union of the results of one or more label queries\nover a set of nodes; that is, it represents the OR of the selectors represented\nby the node selector terms.\n+structType=atomic" + }, + "v1NodeSelectorRequirement": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The label key that the selector applies to." + }, + "operator": { + "type": "string", + "description": "Represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt." + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "title": "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. If the operator is Gt or Lt, the values\narray must have a single element, which will be interpreted as an integer.\nThis array is replaced during a strategic merge patch.\n+optional\n+listType=atomic" + } + }, + "description": "A node selector requirement is a selector that contains values, a key, and an operator\nthat relates the key and values." + }, + "v1NodeSelectorTerm": { + "type": "object", + "properties": { + "matchExpressions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1NodeSelectorRequirement" + }, + "title": "A list of node selector requirements by node's labels.\n+optional\n+listType=atomic" + }, + "matchFields": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1NodeSelectorRequirement" + }, + "title": "A list of node selector requirements by node's fields.\n+optional\n+listType=atomic" + } + }, + "title": "A null or empty node selector term matches no objects. The requirements of\nthem are ANDed.\nThe TopologySelectorTerm type implements a subset of the NodeSelectorTerm.\n+structType=atomic" + }, + "v1NodeSystemInfo": { + "type": "object", + "properties": { + "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" + }, + "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" + }, + "bootID": { + "type": "string", + "description": "Boot ID reported by the node." + }, + "kernelVersion": { + "type": "string", + "description": "Kernel Version reported by the node from 'uname -r' (e.g. 3.16.0-0.bpo.4-amd64)." + }, + "osImage": { + "type": "string", + "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy))." + }, + "containerRuntimeVersion": { + "type": "string", + "description": "ContainerRuntime Version reported by the node through runtime remote API (e.g. containerd://1.4.2)." + }, + "kubeletVersion": { + "type": "string", + "description": "Kubelet Version reported by the node." + }, + "kubeProxyVersion": { + "type": "string", + "description": "Deprecated: KubeProxy Version reported by the node." + }, + "operatingSystem": { + "type": "string", + "title": "The Operating System reported by the node" + }, + "architecture": { + "type": "string", + "title": "The Architecture reported by the node" + } + }, + "description": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node." + }, + "v1OCIRepoType": { + "type": "object", + "properties": { + "repoURL": { + "type": "string", + "description": "OCI Repository URL." + } + } + }, + "v1OCIRepoTypeResponse": { + "type": "object", + "properties": { + "ociRepoType": { + "$ref": "#/components/schemas/OCIRepoTypeResponseOCIRepoTypeEnum" + } + } + }, + "v1ObjectFieldSelector": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "title": "Version of the schema the FieldPath is written in terms of, defaults to \"v1\".\n+optional" + }, + "fieldPath": { + "type": "string", + "description": "Path of the field to select in the specified API version." + } + }, + "title": "ObjectFieldSelector selects an APIVersioned field of an object.\n+structType=atomic" + }, + "v1ObjectMeta": { + "type": "object", + "properties": { + "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" + }, + "generateName": { + "type": "string", + "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" + }, + "namespace": { + "type": "string", + "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" + }, + "selfLink": { + "type": "string", + "title": "Deprecated: selfLink is a legacy read-only field that is no longer populated by the system.\n+optional" + }, + "uid": { + "type": "string", + "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" + }, + "resourceVersion": { + "type": "string", + "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" + }, + "generation": { + "type": "string", + "format": "int64", + "title": "A sequence number representing a specific generation of the desired state.\nPopulated by the system. Read-only.\n+optional" + }, + "creationTimestamp": { + "$ref": "#/components/schemas/v1Time" + }, + "deletionTimestamp": { + "$ref": "#/components/schemas/v1Time" + }, + "deletionGracePeriodSeconds": { + "type": "string", + "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" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "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" + }, + "annotations": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "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" + }, + "ownerReferences": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1OwnerReference" + }, + "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" + }, + "finalizers": { + "type": "array", + "items": { + "type": "string" + }, + "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" + }, + "managedFields": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ManagedFieldsEntry" + }, + "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" + } + }, + "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects\nusers must create." + }, + "v1OperationPhase": { + "type": "string", + "enum": [ + "OPERATION_PHASE_UNSET", + "RUNNING", + "FAILED", + "SUCCEEDED" + ], + "default": "OPERATION_PHASE_UNSET" + }, + "v1OwnerReference": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "description": "API version of the referent." + }, + "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" + }, + "controller": { + "type": "boolean", + "title": "If true, this reference points to the managing controller.\n+optional" + }, + "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" + } + }, + "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" + }, + "v1PersistentVolumeClaimSpec": { + "type": "object", + "properties": { + "accessModes": { + "type": "array", + "items": { + "type": "string" + }, + "title": "accessModes contains the desired access modes the volume should have.\nMore info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1\n+optional\n+listType=atomic" + }, + "selector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "resources": { + "$ref": "#/components/schemas/v1VolumeResourceRequirements" + }, + "volumeName": { + "type": "string", + "title": "volumeName is the binding reference to the PersistentVolume backing this claim.\n+optional" + }, + "storageClassName": { + "type": "string", + "title": "storageClassName is the name of the StorageClass required by the claim.\nMore info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1\n+optional" + }, + "volumeMode": { + "type": "string", + "title": "volumeMode defines what type of volume is required by the claim.\nValue of Filesystem is implied when not included in claim spec.\n+optional" + }, + "dataSource": { + "$ref": "#/components/schemas/v1TypedLocalObjectReference" + }, + "dataSourceRef": { + "$ref": "#/components/schemas/v1TypedObjectReference" + }, + "volumeAttributesClassName": { + "type": "string", + "title": "volumeAttributesClassName may be used to set the VolumeAttributesClass used by this claim.\nIf specified, the CSI driver will create or update the volume with the attributes defined\nin the corresponding VolumeAttributesClass. This has a different purpose than storageClassName,\nit can be changed after the claim is created. An empty string value means that no VolumeAttributesClass\nwill be applied to the claim but it's not allowed to reset this field to empty string once it is set.\nIf unspecified and the PersistentVolumeClaim is unbound, the default VolumeAttributesClass\nwill be set by the persistentvolume controller if it exists.\nIf the resource referred to by volumeAttributesClass does not exist, this PersistentVolumeClaim will be\nset to a Pending state, as reflected by the modifyVolumeStatus field, until such as a resource\nexists.\nMore info: https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/\n(Beta) Using this field requires the VolumeAttributesClass feature gate to be enabled (off by default).\n+featureGate=VolumeAttributesClass\n+optional" + } + }, + "title": "PersistentVolumeClaimSpec describes the common attributes of storage devices\nand allows a Source for provider-specific attributes" + }, + "v1PersistentVolumeClaimTemplate": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "spec": { + "$ref": "#/components/schemas/v1PersistentVolumeClaimSpec" + } + }, + "description": "PersistentVolumeClaimTemplate is used to produce\nPersistentVolumeClaim objects as part of an EphemeralVolumeSource." + }, + "v1PersistentVolumeClaimVolumeSource": { + "type": "object", + "properties": { + "claimName": { + "type": "string", + "title": "claimName is the name of a PersistentVolumeClaim in the same namespace as the pod using this volume.\nMore info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly Will force the ReadOnly setting in VolumeMounts.\nDefault false.\n+optional" + } + }, + "description": "PersistentVolumeClaimVolumeSource references the user's PVC in the same namespace.\nThis volume finds the bound PV and mounts that volume for the pod. A\nPersistentVolumeClaimVolumeSource is, essentially, a wrapper around another\ntype of volume that is owned by someone else (the system)." + }, + "v1PhotonPersistentDiskVolumeSource": { + "type": "object", + "properties": { + "pdID": { + "type": "string", + "title": "pdID is the ID that identifies Photon Controller persistent disk" + }, + "fsType": { + "type": "string", + "description": "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified." + } + }, + "description": "Represents a Photon Controller persistent disk resource." + }, + "v1PodAffinity": { + "type": "object", + "properties": { + "requiredDuringSchedulingIgnoredDuringExecution": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodAffinityTerm" + }, + "title": "If the affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied.\n+optional\n+listType=atomic" + }, + "preferredDuringSchedulingIgnoredDuringExecution": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1WeightedPodAffinityTerm" + }, + "title": "The scheduler will prefer to schedule pods to nodes that satisfy\nthe affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred.\n+optional\n+listType=atomic" + } + }, + "description": "Pod affinity is a group of inter pod affinity scheduling rules." + }, + "v1PodAffinityTerm": { + "type": "object", + "properties": { + "labelSelector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "namespaces": { + "type": "array", + "items": { + "type": "string" + }, + "title": "namespaces specifies a static list of namespace names that the term applies to.\nThe term is applied to the union of the namespaces listed in this field\nand the ones selected by namespaceSelector.\nnull or empty namespaces list and null namespaceSelector means \"this pod's namespace\".\n+optional\n+listType=atomic" + }, + "topologyKey": { + "type": "string", + "description": "This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching\nthe labelSelector in the specified namespaces, where co-located is defined as running on a node\nwhose value of the label with key topologyKey matches that of any node on which any of the\nselected pods is running.\nEmpty topologyKey is not allowed." + }, + "namespaceSelector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "matchLabelKeys": { + "type": "array", + "items": { + "type": "string" + }, + "description": "MatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both matchLabelKeys and labelSelector.\nAlso, matchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).\n\n+listType=atomic\n+optional" + }, + "mismatchLabelKeys": { + "type": "array", + "items": { + "type": "string" + }, + "description": "MismatchLabelKeys is a set of pod label keys to select which pods will\nbe taken into consideration. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`\nto select the group of existing pods which pods will be taken into consideration\nfor the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming\npod labels will be ignored. The default value is empty.\nThe same key is forbidden to exist in both mismatchLabelKeys and labelSelector.\nAlso, mismatchLabelKeys cannot be set when labelSelector isn't set.\nThis is a beta field and requires enabling MatchLabelKeysInPodAffinity feature gate (enabled by default).\n\n+listType=atomic\n+optional" + } + }, + "title": "Defines a set of pods (namely those matching the labelSelector\nrelative to the given namespace(s)) that this pod should be\nco-located (affinity) or not co-located (anti-affinity) with,\nwhere co-located is defined as running on a node whose value of\nthe label with key matches that of any node on which\na pod of the set of pods is running" + }, + "v1PodAntiAffinity": { + "type": "object", + "properties": { + "requiredDuringSchedulingIgnoredDuringExecution": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodAffinityTerm" + }, + "title": "If the anti-affinity requirements specified by this field are not met at\nscheduling time, the pod will not be scheduled onto the node.\nIf the anti-affinity requirements specified by this field cease to be met\nat some point during pod execution (e.g. due to a pod label update), the\nsystem may or may not try to eventually evict the pod from its node.\nWhen there are multiple elements, the lists of nodes corresponding to each\npodAffinityTerm are intersected, i.e. all terms must be satisfied.\n+optional\n+listType=atomic" + }, + "preferredDuringSchedulingIgnoredDuringExecution": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1WeightedPodAffinityTerm" + }, + "title": "The scheduler will prefer to schedule pods to nodes that satisfy\nthe anti-affinity expressions specified by this field, but it may choose\na node that violates one or more of the expressions. The node that is\nmost preferred is the one with the greatest sum of weights, i.e.\nfor each node that meets all of the scheduling requirements (resource\nrequest, requiredDuringScheduling anti-affinity expressions, etc.),\ncompute a sum by iterating through the elements of this field and adding\n\"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the\nnode(s) with the highest sum are the most preferred.\n+optional\n+listType=atomic" + } + }, + "description": "Pod anti affinity is a group of inter pod anti affinity scheduling rules." + }, + "v1PodDNSConfig": { + "type": "object", + "properties": { + "nameservers": { + "type": "array", + "items": { + "type": "string" + }, + "title": "A list of DNS name server IP addresses.\nThis will be appended to the base nameservers generated from DNSPolicy.\nDuplicated nameservers will be removed.\n+optional\n+listType=atomic" + }, + "searches": { + "type": "array", + "items": { + "type": "string" + }, + "title": "A list of DNS search domains for host-name lookup.\nThis will be appended to the base search paths generated from DNSPolicy.\nDuplicated search paths will be removed.\n+optional\n+listType=atomic" + }, + "options": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodDNSConfigOption" + }, + "title": "A list of DNS resolver options.\nThis will be merged with the base options generated from DNSPolicy.\nDuplicated entries will be removed. Resolution options given in Options\nwill override those that appear in the base DNSPolicy.\n+optional\n+listType=atomic" + } + }, + "description": "PodDNSConfig defines the DNS parameters of a pod in addition to\nthose generated from DNSPolicy." + }, + "v1PodDNSConfigOption": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name is this DNS resolver option's name.\nRequired." + }, + "value": { + "type": "string", + "title": "Value is this DNS resolver option's value.\n+optional" + } + }, + "description": "PodDNSConfigOption defines DNS resolver options of a pod." + }, + "v1PodFailurePolicy": { + "type": "object", + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodFailurePolicyRule" + }, + "title": "A list of pod failure policy rules. The rules are evaluated in order.\nOnce a rule matches a Pod failure, the remaining of the rules are ignored.\nWhen no rule matches the Pod failure, the default handling applies - the\ncounter of pod failures is incremented and it is checked against\nthe backoffLimit. At most 20 elements are allowed.\n+listType=atomic" + } + }, + "description": "PodFailurePolicy describes how failed pods influence the backoffLimit." + }, + "v1PodFailurePolicyOnExitCodesRequirement": { + "type": "object", + "properties": { + "containerName": { + "type": "string", + "title": "Restricts the check for exit codes to the container with the\nspecified name. When null, the rule applies to all containers.\nWhen specified, it should match one the container or initContainer\nnames in the pod template.\n+optional" + }, + "operator": { + "type": "string", + "description": "- In: the requirement is satisfied if at least one container exit code\n (might be multiple if there are multiple containers not restricted\n by the 'containerName' field) is in the set of specified values.\n- NotIn: the requirement is satisfied if at least one container exit code\n (might be multiple if there are multiple containers not restricted\n by the 'containerName' field) is not in the set of specified values.\nAdditional values are considered to be added in the future. Clients should\nreact to an unknown operator by assuming the requirement is not satisfied.", + "title": "Represents the relationship between the container exit code(s) and the\nspecified values. Containers completed with success (exit code 0) are\nexcluded from the requirement check. Possible values are:" + }, + "values": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "title": "Specifies the set of values. Each returned container exit code (might be\nmultiple in case of multiple containers) is checked against this set of\nvalues with respect to the operator. The list of values must be ordered\nand must not contain duplicates. Value '0' cannot be used for the In operator.\nAt least one element is required. At most 255 elements are allowed.\n+listType=set" + } + }, + "description": "PodFailurePolicyOnExitCodesRequirement describes the requirement for handling\na failed pod based on its container exit codes. In particular, it lookups the\n.state.terminated.exitCode for each app container and init container status,\nrepresented by the .status.containerStatuses and .status.initContainerStatuses\nfields in the Pod status, respectively. Containers completed with success\n(exit code 0) are excluded from the requirement check." + }, + "v1PodFailurePolicyOnPodConditionsPattern": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Specifies the required Pod condition type. To match a pod condition\nit is required that specified type equals the pod condition type." + }, + "status": { + "type": "string", + "description": "Specifies the required Pod condition status. To match a pod condition\nit is required that the specified status equals the pod condition status.\nDefaults to True." + } + }, + "description": "PodFailurePolicyOnPodConditionsPattern describes a pattern for matching\nan actual pod condition type." + }, + "v1PodFailurePolicyRule": { + "type": "object", + "properties": { + "action": { + "type": "string", + "description": "- FailJob: indicates that the pod's job is marked as Failed and all\n running pods are terminated.\n- FailIndex: indicates that the pod's index is marked as Failed and will\n not be restarted.\n This value is beta-level. It can be used when the\n `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default).\n- Ignore: indicates that the counter towards the .backoffLimit is not\n incremented and a replacement pod is created.\n- Count: indicates that the pod is handled in the default way - the\n counter towards the .backoffLimit is incremented.\nAdditional values are considered to be added in the future. Clients should\nreact to an unknown action by skipping the rule.", + "title": "Specifies the action taken on a pod failure when the requirements are satisfied.\nPossible values are:" + }, + "onExitCodes": { + "$ref": "#/components/schemas/v1PodFailurePolicyOnExitCodesRequirement" + }, + "onPodConditions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodFailurePolicyOnPodConditionsPattern" + }, + "title": "Represents the requirement on the pod conditions. The requirement is represented\nas a list of pod condition patterns. The requirement is satisfied if at\nleast one pattern matches an actual pod condition. At most 20 elements are allowed.\n+listType=atomic\n+optional" + } + }, + "description": "PodFailurePolicyRule describes how a pod failure is handled when the requirements are met.\nOne of onExitCodes and onPodConditions, but not both, can be used in each rule." + }, + "v1PodOS": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name is the name of the operating system. The currently supported values are linux and windows.\nAdditional value may be defined in future and can be one of:\nhttps://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration\nClients should expect to handle additional values and treat unrecognized values in this field as os: null" + } + }, + "description": "PodOS defines the OS parameters of a pod." + }, + "v1PodReadinessGate": { + "type": "object", + "properties": { + "conditionType": { + "type": "string", + "description": "ConditionType refers to a condition in the pod's condition list with matching type." + } + }, + "title": "PodReadinessGate contains the reference to a pod condition" + }, + "v1PodResourceClaim": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name uniquely identifies this resource claim inside the pod.\nThis must be a DNS_LABEL." + }, + "resourceClaimName": { + "type": "string", + "description": "ResourceClaimName is the name of a ResourceClaim object in the same\nnamespace as this pod.\n\nExactly one of ResourceClaimName and ResourceClaimTemplateName must\nbe set." + }, + "resourceClaimTemplateName": { + "type": "string", + "description": "ResourceClaimTemplateName is the name of a ResourceClaimTemplate\nobject in the same namespace as this pod.\n\nThe template will be used to create a new ResourceClaim, which will\nbe bound to this pod. When this pod is deleted, the ResourceClaim\nwill also be deleted. The pod name and resource name, along with a\ngenerated component, will be used to form a unique name for the\nResourceClaim, which will be recorded in pod.status.resourceClaimStatuses.\n\nThis field is immutable and no changes will be made to the\ncorresponding ResourceClaim by the control plane after creating the\nResourceClaim.\n\nExactly one of ResourceClaimName and ResourceClaimTemplateName must\nbe set." + } + }, + "description": "PodResourceClaim references exactly one ResourceClaim, either directly\nor by naming a ResourceClaimTemplate which is then turned into a ResourceClaim\nfor the pod.\n\nIt adds a name to it that uniquely identifies the ResourceClaim inside the Pod.\nContainers that need access to the ResourceClaim reference it with this name." + }, + "v1PodSchedulingGate": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the scheduling gate.\nEach scheduling gate must have a unique name field." + } + }, + "description": "PodSchedulingGate is associated to a Pod to guard its scheduling." + }, + "v1PodSecurityContext": { + "type": "object", + "properties": { + "seLinuxOptions": { + "$ref": "#/components/schemas/v1SELinuxOptions" + }, + "windowsOptions": { + "$ref": "#/components/schemas/v1WindowsSecurityContextOptions" + }, + "runAsUser": { + "type": "string", + "format": "int64", + "title": "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "runAsGroup": { + "type": "string", + "format": "int64", + "title": "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence\nfor that container.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "runAsNonRoot": { + "type": "boolean", + "title": "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in SecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\n+optional" + }, + "supplementalGroups": { + "type": "array", + "items": { + "type": "string", + "format": "int64" + }, + "title": "A list of groups applied to the first process run in each container, in\naddition to the container's primary GID and fsGroup (if specified). If\nthe SupplementalGroupsPolicy feature is enabled, the\nsupplementalGroupsPolicy field determines whether these are in addition\nto or instead of any group memberships defined in the container image.\nIf unspecified, no additional groups are added, though group memberships\ndefined in the container image may still be used, depending on the\nsupplementalGroupsPolicy field.\nNote that this field cannot be set when spec.os.name is windows.\n+optional\n+listType=atomic" + }, + "supplementalGroupsPolicy": { + "type": "string", + "title": "Defines how supplemental groups of the first container processes are calculated.\nValid values are \"Merge\" and \"Strict\". If not specified, \"Merge\" is used.\n(Alpha) Using the field requires the SupplementalGroupsPolicy feature gate to be enabled\nand the container runtime must implement support for this feature.\nNote that this field cannot be set when spec.os.name is windows.\nTODO: update the default value to \"Merge\" when spec.os.name is not windows in v1.34\n+featureGate=SupplementalGroupsPolicy\n+optional" + }, + "fsGroup": { + "type": "string", + "format": "int64", + "description": "1. The owning GID will be the FSGroup\n2. The setgid bit is set (new files created in the volume will be owned by FSGroup)\n3. The permission bits are OR'd with rw-rw----\n\nIf unset, the Kubelet will not modify the ownership and permissions of any volume.\nNote that this field cannot be set when spec.os.name is windows.\n+optional", + "title": "A special supplemental group that applies to all containers in a pod.\nSome volume types allow the Kubelet to change the ownership of that volume\nto be owned by the pod:" + }, + "sysctls": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Sysctl" + }, + "title": "Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported\nsysctls (by the container runtime) might fail to launch.\nNote that this field cannot be set when spec.os.name is windows.\n+optional\n+listType=atomic" + }, + "fsGroupChangePolicy": { + "type": "string", + "title": "fsGroupChangePolicy defines behavior of changing ownership and permission of the volume\nbefore being exposed inside Pod. This field will only apply to\nvolume types which support fsGroup based ownership(and permissions).\nIt will have no effect on ephemeral volume types such as: secret, configmaps\nand emptydir.\nValid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "seccompProfile": { + "$ref": "#/components/schemas/v1SeccompProfile" + }, + "appArmorProfile": { + "$ref": "#/components/schemas/v1AppArmorProfile" + }, + "seLinuxChangePolicy": { + "type": "string", + "description": "seLinuxChangePolicy defines how the container's SELinux label is applied to all volumes used by the Pod.\nIt has no effect on nodes that do not support SELinux or to volumes does not support SELinux.\nValid values are \"MountOption\" and \"Recursive\".\n\n\"Recursive\" means relabeling of all files on all Pod volumes by the container runtime.\nThis may be slow for large volumes, but allows mixing privileged and unprivileged Pods sharing the same volume on the same node.\n\n\"MountOption\" mounts all eligible Pod volumes with `-o context` mount option.\nThis requires all Pods that share the same volume to use the same SELinux label.\nIt is not possible to share the same volume among privileged and unprivileged Pods.\nEligible volumes are in-tree FibreChannel and iSCSI volumes, and all CSI volumes\nwhose CSI driver announces SELinux support by setting spec.seLinuxMount: true in their\nCSIDriver instance. Other volumes are always re-labelled recursively.\n\"MountOption\" value is allowed only when SELinuxMount feature gate is enabled.\n\nIf not specified and SELinuxMount feature gate is enabled, \"MountOption\" is used.\nIf not specified and SELinuxMount feature gate is disabled, \"MountOption\" is used for ReadWriteOncePod volumes\nand \"Recursive\" for all other volumes.\n\nThis field affects only Pods that have SELinux label set, either in PodSecurityContext or in SecurityContext of all containers.\n\nAll Pods that use the same volume should use the same seLinuxChangePolicy, otherwise some pods can get stuck in ContainerCreating state.\nNote that this field cannot be set when spec.os.name is windows.\n+featureGate=SELinuxChangePolicy\n+optional" + } + }, + "description": "PodSecurityContext holds pod-level security attributes and common container settings.\nSome fields are also present in container.securityContext. Field values of\ncontainer.securityContext take precedence over field values of PodSecurityContext." + }, + "v1PodSpec": { + "type": "object", + "properties": { + "volumes": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Volume" + }, + "title": "List of volumes that can be mounted by containers belonging to the pod.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes\n+optional\n+patchMergeKey=name\n+patchStrategy=merge,retainKeys\n+listType=map\n+listMapKey=name" + }, + "initContainers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Container" + }, + "title": "List of initialization containers belonging to the pod.\nInit containers are executed in order prior to containers being started. If any\ninit container fails, the pod is considered to have failed and is handled according\nto its restartPolicy. The name for an init container or normal container must be\nunique among all containers.\nInit containers may not have Lifecycle actions, Readiness probes, Liveness probes, or Startup probes.\nThe resourceRequirements of an init container are taken into account during scheduling\nby finding the highest request/limit for each resource type, and then using the max of\nof that value or the sum of the normal containers. Limits are applied to init containers\nin a similar fashion.\nInit containers cannot currently be added or removed.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/\n+patchMergeKey=name\n+patchStrategy=merge\n+listType=map\n+listMapKey=name" + }, + "containers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Container" + }, + "title": "List of containers belonging to the pod.\nContainers cannot currently be added or removed.\nThere must be at least one container in a Pod.\nCannot be updated.\n+patchMergeKey=name\n+patchStrategy=merge\n+listType=map\n+listMapKey=name" + }, + "ephemeralContainers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1EphemeralContainer" + }, + "title": "List of ephemeral containers run in this pod. Ephemeral containers may be run in an existing\npod to perform user-initiated actions such as debugging. This list cannot be specified when\ncreating a pod, and it cannot be modified by updating the pod spec. In order to add an\nephemeral container to an existing pod, use the pod's ephemeralcontainers subresource.\n+optional\n+patchMergeKey=name\n+patchStrategy=merge\n+listType=map\n+listMapKey=name" + }, + "restartPolicy": { + "type": "string", + "title": "Restart policy for all containers within the pod.\nOne of Always, OnFailure, Never. In some contexts, only a subset of those values may be permitted.\nDefault to Always.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy\n+optional" + }, + "terminationGracePeriodSeconds": { + "type": "string", + "format": "int64", + "title": "Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nIf this value is nil, the default grace period will be used instead.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nDefaults to 30 seconds.\n+optional" + }, + "activeDeadlineSeconds": { + "type": "string", + "format": "int64", + "title": "Optional duration in seconds the pod may be active on the node relative to\nStartTime before the system will actively try to mark it failed and kill associated containers.\nValue must be a positive integer.\n+optional" + }, + "dnsPolicy": { + "type": "string", + "title": "Set DNS policy for the pod.\nDefaults to \"ClusterFirst\".\nValid values are 'ClusterFirstWithHostNet', 'ClusterFirst', 'Default' or 'None'.\nDNS parameters given in DNSConfig will be merged with the policy selected with DNSPolicy.\nTo have DNS options set along with hostNetwork, you have to specify DNS policy\nexplicitly to 'ClusterFirstWithHostNet'.\n+optional" + }, + "nodeSelector": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "NodeSelector is a selector which must be true for the pod to fit on a node.\nSelector which must match a node's labels for the pod to be scheduled on that node.\nMore info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/\n+optional\n+mapType=atomic" + }, + "serviceAccountName": { + "type": "string", + "title": "ServiceAccountName is the name of the ServiceAccount to use to run this pod.\nMore info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/\n+optional" + }, + "serviceAccount": { + "type": "string", + "title": "DeprecatedServiceAccount is a deprecated alias for ServiceAccountName.\nDeprecated: Use serviceAccountName instead.\n+k8s:conversion-gen=false\n+optional" + }, + "automountServiceAccountToken": { + "type": "boolean", + "title": "AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.\n+optional" + }, + "nodeName": { + "type": "string", + "title": "NodeName indicates in which node this pod is scheduled.\nIf empty, this pod is a candidate for scheduling by the scheduler defined in schedulerName.\nOnce this field is set, the kubelet for this node becomes responsible for the lifecycle of this pod.\nThis field should not be used to express a desire for the pod to be scheduled on a specific node.\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename\n+optional" + }, + "hostNetwork": { + "type": "boolean", + "title": "Host networking requested for this pod. Use the host's network namespace.\nIf this option is set, the ports that will be used must be specified.\nDefault to false.\n+k8s:conversion-gen=false\n+optional" + }, + "hostPID": { + "type": "boolean", + "title": "Use the host's pid namespace.\nOptional: Default to false.\n+k8s:conversion-gen=false\n+optional" + }, + "hostIPC": { + "type": "boolean", + "title": "Use the host's ipc namespace.\nOptional: Default to false.\n+k8s:conversion-gen=false\n+optional" + }, + "shareProcessNamespace": { + "type": "boolean", + "title": "Share a single process namespace between all of the containers in a pod.\nWhen this is set containers will be able to view and signal processes from other containers\nin the same pod, and the first process in each container will not be assigned PID 1.\nHostPID and ShareProcessNamespace cannot both be set.\nOptional: Default to false.\n+k8s:conversion-gen=false\n+optional" + }, + "securityContext": { + "$ref": "#/components/schemas/v1PodSecurityContext" + }, + "imagePullSecrets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "title": "ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec.\nIf specified, these secrets will be passed to individual puller implementations for them to use.\nMore info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod\n+optional\n+patchMergeKey=name\n+patchStrategy=merge\n+listType=map\n+listMapKey=name" + }, + "hostname": { + "type": "string", + "title": "Specifies the hostname of the Pod\nIf not specified, the pod's hostname will be set to a system-defined value.\n+optional" + }, + "subdomain": { + "type": "string", + "title": "If specified, the fully qualified Pod hostname will be \"...svc.\".\nIf not specified, the pod will not have a domainname at all.\n+optional" + }, + "affinity": { + "$ref": "#/components/schemas/v1Affinity" + }, + "schedulerName": { + "type": "string", + "title": "If specified, the pod will be dispatched by specified scheduler.\nIf not specified, the pod will be dispatched by default scheduler.\n+optional" + }, + "tolerations": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Toleration" + }, + "title": "If specified, the pod's tolerations.\n+optional\n+listType=atomic" + }, + "hostAliases": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1HostAlias" + }, + "title": "HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts\nfile if specified.\n+optional\n+patchMergeKey=ip\n+patchStrategy=merge\n+listType=map\n+listMapKey=ip" + }, + "priorityClassName": { + "type": "string", + "title": "If specified, indicates the pod's priority. \"system-node-critical\" and\n\"system-cluster-critical\" are two special keywords which indicate the\nhighest priorities with the former being the highest priority. Any other\nname must be defined by creating a PriorityClass object with that name.\nIf not specified, the pod priority will be default or zero if there is no\ndefault.\n+optional" + }, + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority value. Various system components use this field to find the\npriority of the pod. When Priority Admission Controller is enabled, it\nprevents users from setting this field. The admission controller populates\nthis field from PriorityClassName.\nThe higher the value, the higher the priority.\n+optional" + }, + "dnsConfig": { + "$ref": "#/components/schemas/v1PodDNSConfig" + }, + "readinessGates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodReadinessGate" + }, + "title": "If specified, all readiness gates will be evaluated for pod readiness.\nA pod is ready when all its containers are ready AND\nall conditions specified in the readiness gates have status equal to \"True\"\nMore info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates\n+optional\n+listType=atomic" + }, + "runtimeClassName": { + "type": "string", + "title": "RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used\nto run this pod. If no RuntimeClass resource matches the named class, the pod will not be run.\nIf unset or empty, the \"legacy\" RuntimeClass will be used, which is an implicit class with an\nempty definition that uses the default runtime handler.\nMore info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class\n+optional" + }, + "enableServiceLinks": { + "type": "boolean", + "title": "EnableServiceLinks indicates whether information about services should be injected into pod's\nenvironment variables, matching the syntax of Docker links.\nOptional: Defaults to true.\n+optional" + }, + "preemptionPolicy": { + "type": "string", + "title": "PreemptionPolicy is the Policy for preempting pods with lower priority.\nOne of Never, PreemptLowerPriority.\nDefaults to PreemptLowerPriority if unset.\n+optional" + }, + "overhead": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/resourceQuantity" + }, + "title": "Overhead represents the resource overhead associated with running a pod for a given RuntimeClass.\nThis field will be autopopulated at admission time by the RuntimeClass admission controller. If\nthe RuntimeClass admission controller is enabled, overhead must not be set in Pod create requests.\nThe RuntimeClass admission controller will reject Pod create requests which have the overhead already\nset. If RuntimeClass is configured and selected in the PodSpec, Overhead will be set to the value\ndefined in the corresponding RuntimeClass, otherwise it will remain unset and treated as zero.\nMore info: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md\n+optional" + }, + "topologySpreadConstraints": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1TopologySpreadConstraint" + }, + "title": "TopologySpreadConstraints describes how a group of pods ought to spread across topology\ndomains. Scheduler will schedule pods in a way which abides by the constraints.\nAll topologySpreadConstraints are ANDed.\n+optional\n+patchMergeKey=topologyKey\n+patchStrategy=merge\n+listType=map\n+listMapKey=topologyKey\n+listMapKey=whenUnsatisfiable" + }, + "setHostnameAsFQDN": { + "type": "boolean", + "title": "If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default).\nIn Linux containers, this means setting the FQDN in the hostname field of the kernel (the nodename field of struct utsname).\nIn Windows containers, this means setting the registry value of hostname for the registry key HKEY_LOCAL_MACHINE\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip\\\\Parameters to FQDN.\nIf a pod does not have FQDN, this has no effect.\nDefault to false.\n+optional" + }, + "os": { + "$ref": "#/components/schemas/v1PodOS" + }, + "hostUsers": { + "type": "boolean", + "title": "Use the host's user namespace.\nOptional: Default to true.\nIf set to true or not present, the pod will be run in the host user namespace, useful\nfor when the pod needs a feature only available to the host user namespace, such as\nloading a kernel module with CAP_SYS_MODULE.\nWhen set to false, a new userns is created for the pod. Setting false is useful for\nmitigating container breakout vulnerabilities even allowing users to run their\ncontainers as root without actually having root privileges on the host.\nThis field is alpha-level and is only honored by servers that enable the UserNamespacesSupport feature.\n+k8s:conversion-gen=false\n+optional" + }, + "schedulingGates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodSchedulingGate" + }, + "description": "SchedulingGates is an opaque list of values that if specified will block scheduling the pod.\nIf schedulingGates is not empty, the pod will stay in the SchedulingGated state and the\nscheduler will not attempt to schedule the pod.\n\nSchedulingGates can only be set at pod creation time, and be removed only afterwards.\n\n+patchMergeKey=name\n+patchStrategy=merge\n+listType=map\n+listMapKey=name\n+optional" + }, + "resourceClaims": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1PodResourceClaim" + }, + "description": "ResourceClaims defines which ResourceClaims must be allocated\nand reserved before the Pod is allowed to start. The resources\nwill be made available to those containers which consume them\nby name.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable.\n\n+patchMergeKey=name\n+patchStrategy=merge,retainKeys\n+listType=map\n+listMapKey=name\n+featureGate=DynamicResourceAllocation\n+optional" + }, + "resources": { + "$ref": "#/components/schemas/v1ResourceRequirements" + } + }, + "description": "PodSpec is a description of a pod." + }, + "v1PodTemplateMetadata": { + "type": "object", + "properties": { + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Labels Additional labels to add to the experiment\n+optional" + }, + "annotations": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "title": "Annotations additional annotations to add to the experiment\n+optional" + } + }, + "title": "PodTemplateMetadata extra labels to add to the template" + }, + "v1PodTemplateSpec": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "spec": { + "$ref": "#/components/schemas/v1PodSpec" + } + }, + "title": "PodTemplateSpec describes the data a pod should have when created from a template" + }, + "v1PortStatus": { + "type": "object", + "properties": { + "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\"" + }, + "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" + } + }, + "title": "PortStatus represents the error condition of a service port" + }, + "v1PortworxVolumeSource": { + "type": "object", + "properties": { + "volumeID": { + "type": "string", + "title": "volumeID uniquely identifies a Portworx volume" + }, + "fsType": { + "type": "string", + "description": "fSType represents the filesystem type to mount\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\". Implicitly inferred to be \"ext4\" if unspecified." + }, + "readOnly": { + "type": "boolean", + "title": "readOnly defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\n+optional" + } + }, + "description": "PortworxVolumeSource represents a Portworx volume resource." + }, + "v1PreferredSchedulingTerm": { + "type": "object", + "properties": { + "weight": { + "type": "integer", + "format": "int32", + "description": "Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100." + }, + "preference": { + "$ref": "#/components/schemas/v1NodeSelectorTerm" + } + }, + "description": "An empty preferred scheduling term matches all objects with implicit weight 0\n(i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op)." + }, + "v1Probe": { + "type": "object", + "properties": { + "handler": { + "$ref": "#/components/schemas/v1ProbeHandler" + }, + "initialDelaySeconds": { + "type": "integer", + "format": "int32", + "title": "Number of seconds after the container has started before liveness probes are initiated.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes\n+optional" + }, + "timeoutSeconds": { + "type": "integer", + "format": "int32", + "title": "Number of seconds after which the probe times out.\nDefaults to 1 second. Minimum value is 1.\nMore info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes\n+optional" + }, + "periodSeconds": { + "type": "integer", + "format": "int32", + "title": "How often (in seconds) to perform the probe.\nDefault to 10 seconds. Minimum value is 1.\n+optional" + }, + "successThreshold": { + "type": "integer", + "format": "int32", + "title": "Minimum consecutive successes for the probe to be considered successful after having failed.\nDefaults to 1. Must be 1 for liveness and startup. Minimum value is 1.\n+optional" + }, + "failureThreshold": { + "type": "integer", + "format": "int32", + "title": "Minimum consecutive failures for the probe to be considered failed after having succeeded.\nDefaults to 3. Minimum value is 1.\n+optional" + }, + "terminationGracePeriodSeconds": { + "type": "string", + "format": "int64", + "title": "Optional duration in seconds the pod needs to terminate gracefully upon probe failure.\nThe grace period is the duration in seconds after the processes running in the pod are sent\na termination signal and the time when the processes are forcibly halted with a kill signal.\nSet this value longer than the expected cleanup time for your process.\nIf this value is nil, the pod's terminationGracePeriodSeconds will be used. Otherwise, this\nvalue overrides the value provided by the pod spec.\nValue must be non-negative integer. The value zero indicates stop immediately via\nthe kill signal (no opportunity to shut down).\nThis is a beta field and requires enabling ProbeTerminationGracePeriod feature gate.\nMinimum value is 1. spec.terminationGracePeriodSeconds is used if unset.\n+optional" + } + }, + "description": "Probe describes a health check to be performed against a container to determine whether it is\nalive or ready to receive traffic." + }, + "v1ProbeHandler": { + "type": "object", + "properties": { + "exec": { + "$ref": "#/components/schemas/v1ExecAction" + }, + "httpGet": { + "$ref": "#/components/schemas/v1HTTPGetAction" + }, + "tcpSocket": { + "$ref": "#/components/schemas/v1TCPSocketAction" + }, + "grpc": { + "$ref": "#/components/schemas/v1GRPCAction" + } + }, + "description": "ProbeHandler defines a specific action that should be taken in a probe.\nOne and only one of the fields must be specified." + }, + "v1ProjectedVolumeSource": { + "type": "object", + "properties": { + "sources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1VolumeProjection" + }, + "title": "sources is the list of volume projections. Each entry in this list\nhandles one source.\n+optional\n+listType=atomic" + }, + "defaultMode": { + "type": "integer", + "format": "int32", + "title": "defaultMode are the mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values for mode bits.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set.\n+optional" + } + }, + "title": "Represents a projected volume source" + }, + "v1PrometheusAuth": { + "type": "object", + "properties": { + "sigv4": { + "$ref": "#/components/schemas/v1Sigv4Config" + } + }, + "title": "PrometheusMetric defines the prometheus query to perform canary analysis" + }, + "v1PrometheusMetric": { + "type": "object", + "properties": { + "address": { + "type": "string", + "title": "Address is the HTTP address and port of the prometheus server" + }, + "query": { + "type": "string", + "title": "Query is a raw prometheus query to perform" + }, + "authentication": { + "$ref": "#/components/schemas/v1PrometheusAuth" + }, + "timeout": { + "type": "string", + "format": "int64", + "title": "Timeout represents the duration within which a prometheus query should complete. It is expressed in seconds.\n+optional" + }, + "insecure": { + "type": "boolean", + "title": "Insecure skips host TLS verification" + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1WebMetricHeader" + }, + "title": "Headers are HTTP headers to use in the request\n+optional\n+patchMergeKey=key\n+patchStrategy=merge" + } + }, + "title": "PrometheusMetric defines the prometheus query to perform canary analysis" + }, + "v1Proxy": { + "type": "object", + "properties": { + "http": { + "type": "string" + }, + "https": { + "type": "string" + }, + "username": { + "type": "string" + }, + "password": { + "type": "string" + }, + "skipSSLVerify": { + "type": "boolean" + } + } + }, + "v1QuobyteVolumeSource": { + "type": "object", + "properties": { + "registry": { + "type": "string", + "title": "registry represents a single or multiple Quobyte Registry services\nspecified as a string as host:port pair (multiple entries are separated with commas)\nwhich acts as the central registry for volumes" + }, + "volume": { + "type": "string", + "description": "volume is a string that references an already created Quobyte volume by name." + }, + "readOnly": { + "type": "boolean", + "title": "readOnly here will force the Quobyte volume to be mounted with read-only permissions.\nDefaults to false.\n+optional" + }, + "user": { + "type": "string", + "title": "user to map volume access to\nDefaults to serivceaccount user\n+optional" + }, + "group": { + "type": "string", + "title": "group to map volume access to\nDefault is no group\n+optional" + }, + "tenant": { + "type": "string", + "title": "tenant owning the given Quobyte volume in the Backend\nUsed with dynamically provisioned Quobyte volumes, value is set by the plugin\n+optional" + } + }, + "description": "Represents a Quobyte mount that lasts the lifetime of a pod.\nQuobyte volumes do not support ownership management or SELinux relabeling." + }, + "v1RBDVolumeSource": { + "type": "object", + "properties": { + "monitors": { + "type": "array", + "items": { + "type": "string" + }, + "title": "monitors is a collection of Ceph monitors.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it\n+listType=atomic" + }, + "image": { + "type": "string", + "title": "image is the rados image name.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it" + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type of the volume that you want to mount.\nTip: Ensure that the filesystem type is supported by the host operating system.\nExamples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#rbd\nTODO: how do we prevent errors in the filesystem from compromising the machine\n+optional" + }, + "pool": { + "type": "string", + "title": "pool is the rados pool name.\nDefault is rbd.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it\n+optional\n+default=\"rbd\"" + }, + "user": { + "type": "string", + "title": "user is the rados user name.\nDefault is admin.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it\n+optional\n+default=\"admin\"" + }, + "keyring": { + "type": "string", + "title": "keyring is the path to key ring for RBDUser.\nDefault is /etc/ceph/keyring.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it\n+optional\n+default=\"/etc/ceph/keyring\"" + }, + "secretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly here will force the ReadOnly setting in VolumeMounts.\nDefaults to false.\nMore info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it\n+optional" + } + }, + "description": "Represents a Rados Block Device mount that lasts the lifetime of a pod.\nRBD volumes support ownership management and SELinux relabeling." + }, + "v1RecentDeploymentQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "operationPhase": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1OperationPhase" + } + }, + "applicationName": { + "type": "string" + }, + "startTime": { + "type": "integer", + "format": "int32" + }, + "endTime": { + "type": "integer", + "format": "int32" + }, + "searchTerm": { + "type": "string" + }, + "agentIdentifier": { + "type": "string" + }, + "serviceRef": { + "type": "string" + }, + "envRef": { + "type": "string" + } + }, + "description": "RecentDeploymentQuery", + "title": "RecentDeploymentQuery", + "required": [ + "accountIdentifier" + ] + }, + "v1RecentDeploymentsDetailsList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1DeploymentsDetails" + } + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1RecentlyCreatedCount": { + "type": "object", + "properties": { + "total": { + "type": "integer", + "format": "int32" + }, + "recentlyCreated": { + "type": "integer", + "format": "int32" + } + } + }, + "v1RecentlyCreatedOverview": { + "type": "object", + "properties": { + "appCounts": { + "$ref": "#/components/schemas/v1RecentlyCreatedCount" + }, + "repoCounts": { + "$ref": "#/components/schemas/v1RecentlyCreatedCount" + }, + "clusterCounts": { + "$ref": "#/components/schemas/v1RecentlyCreatedCount" + }, + "appSetCounts": { + "$ref": "#/components/schemas/v1RecentlyCreatedCount" + } + } + }, + "v1RepoByUrlRespList": { + "type": "object", + "properties": { + "repository": { + "type": "array", + "items": { + "$ref": "#/components/schemas/servicev1Repository" + } + } + } + }, + "v1RepoListReq": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "searchTerm": { + "type": "string" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "filter": { + "type": "object", + "description": "Filters for Repositories. Eg. \"identifier\": { \"$in\": [\"id1\", \"id2\"]" + }, + "sortBy": { + "$ref": "#/components/schemas/RepoListReqRepoSortByOptions" + }, + "sortOrder": { + "$ref": "#/components/schemas/v1SortOrderOptions" + }, + "inheritedCreds": { + "type": "boolean" + } + } + }, + "v1RepositoryCredentialsQuery": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account Identifier for the Entity." + }, + "projectIdentifier": { + "type": "string", + "description": "Project Identifier for the Entity." + }, + "orgIdentifier": { + "type": "string", + "description": "Organization Identifier for the Entity." + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + }, + "identifier": { + "type": "string" + }, + "searchTerm": { + "type": "string" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "filter": { + "type": "object", + "description": "Filters for Repo Credentials. Eg. \"identifier\": { \"$in\": [\"id1\", \"id2\"]" + } + } + }, + "v1Repositorylist": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/servicev1Repository" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1ResourceClaim": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name must match the name of one entry in pod.spec.resourceClaims of\nthe Pod where this field is used. It makes that resource available\ninside a container." + }, + "request": { + "type": "string", + "description": "Request is the name chosen for a request in the referenced claim.\nIf empty, everything from the claim is made available, otherwise\nonly the result of this request.\n\n+optional" + } + }, + "description": "ResourceClaim references one entry in PodSpec.ResourceClaims." + }, + "v1ResourceFieldSelector": { + "type": "object", + "properties": { + "containerName": { + "type": "string", + "title": "Container name: required for volumes, optional for env vars\n+optional" + }, + "resource": { + "type": "string", + "title": "Required: resource to select" + }, + "divisor": { + "$ref": "#/components/schemas/resourceQuantity" + } + }, + "title": "ResourceFieldSelector represents container resources (cpu, memory) and their output format\n+structType=atomic" + }, + "v1ResourceRequirements": { + "type": "object", + "properties": { + "limits": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/resourceQuantity" + }, + "title": "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/\n+optional" + }, + "requests": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/resourceQuantity" + }, + "title": "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/\n+optional" + }, + "claims": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1ResourceClaim" + }, + "description": "Claims lists the names of resources, defined in spec.resourceClaims,\nthat are used by this container.\n\nThis is an alpha field and requires enabling the\nDynamicResourceAllocation feature gate.\n\nThis field is immutable. It can only be set for containers.\n\n+listType=map\n+listMapKey=name\n+featureGate=DynamicResourceAllocation\n+optional" + } + }, + "description": "ResourceRequirements describes the compute resource requirements." + }, + "v1RolloutAnalysis": { + "type": "object", + "properties": { + "templates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutAnalysisTemplate" + }, + "title": "Templates reference to a list of analysis templates to combine for an AnalysisRun\n+patchMergeKey=templateName\n+patchStrategy=merge" + }, + "args": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1AnalysisRunArgument" + }, + "title": "Args the arguments that will be added to the AnalysisRuns\n+patchMergeKey=name\n+patchStrategy=merge" + }, + "dryRun": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1DryRun" + }, + "title": "DryRun object contains the settings for running the analysis in Dry-Run mode\n+patchMergeKey=metricName\n+patchStrategy=merge\n+optional" + }, + "measurementRetention": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1MeasurementRetention" + }, + "title": "MeasurementRetention object contains the settings for retaining the number of measurements during the analysis\n+patchMergeKey=metricName\n+patchStrategy=merge\n+optional" + }, + "analysisRunMetadata": { + "$ref": "#/components/schemas/v1AnalysisRunMetadata" + } + }, + "title": "RolloutAnalysis defines a template that is used to create a analysisRun" + }, + "v1RolloutAnalysisRunInfo": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "icon": { + "type": "string" + }, + "revision": { + "type": "string" + }, + "status": { + "type": "string" + }, + "successful": { + "type": "integer", + "format": "int32" + }, + "failed": { + "type": "integer", + "format": "int32" + }, + "inconclusive": { + "type": "integer", + "format": "int32" + }, + "error": { + "type": "integer", + "format": "int32" + }, + "jobs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutJobInfo" + } + }, + "nonJobInfo": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutNonJobInfo" + } + }, + "metrics": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1Metric" + } + } + } + }, + "v1RolloutAnalysisTemplate": { + "type": "object", + "properties": { + "templateName": { + "type": "string", + "title": "TemplateName name of template to use in AnalysisRun\n+optional" + }, + "clusterScope": { + "type": "boolean", + "title": "Whether to look for the templateName at cluster scope or namespace scope\n+optional" + } + } + }, + "v1RolloutContainerInfo": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "image": { + "type": "string" + } + } + }, + "v1RolloutExperimentInfo": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "icon": { + "type": "string" + }, + "revision": { + "type": "string" + }, + "status": { + "type": "string" + }, + "message": { + "type": "string" + }, + "replicaSets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutReplicaSetInfo" + } + }, + "analysisRuns": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutAnalysisRunInfo" + } + } + } + }, + "v1RolloutExperimentStep": { + "type": "object", + "properties": { + "templates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutExperimentTemplate" + }, + "title": "Templates what templates that should be added to the experiment. Should be non-nil\n+patchMergeKey=name\n+patchStrategy=merge" + }, + "duration": { + "type": "string", + "title": "Duration is a duration string (e.g. 30s, 5m, 1h) that the experiment should run for\n+optional" + }, + "analyses": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutExperimentStepAnalysisTemplateRef" + }, + "title": "Analyses reference which analysis templates to run with the experiment\n+patchMergeKey=name\n+patchStrategy=merge" + } + }, + "title": "RolloutExperimentStep defines a template that is used to create a experiment for a step" + }, + "v1RolloutExperimentStepAnalysisTemplateRef": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name is a name for this analysis template invocation" + }, + "templateName": { + "type": "string", + "title": "TemplateName reference of the AnalysisTemplate name used by the Experiment to create the run" + }, + "clusterScope": { + "type": "boolean", + "title": "Whether to look for the templateName at cluster scope or namespace scope\n+optional" + }, + "args": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1AnalysisRunArgument" + }, + "title": "Args the arguments that will be added to the AnalysisRuns\n+patchMergeKey=name\n+patchStrategy=merge" + }, + "requiredForCompletion": { + "type": "boolean", + "title": "RequiredForCompletion blocks the Experiment from completing until the analysis has completed" + } + } + }, + "v1RolloutExperimentTemplate": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name description of template that passed to the template" + }, + "specRef": { + "type": "string", + "title": "SpecRef indicates where the rollout should get the RS template from" + }, + "replicas": { + "type": "integer", + "format": "int32", + "title": "Replicas replica count for the template\n+optional" + }, + "metadata": { + "$ref": "#/components/schemas/v1PodTemplateMetadata" + }, + "selector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "weight": { + "type": "integer", + "format": "int32", + "title": "Weight sets the percentage of traffic the template's replicas should receive" + }, + "service": { + "$ref": "#/components/schemas/v1TemplateService" + } + }, + "title": "RolloutExperimentTemplate defines the template used to create experiments for the Rollout's experiment canary step" + }, + "v1RolloutInfo": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "status": { + "type": "string" + }, + "message": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "strategy": { + "type": "string" + }, + "step": { + "type": "string" + }, + "setWeight": { + "type": "string" + }, + "actualWeight": { + "type": "string" + }, + "ready": { + "type": "integer", + "format": "int32" + }, + "current": { + "type": "integer", + "format": "int32" + }, + "desired": { + "type": "integer", + "format": "int32" + }, + "updated": { + "type": "integer", + "format": "int32" + }, + "available": { + "type": "integer", + "format": "int32" + }, + "restartedAt": { + "type": "string" + }, + "generation": { + "type": "string" + }, + "replicaSets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutReplicaSetInfo" + } + }, + "experiments": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutExperimentInfo" + } + }, + "analysisRuns": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutAnalysisRunInfo" + } + }, + "containers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutContainerInfo" + } + }, + "steps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1CanaryStep" + } + }, + "canaryRevision": { + "type": "integer", + "format": "int32" + }, + "canaryImages": { + "type": "array", + "items": { + "type": "string" + } + }, + "previewImages": { + "type": "array", + "items": { + "type": "string" + } + }, + "stableImages": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "v1RolloutJobInfo": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "status": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "startedAt": { + "$ref": "#/components/schemas/v1Time" + } + } + }, + "v1RolloutNonJobInfo": { + "type": "object", + "properties": { + "value": { + "type": "string" + }, + "status": { + "type": "string" + }, + "metricName": { + "type": "string" + }, + "startedAt": { + "$ref": "#/components/schemas/v1Time" + } + } + }, + "v1RolloutPause": { + "type": "object", + "properties": { + "duration": { + "$ref": "#/components/schemas/intstrIntOrString" + } + }, + "title": "RolloutPause defines a pause stage for a rollout" + }, + "v1RolloutPodInfo": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "status": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "ready": { + "type": "string" + }, + "restarts": { + "type": "integer", + "format": "int32" + } + } + }, + "v1RolloutReplicaSetInfo": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/v1ObjectMeta" + }, + "status": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "revision": { + "type": "string" + }, + "stable": { + "type": "boolean" + }, + "canary": { + "type": "boolean" + }, + "active": { + "type": "boolean" + }, + "preview": { + "type": "boolean" + }, + "replicas": { + "type": "integer", + "format": "int32" + }, + "available": { + "type": "integer", + "format": "int32" + }, + "template": { + "type": "string" + }, + "scaleDownDeadline": { + "type": "string" + }, + "images": { + "type": "array", + "items": { + "type": "string" + } + }, + "pods": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RolloutPodInfo" + } + }, + "ping": { + "type": "boolean" + }, + "pong": { + "type": "boolean" + } + } + }, + "v1RouteMatch": { + "type": "object", + "properties": { + "method": { + "$ref": "#/components/schemas/v1StringMatch" + }, + "path": { + "$ref": "#/components/schemas/v1StringMatch" + }, + "headers": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/v1StringMatch" + }, + "title": "Headers What request with matching headers should be mirrored\n+optional" + } + } + }, + "v1SELinuxOptions": { + "type": "object", + "properties": { + "user": { + "type": "string", + "title": "User is a SELinux user label that applies to the container.\n+optional" + }, + "role": { + "type": "string", + "title": "Role is a SELinux role label that applies to the container.\n+optional" + }, + "type": { + "type": "string", + "title": "Type is a SELinux type label that applies to the container.\n+optional" + }, + "level": { + "type": "string", + "title": "Level is SELinux level label that applies to the container.\n+optional" + } + }, + "title": "SELinuxOptions are the labels to be applied to the container" + }, + "v1ScaleIOVolumeSource": { + "type": "object", + "properties": { + "gateway": { + "type": "string", + "description": "gateway is the host address of the ScaleIO API Gateway." + }, + "system": { + "type": "string", + "description": "system is the name of the storage system as configured in ScaleIO." + }, + "secretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "sslEnabled": { + "type": "boolean", + "title": "sslEnabled Flag enable/disable SSL communication with Gateway, default false\n+optional" + }, + "protectionDomain": { + "type": "string", + "title": "protectionDomain is the name of the ScaleIO Protection Domain for the configured storage.\n+optional" + }, + "storagePool": { + "type": "string", + "title": "storagePool is the ScaleIO Storage Pool associated with the protection domain.\n+optional" + }, + "storageMode": { + "type": "string", + "title": "storageMode indicates whether the storage for a volume should be ThickProvisioned or ThinProvisioned.\nDefault is ThinProvisioned.\n+optional\n+default=\"ThinProvisioned\"" + }, + "volumeName": { + "type": "string", + "description": "volumeName is the name of a volume already created in the ScaleIO system\nthat is associated with this volume source." + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\".\nDefault is \"xfs\".\n+optional\n+default=\"xfs\"" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly Defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\n+optional" + } + }, + "title": "ScaleIOVolumeSource represents a persistent ScaleIO volume" + }, + "v1ScopeDetail": { + "type": "object", + "properties": { + "scope": { + "type": "string" + }, + "region": { + "type": "string" + }, + "step": { + "type": "string", + "format": "int64" + }, + "start": { + "type": "string" + }, + "end": { + "type": "string" + } + } + }, + "v1SeccompProfile": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Localhost - a profile defined in a file on the node should be used.\nRuntimeDefault - the container runtime default profile should be used.\nUnconfined - no profile should be applied.\n+unionDiscriminator", + "title": "type indicates which kind of seccomp profile will be applied.\nValid options are:" + }, + "localhostProfile": { + "type": "string", + "title": "localhostProfile indicates a profile defined in a file on the node should be used.\nThe profile must be preconfigured on the node to work.\nMust be a descending path, relative to the kubelet's configured seccomp profile location.\nMust be set if type is \"Localhost\". Must NOT be set for any other type.\n+optional" + } + }, + "title": "SeccompProfile defines a pod/container's seccomp profile settings.\nOnly one profile source may be set.\n+union" + }, + "v1SecretEnvSource": { + "type": "object", + "properties": { + "localObjectReference": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "optional": { + "type": "boolean", + "title": "Specify whether the Secret must be defined\n+optional" + } + }, + "description": "SecretEnvSource selects a Secret to populate the environment\nvariables with.\n\nThe contents of the target Secret's Data field will represent the\nkey-value pairs as environment variables." + }, + "v1SecretKeySelector": { + "type": "object", + "properties": { + "localObjectReference": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "key": { + "type": "string", + "description": "The key of the secret to select from. Must be a valid secret key." + }, + "optional": { + "type": "boolean", + "title": "Specify whether the Secret or its key must be defined\n+optional" + } + }, + "title": "SecretKeySelector selects a key of a Secret.\n+structType=atomic" + }, + "v1SecretProjection": { + "type": "object", + "properties": { + "localObjectReference": { + "$ref": "#/components/schemas/v1LocalObjectReference" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1KeyToPath" + }, + "title": "items if unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'.\n+optional\n+listType=atomic" + }, + "optional": { + "type": "boolean", + "title": "optional field specify whether the Secret or its key must be defined\n+optional" + } + }, + "description": "Adapts a secret into a projected volume.\n\nThe contents of the target Secret's Data field will be presented in a\nprojected volume as files using the keys in the Data field as the file names.\nNote that this is identical to a secret volume source without the default\nmode." + }, + "v1SecretVolumeSource": { + "type": "object", + "properties": { + "secretName": { + "type": "string", + "title": "secretName is the name of the secret in the pod's namespace to use.\nMore info: https://kubernetes.io/docs/concepts/storage/volumes#secret\n+optional" + }, + "items": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1KeyToPath" + }, + "title": "items If unspecified, each key-value pair in the Data field of the referenced\nSecret will be projected into the volume as a file whose name is the\nkey and content is the value. If specified, the listed keys will be\nprojected into the specified paths, and unlisted keys will not be\npresent. If a key is specified which is not present in the Secret,\nthe volume setup will error unless it is marked optional. Paths must be\nrelative and may not contain the '..' path or start with '..'.\n+optional\n+listType=atomic" + }, + "defaultMode": { + "type": "integer", + "format": "int32", + "title": "defaultMode is Optional: mode bits used to set permissions on created files by default.\nMust be an octal value between 0000 and 0777 or a decimal value between 0 and 511.\nYAML accepts both octal and decimal values, JSON requires decimal values\nfor mode bits. Defaults to 0644.\nDirectories within the path are not affected by this setting.\nThis might be in conflict with other options that affect the file\nmode, like fsGroup, and the result can be other mode bits set.\n+optional" + }, + "optional": { + "type": "boolean", + "title": "optional field specify whether the Secret or its keys must be defined\n+optional" + } + }, + "description": "Adapts a Secret into a volume.\n\nThe contents of the target Secret's Data field will be presented in a volume\nas files using the keys in the Data field as the file names.\nSecret volumes support ownership management and SELinux relabeling." + }, + "v1SecurityContext": { + "type": "object", + "properties": { + "capabilities": { + "$ref": "#/components/schemas/v1Capabilities" + }, + "privileged": { + "type": "boolean", + "title": "Run container in privileged mode.\nProcesses in privileged containers are essentially equivalent to root on the host.\nDefaults to false.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "seLinuxOptions": { + "$ref": "#/components/schemas/v1SELinuxOptions" + }, + "windowsOptions": { + "$ref": "#/components/schemas/v1WindowsSecurityContextOptions" + }, + "runAsUser": { + "type": "string", + "format": "int64", + "title": "The UID to run the entrypoint of the container process.\nDefaults to user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "runAsGroup": { + "type": "string", + "format": "int64", + "title": "The GID to run the entrypoint of the container process.\nUses runtime default if unset.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "runAsNonRoot": { + "type": "boolean", + "title": "Indicates that the container must run as a non-root user.\nIf true, the Kubelet will validate the image at runtime to ensure that it\ndoes not run as UID 0 (root) and fail to start the container if it does.\nIf unset or false, no such validation will be performed.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\n+optional" + }, + "readOnlyRootFilesystem": { + "type": "boolean", + "title": "Whether this container has a read-only root filesystem.\nDefault is false.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "allowPrivilegeEscalation": { + "type": "boolean", + "title": "AllowPrivilegeEscalation controls whether a process can gain more\nprivileges than its parent process. This bool directly controls if\nthe no_new_privs flag will be set on the container process.\nAllowPrivilegeEscalation is true always when the container is:\n1) run as Privileged\n2) has CAP_SYS_ADMIN\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "procMount": { + "type": "string", + "title": "procMount denotes the type of proc mount to use for the containers.\nThe default value is Default which uses the container runtime defaults for\nreadonly paths and masked paths.\nThis requires the ProcMountType feature flag to be enabled.\nNote that this field cannot be set when spec.os.name is windows.\n+optional" + }, + "seccompProfile": { + "$ref": "#/components/schemas/v1SeccompProfile" + }, + "appArmorProfile": { + "$ref": "#/components/schemas/v1AppArmorProfile" + } + }, + "description": "SecurityContext holds security configuration that will be applied to a container.\nSome fields are present in both SecurityContext and PodSecurityContext. When both\nare set, the values in SecurityContext take precedence." + }, + "v1SemanticVersion": { + "type": "object", + "properties": { + "major": { + "type": "string", + "format": "int64" + }, + "minor": { + "type": "string", + "format": "int64" + }, + "patch": { + "type": "string", + "format": "int64" + } + } + }, + "v1ServiceAccountTokenProjection": { + "type": "object", + "properties": { + "audience": { + "type": "string", + "title": "audience is the intended audience of the token. A recipient of a token\nmust identify itself with an identifier specified in the audience of the\ntoken, and otherwise should reject the token. The audience defaults to the\nidentifier of the apiserver.\n+optional" + }, + "expirationSeconds": { + "type": "string", + "format": "int64", + "title": "expirationSeconds is the requested duration of validity of the service\naccount token. As the token approaches expiration, the kubelet volume\nplugin will proactively rotate the service account token. The kubelet will\nstart trying to rotate the token if the token is older than 80 percent of\nits time to live or if the token is older than 24 hours.Defaults to 1 hour\nand must be at least 10 minutes.\n+optional" + }, + "path": { + "type": "string", + "description": "path is the path relative to the mount point of the file to project the\ntoken into." + } + }, + "description": "ServiceAccountTokenProjection represents a projected service account token\nvolume. This projection can be used to insert a service account token into\nthe pods runtime filesystem for use against APIs (Kubernetes API Server or\notherwise)." + }, + "v1SetCanaryScale": { + "type": "object", + "properties": { + "weight": { + "type": "integer", + "format": "int32", + "title": "Weight sets the percentage of replicas the newRS should have\n+optional" + }, + "replicas": { + "type": "integer", + "format": "int32", + "title": "Replicas sets the number of replicas the newRS should have\n+optional" + }, + "matchTrafficWeight": { + "type": "boolean", + "title": "MatchTrafficWeight cancels out previously set Replicas or Weight, effectively activating SetWeight\n+optional" + } + }, + "title": "SetCanaryScale defines how to scale the newRS without changing traffic weight" + }, + "v1SetHeaderRoute": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name this is the name of the route to use for the mirroring of traffic this also needs\nto be included in the `spec.strategy.canary.trafficRouting.managedRoutes` field" + }, + "match": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1HeaderRoutingMatch" + } + } + }, + "title": "SetHeaderRoute defines the route with specified header name to send 100% of traffic to the canary service" + }, + "v1SetMirrorRoute": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name this is the name of the route to use for the mirroring of traffic this also needs\nto be included in the `spec.strategy.canary.trafficRouting.managedRoutes` field" + }, + "match": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1RouteMatch" + }, + "title": "Match Contains a list of rules that if mated will mirror the traffic to the services\n+optional" + }, + "percentage": { + "type": "integer", + "format": "int32", + "title": "Services The list of services to mirror the traffic to if the method, path, headers match\nService string `json:\"service\" protobuf:\"bytes,3,opt,name=service\"`\nPercentage What percent of the traffic that matched the rules should be mirrored" + } + } + }, + "v1Sigv4Config": { + "type": "object", + "properties": { + "address": { + "type": "string", + "title": "Region is the AWS Region to sign the SigV4 Request" + }, + "profile": { + "type": "string", + "title": "Profile is the Credential Profile used to sign the SigV4 Request" + }, + "roleArn": { + "type": "string", + "title": "RoleARN is the IAM role used to sign the SIgV4 Request" + } + } + }, + "v1SkyWalkingMetric": { + "type": "object", + "properties": { + "address": { + "type": "string" + }, + "query": { + "type": "string" + }, + "interval": { + "type": "string" + } + } + }, + "v1SleepAction": { + "type": "object", + "properties": { + "seconds": { + "type": "string", + "format": "int64", + "description": "Seconds is the number of seconds to sleep." + } + }, + "description": "SleepAction describes a \"sleep\" action." + }, + "v1SortOrderOptions": { + "type": "string", + "enum": [ + "SORT_ORDER_NOT_SET", + "ASC", + "DESC" + ], + "default": "SORT_ORDER_NOT_SET" + }, + "v1StorageOSVolumeSource": { + "type": "object", + "properties": { + "volumeName": { + "type": "string", + "description": "volumeName is the human-readable name of the StorageOS volume. Volume\nnames are only unique within a namespace." + }, + "volumeNamespace": { + "type": "string", + "title": "volumeNamespace specifies the scope of the volume within StorageOS. If no\nnamespace is specified then the Pod's namespace will be used. This allows the\nKubernetes name scoping to be mirrored within StorageOS for tighter integration.\nSet VolumeName to any name to override the default behaviour.\nSet to \"default\" if you are not using namespaces within StorageOS.\nNamespaces that do not pre-exist within StorageOS will be created.\n+optional" + }, + "fsType": { + "type": "string", + "title": "fsType is the filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\n+optional" + }, + "readOnly": { + "type": "boolean", + "title": "readOnly defaults to false (read/write). ReadOnly here will force\nthe ReadOnly setting in VolumeMounts.\n+optional" + }, + "secretRef": { + "$ref": "#/components/schemas/v1LocalObjectReference" + } + }, + "description": "Represents a StorageOS persistent volume resource." + }, + "v1StringMatch": { + "type": "object", + "properties": { + "exact": { + "type": "string", + "title": "Exact The string must match exactly" + }, + "prefix": { + "type": "string", + "title": "Prefix The string will be prefixed matched" + }, + "regex": { + "type": "string", + "title": "Regex The string will be regular expression matched" + } + }, + "title": "StringMatch Used to define what type of matching we will use exact, prefix, or regular expression" + }, + "v1SuccessPolicy": { + "type": "object", + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1SuccessPolicyRule" + }, + "title": "rules represents the list of alternative rules for the declaring the Jobs\nas successful before `.status.succeeded >= .spec.completions`. Once any of the rules are met,\nthe \"SucceededCriteriaMet\" condition is added, and the lingering pods are removed.\nThe terminal state for such a Job has the \"Complete\" condition.\nAdditionally, these rules are evaluated in order; Once the Job meets one of the rules,\nother rules are ignored. At most 20 elements are allowed.\n+listType=atomic" + } + }, + "description": "SuccessPolicy describes when a Job can be declared as succeeded based on the success of some indexes." + }, + "v1SuccessPolicyRule": { + "type": "object", + "properties": { + "succeededIndexes": { + "type": "string", + "description": "succeededIndexes specifies the set of indexes\nwhich need to be contained in the actual set of the succeeded indexes for the Job.\nThe list of indexes must be within 0 to \".spec.completions-1\" and\nmust not contain duplicates. At least one element is required.\nThe indexes are represented as intervals separated by commas.\nThe intervals can be a decimal integer or a pair of decimal integers separated by a hyphen.\nThe number are listed in represented by the first and last element of the series,\nseparated by a hyphen.\nFor example, if the completed indexes are 1, 3, 4, 5 and 7, they are\nrepresented as \"1,3-5,7\".\nWhen this field is null, this field doesn't default to any value\nand is never evaluated at any time.\n\n+optional" + }, + "succeededCount": { + "type": "integer", + "format": "int32", + "description": "succeededCount specifies the minimal required size of the actual set of the succeeded indexes\nfor the Job. When succeededCount is used along with succeededIndexes, the check is\nconstrained only to the set of indexes specified by succeededIndexes.\nFor example, given that succeededIndexes is \"1-4\", succeededCount is \"3\",\nand completed indexes are \"1\", \"3\", and \"5\", the Job isn't declared as succeeded\nbecause only \"1\" and \"3\" indexes are considered in that rules.\nWhen this field is null, this doesn't default to any value and\nis never evaluated at any time.\nWhen specified it needs to be a positive integer.\n\n+optional" + } + }, + "description": "SuccessPolicyRule describes rule for declaring a Job as succeeded.\nEach rule must have at least one of the \"succeededIndexes\" or \"succeededCount\" specified." + }, + "v1SyncStatusCounts": { + "type": "object", + "properties": { + "synced": { + "type": "integer", + "format": "int32" + }, + "outOfSync": { + "type": "integer", + "format": "int32" + }, + "unknown": { + "type": "integer", + "format": "int32" + } + } + }, + "v1Sysctl": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name of a property to set" + }, + "value": { + "type": "string", + "title": "Value of a property to set" + } + }, + "title": "Sysctl defines a kernel parameter to be set" + }, + "v1TCPSocketAction": { + "type": "object", + "properties": { + "port": { + "$ref": "#/components/schemas/intstrIntOrString" + }, + "host": { + "type": "string", + "title": "Optional: Host name to connect to, defaults to the pod IP.\n+optional" + } + }, + "title": "TCPSocketAction describes an action based on opening a socket" + }, + "v1TemplateService": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "Name of the service generated by the experiment" + } + } + }, + "v1Time": { + "type": "object", + "properties": { + "seconds": { + "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." + }, + "nanos": { + "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." + } + }, + "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" + }, + "v1Toleration": { + "type": "object", + "properties": { + "key": { + "type": "string", + "title": "Key is the taint key that the toleration applies to. Empty means match all taint keys.\nIf the key is empty, operator must be Exists; this combination means to match all values and all keys.\n+optional" + }, + "operator": { + "type": "string", + "title": "Operator represents a key's relationship to the value.\nValid operators are Exists and Equal. Defaults to Equal.\nExists is equivalent to wildcard for value, so that a pod can\ntolerate all taints of a particular category.\n+optional" + }, + "value": { + "type": "string", + "title": "Value is the taint value the toleration matches to.\nIf the operator is Exists, the value should be empty, otherwise just a regular string.\n+optional" + }, + "effect": { + "type": "string", + "title": "Effect indicates the taint effect to match. Empty means match all taint effects.\nWhen specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.\n+optional" + }, + "tolerationSeconds": { + "type": "string", + "format": "int64", + "title": "TolerationSeconds represents the period of time the toleration (which must be\nof effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,\nit is not set, which means tolerate the taint forever (do not evict). Zero and\nnegative values will be treated as 0 (evict immediately) by the system.\n+optional" + } + }, + "description": "The pod this Toleration is attached to tolerates any taint that matches\nthe triple using the matching operator ." + }, + "v1TopApplicationPhaseStats": { + "type": "object", + "properties": { + "applicationName": { + "type": "string" + }, + "totalDeployments": { + "type": "integer", + "format": "int32" + }, + "deploymentRate": { + "type": "integer", + "format": "int32" + }, + "succeeded": { + "type": "integer", + "format": "int32" + }, + "failed": { + "type": "integer", + "format": "int32" + }, + "agentIdentifier": { + "type": "string", + "description": "Agent identifier for entity." + } + } + }, + "v1TopApplicationPhaseStatsList": { + "type": "object", + "properties": { + "content": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1TopApplicationPhaseStats" + } + }, + "empty": { + "type": "boolean" + } + } + }, + "v1TopologySpreadConstraint": { + "type": "object", + "properties": { + "maxSkew": { + "type": "integer", + "format": "int32", + "description": "MaxSkew describes the degree to which pods may be unevenly distributed.\nWhen `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted difference\nbetween the number of matching pods in the target topology and the global minimum.\nThe global minimum is the minimum number of matching pods in an eligible domain\nor zero if the number of eligible domains is less than MinDomains.\nFor example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same\nlabelSelector spread as 2/2/1:\nIn this case, the global minimum is 1.\n+-------+-------+-------+\n| zone1 | zone2 | zone3 |\n+-------+-------+-------+\n| P P | P P | P |\n+-------+-------+-------+\n- if MaxSkew is 1, incoming pod can only be scheduled to zone3 to become 2/2/2;\nscheduling it onto zone1(zone2) would make the ActualSkew(3-1) on zone1(zone2)\nviolate MaxSkew(1).\n- if MaxSkew is 2, incoming pod can be scheduled onto any zone.\nWhen `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher precedence\nto topologies that satisfy it.\nIt's a required field. Default value is 1 and 0 is not allowed." + }, + "topologyKey": { + "type": "string", + "description": "TopologyKey is the key of node labels. Nodes that have a label with this key\nand identical values are considered to be in the same topology.\nWe consider each as a \"bucket\", and try to put balanced number\nof pods into each bucket.\nWe define a domain as a particular instance of a topology.\nAlso, we define an eligible domain as a domain whose nodes meet the requirements of\nnodeAffinityPolicy and nodeTaintsPolicy.\ne.g. If TopologyKey is \"kubernetes.io/hostname\", each Node is a domain of that topology.\nAnd, if TopologyKey is \"topology.kubernetes.io/zone\", each zone is a domain of that topology.\nIt's a required field." + }, + "whenUnsatisfiable": { + "type": "string", + "description": "WhenUnsatisfiable indicates how to deal with a pod if it doesn't satisfy\nthe spread constraint.\n- DoNotSchedule (default) tells the scheduler not to schedule it.\n- ScheduleAnyway tells the scheduler to schedule the pod in any location,\n but giving higher precedence to topologies that would help reduce the\n skew.\nA constraint is considered \"Unsatisfiable\" for an incoming pod\nif and only if every possible node assignment for that pod would violate\n\"MaxSkew\" on some topology.\nFor example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same\nlabelSelector spread as 3/1/1:\n+-------+-------+-------+\n| zone1 | zone2 | zone3 |\n+-------+-------+-------+\n| P P P | P | P |\n+-------+-------+-------+\nIf WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only be scheduled\nto zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3) satisfies\nMaxSkew(1). In other words, the cluster can still be imbalanced, but scheduler\nwon't make it *more* imbalanced.\nIt's a required field." + }, + "labelSelector": { + "$ref": "#/components/schemas/v1LabelSelector" + }, + "minDomains": { + "type": "integer", + "format": "int32", + "description": "MinDomains indicates a minimum number of eligible domains.\nWhen the number of eligible domains with matching topology keys is less than minDomains,\nPod Topology Spread treats \"global minimum\" as 0, and then the calculation of Skew is performed.\nAnd when the number of eligible domains with matching topology keys equals or greater than minDomains,\nthis value has no effect on scheduling.\nAs a result, when the number of eligible domains is less than minDomains,\nscheduler won't schedule more than maxSkew Pods to those domains.\nIf value is nil, the constraint behaves as if MinDomains is equal to 1.\nValid values are integers greater than 0.\nWhen value is not nil, WhenUnsatisfiable must be DoNotSchedule.\n\nFor example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is set to 5 and pods with the same\nlabelSelector spread as 2/2/2:\n+-------+-------+-------+\n| zone1 | zone2 | zone3 |\n+-------+-------+-------+\n| P P | P P | P P |\n+-------+-------+-------+\nThe number of domains is less than 5(MinDomains), so \"global minimum\" is treated as 0.\nIn this situation, new pod with the same labelSelector cannot be scheduled,\nbecause computed skew will be 3(3 - 0) if new Pod is scheduled to any of the three zones,\nit will violate MaxSkew.\n+optional" + }, + "nodeAffinityPolicy": { + "type": "string", + "description": "NodeAffinityPolicy indicates how we will treat Pod's nodeAffinity/nodeSelector\nwhen calculating pod topology spread skew. Options are:\n- Honor: only nodes matching nodeAffinity/nodeSelector are included in the calculations.\n- Ignore: nodeAffinity/nodeSelector are ignored. All nodes are included in the calculations.\n\nIf this value is nil, the behavior is equivalent to the Honor policy.\nThis is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.\n+optional" + }, + "nodeTaintsPolicy": { + "type": "string", + "description": "NodeTaintsPolicy indicates how we will treat node taints when calculating\npod topology spread skew. Options are:\n- Honor: nodes without taints, along with tainted nodes for which the incoming pod\nhas a toleration, are included.\n- Ignore: node taints are ignored. All nodes are included.\n\nIf this value is nil, the behavior is equivalent to the Ignore policy.\nThis is a beta-level feature default enabled by the NodeInclusionPolicyInPodTopologySpread feature flag.\n+optional" + }, + "matchLabelKeys": { + "type": "array", + "items": { + "type": "string" + }, + "description": "MatchLabelKeys is a set of pod label keys to select the pods over which\nspreading will be calculated. The keys are used to lookup values from the\nincoming pod labels, those key-value labels are ANDed with labelSelector\nto select the group of existing pods over which spreading will be calculated\nfor the incoming pod. The same key is forbidden to exist in both MatchLabelKeys and LabelSelector.\nMatchLabelKeys cannot be set when LabelSelector isn't set.\nKeys that don't exist in the incoming pod labels will\nbe ignored. A null or empty list means only match against labelSelector.\n\nThis is a beta field and requires the MatchLabelKeysInPodTopologySpread feature gate to be enabled (enabled by default).\n+listType=atomic\n+optional" + } + }, + "description": "TopologySpreadConstraint specifies how to spread matching pods among the given topology." + }, + "v1TypedLocalObjectReference": { + "type": "object", + "properties": { + "apiGroup": { + "type": "string", + "title": "APIGroup is the group for the resource being referenced.\nIf APIGroup is not specified, the specified Kind must be in the core API group.\nFor any other third-party types, APIGroup is required.\n+optional" + }, + "kind": { + "type": "string", + "title": "Kind is the type of resource being referenced" + }, + "name": { + "type": "string", + "title": "Name is the name of resource being referenced" + } + }, + "description": "TypedLocalObjectReference contains enough information to let you locate the\ntyped referenced object inside the same namespace.\n---\nNew uses of this type are discouraged because of difficulty describing its usage when embedded in APIs.\n 1. 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 2. 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 3. 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 4. 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+structType=atomic" + }, + "v1TypedObjectReference": { + "type": "object", + "properties": { + "apiGroup": { + "type": "string", + "title": "APIGroup is the group for the resource being referenced.\nIf APIGroup is not specified, the specified Kind must be in the core API group.\nFor any other third-party types, APIGroup is required.\n+optional" + }, + "kind": { + "type": "string", + "title": "Kind is the type of resource being referenced" + }, + "name": { + "type": "string", + "title": "Name is the name of resource being referenced" + }, + "namespace": { + "type": "string", + "title": "Namespace is the namespace of resource being referenced\nNote that when a namespace is specified, a gateway.networking.k8s.io/ReferenceGrant object is required in the referent namespace to allow that namespace's owner to accept the reference. See the ReferenceGrant documentation for details.\n(Alpha) This field requires the CrossNamespaceVolumeDataSource feature gate to be enabled.\n+featureGate=CrossNamespaceVolumeDataSource\n+optional" + } + }, + "title": "TypedObjectReference contains enough information to let you locate the typed referenced object" + }, + "v1UniqueMessage": { + "type": "object", + "properties": { + "unique": { + "type": "boolean" + } + } + }, + "v1User": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "email": { + "type": "string" + } + } + }, + "v1VersionList": { + "type": "object", + "properties": { + "versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1SemanticVersion" + } + }, + "totalPages": { + "type": "integer", + "format": "int32" + }, + "totalItems": { + "type": "integer", + "format": "int32" + }, + "pageItemCount": { + "type": "integer", + "format": "int32" + }, + "pageSize": { + "type": "integer", + "format": "int32" + }, + "pageIndex": { + "type": "integer", + "format": "int32" + }, + "empty": { + "type": "boolean" + } + } + }, + "v1VersionUpgradeResponse": { + "type": "object", + "properties": { + "ShouldUpgrade": { + "type": "boolean", + "description": "Indicates whether agent has an upgrade available or not" + }, + "AgentImageTag": { + "type": "string", + "description": "Docker image tag for agent" + }, + "ArgoCDImage": { + "type": "string", + "description": "Latest ArgoCDImage" + }, + "FlamingoArgoCDImage": { + "type": "string", + "description": "Latest FlamingoArgoCDImage" + }, + "HAProxyImage": { + "type": "string", + "description": "Latest HAProxyImage" + }, + "RedisImage": { + "type": "string", + "description": "Latest redis image" + }, + "SopsImage": { + "type": "string", + "description": "Latest sopsInstaller image" + } + } + }, + "v1Volume": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "name of the volume.\nMust be a DNS_LABEL and unique within the pod.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names" + }, + "volumeSource": { + "$ref": "#/components/schemas/v1VolumeSource" + } + }, + "description": "Volume represents a named volume in a pod that may be accessed by any container in the pod." + }, + "v1VolumeDevice": { + "type": "object", + "properties": { + "name": { + "type": "string", + "title": "name must match the name of a persistentVolumeClaim in the pod" + }, + "devicePath": { + "type": "string", + "description": "devicePath is the path inside of the container that the device will be mapped to." + } + }, + "description": "volumeDevice describes a mapping of a raw block device within a container." + }, + "v1VolumeMount": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "This must match the Name of a Volume." + }, + "readOnly": { + "type": "boolean", + "title": "Mounted read-only if true, read-write otherwise (false or unspecified).\nDefaults to false.\n+optional" + }, + "recursiveReadOnly": { + "type": "string", + "description": "RecursiveReadOnly specifies whether read-only mounts should be handled\nrecursively.\n\nIf ReadOnly is false, this field has no meaning and must be unspecified.\n\nIf ReadOnly is true, and this field is set to Disabled, the mount is not made\nrecursively read-only. If this field is set to IfPossible, the mount is made\nrecursively read-only, if it is supported by the container runtime. If this\nfield is set to Enabled, the mount is made recursively read-only if it is\nsupported by the container runtime, otherwise the pod will not be started and\nan error will be generated to indicate the reason.\n\nIf this field is set to IfPossible or Enabled, MountPropagation must be set to\nNone (or be unspecified, which defaults to None).\n\nIf this field is not specified, it is treated as an equivalent of Disabled.\n\n+featureGate=RecursiveReadOnlyMounts\n+optional" + }, + "mountPath": { + "type": "string", + "description": "Path within the container at which the volume should be mounted. Must\nnot contain ':'." + }, + "subPath": { + "type": "string", + "title": "Path within the volume from which the container's volume should be mounted.\nDefaults to \"\" (volume's root).\n+optional" + }, + "mountPropagation": { + "type": "string", + "title": "mountPropagation determines how mounts are propagated from the host\nto container and the other way around.\nWhen not set, MountPropagationNone is used.\nThis field is beta in 1.10.\nWhen RecursiveReadOnly is set to IfPossible or to Enabled, MountPropagation must be None or unspecified\n(which defaults to None).\n+optional" + }, + "subPathExpr": { + "type": "string", + "title": "Expanded path within the volume from which the container's volume should be mounted.\nBehaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment.\nDefaults to \"\" (volume's root).\nSubPathExpr and SubPath are mutually exclusive.\n+optional" + } + }, + "description": "VolumeMount describes a mounting of a Volume within a container." + }, + "v1VolumeProjection": { + "type": "object", + "properties": { + "secret": { + "$ref": "#/components/schemas/v1SecretProjection" + }, + "downwardAPI": { + "$ref": "#/components/schemas/v1DownwardAPIProjection" + }, + "configMap": { + "$ref": "#/components/schemas/v1ConfigMapProjection" + }, + "serviceAccountToken": { + "$ref": "#/components/schemas/v1ServiceAccountTokenProjection" + }, + "clusterTrustBundle": { + "$ref": "#/components/schemas/v1ClusterTrustBundleProjection" + } + }, + "description": "Projection that may be projected along with other supported volume types.\nExactly one of these fields must be set." + }, + "v1VolumeResourceRequirements": { + "type": "object", + "properties": { + "limits": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/resourceQuantity" + }, + "title": "Limits describes the maximum amount of compute resources allowed.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/\n+optional" + }, + "requests": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/resourceQuantity" + }, + "title": "Requests describes the minimum amount of compute resources required.\nIf Requests is omitted for a container, it defaults to Limits if that is explicitly specified,\notherwise to an implementation-defined value. Requests cannot exceed Limits.\nMore info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/\n+optional" + } + }, + "description": "VolumeResourceRequirements describes the storage resource requirements for a volume." + }, + "v1VolumeSource": { + "type": "object", + "properties": { + "hostPath": { + "$ref": "#/components/schemas/v1HostPathVolumeSource" + }, + "emptyDir": { + "$ref": "#/components/schemas/v1EmptyDirVolumeSource" + }, + "gcePersistentDisk": { + "$ref": "#/components/schemas/v1GCEPersistentDiskVolumeSource" + }, + "awsElasticBlockStore": { + "$ref": "#/components/schemas/v1AWSElasticBlockStoreVolumeSource" + }, + "gitRepo": { + "$ref": "#/components/schemas/v1GitRepoVolumeSource" + }, + "secret": { + "$ref": "#/components/schemas/v1SecretVolumeSource" + }, + "nfs": { + "$ref": "#/components/schemas/v1NFSVolumeSource" + }, + "iscsi": { + "$ref": "#/components/schemas/v1ISCSIVolumeSource" + }, + "glusterfs": { + "$ref": "#/components/schemas/v1GlusterfsVolumeSource" + }, + "persistentVolumeClaim": { + "$ref": "#/components/schemas/v1PersistentVolumeClaimVolumeSource" + }, + "rbd": { + "$ref": "#/components/schemas/v1RBDVolumeSource" + }, + "flexVolume": { + "$ref": "#/components/schemas/v1FlexVolumeSource" + }, + "cinder": { + "$ref": "#/components/schemas/v1CinderVolumeSource" + }, + "cephfs": { + "$ref": "#/components/schemas/v1CephFSVolumeSource" + }, + "flocker": { + "$ref": "#/components/schemas/v1FlockerVolumeSource" + }, + "downwardAPI": { + "$ref": "#/components/schemas/v1DownwardAPIVolumeSource" + }, + "fc": { + "$ref": "#/components/schemas/v1FCVolumeSource" + }, + "azureFile": { + "$ref": "#/components/schemas/v1AzureFileVolumeSource" + }, + "configMap": { + "$ref": "#/components/schemas/v1ConfigMapVolumeSource" + }, + "vsphereVolume": { + "$ref": "#/components/schemas/v1VsphereVirtualDiskVolumeSource" + }, + "quobyte": { + "$ref": "#/components/schemas/v1QuobyteVolumeSource" + }, + "azureDisk": { + "$ref": "#/components/schemas/v1AzureDiskVolumeSource" + }, + "photonPersistentDisk": { + "$ref": "#/components/schemas/v1PhotonPersistentDiskVolumeSource" + }, + "projected": { + "$ref": "#/components/schemas/v1ProjectedVolumeSource" + }, + "portworxVolume": { + "$ref": "#/components/schemas/v1PortworxVolumeSource" + }, + "scaleIO": { + "$ref": "#/components/schemas/v1ScaleIOVolumeSource" + }, + "storageos": { + "$ref": "#/components/schemas/v1StorageOSVolumeSource" + }, + "csi": { + "$ref": "#/components/schemas/v1CSIVolumeSource" + }, + "ephemeral": { + "$ref": "#/components/schemas/v1EphemeralVolumeSource" + }, + "image": { + "$ref": "#/components/schemas/v1ImageVolumeSource" + } + }, + "description": "Represents the source of a volume to mount.\nOnly one of its members may be specified." + }, + "v1VsphereVirtualDiskVolumeSource": { + "type": "object", + "properties": { + "volumePath": { + "type": "string", + "title": "volumePath is the path that identifies vSphere volume vmdk" + }, + "fsType": { + "type": "string", + "title": "fsType is filesystem type to mount.\nMust be a filesystem type supported by the host operating system.\nEx. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.\n+optional" + }, + "storagePolicyName": { + "type": "string", + "title": "storagePolicyName is the storage Policy Based Management (SPBM) profile name.\n+optional" + }, + "storagePolicyID": { + "type": "string", + "title": "storagePolicyID is the storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName.\n+optional" + } + }, + "description": "Represents a vSphere volume resource." + }, + "v1WavefrontMetric": { + "type": "object", + "properties": { + "address": { + "type": "string", + "title": "Address is the HTTP address and port of the wavefront server" + }, + "query": { + "type": "string", + "title": "Query is a raw wavefront query to perform" + } + }, + "title": "WavefrontMetric defines the wavefront query to perform canary analysis" + }, + "v1WebMetric": { + "type": "object", + "properties": { + "method": { + "type": "string", + "title": "Method is the method of the web metric (empty defaults to GET)" + }, + "url": { + "type": "string", + "title": "URL is the address of the web metric" + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/v1WebMetricHeader" + }, + "title": "+patchMergeKey=key\n+patchStrategy=merge\nHeaders are HTTP headers to use in the request" + }, + "body": { + "type": "string", + "title": "Body is the body of the web metric (must be POST/PUT)" + }, + "timeoutSeconds": { + "type": "string", + "format": "int64", + "title": "TimeoutSeconds is the timeout for the request in seconds (default: 10)" + }, + "jsonPath": { + "type": "string", + "title": "JSONPath is a JSON Path to use as the result variable (default: \"{$}\")" + }, + "insecure": { + "type": "boolean", + "title": "Insecure skips host TLS verification" + }, + "jsonBody": { + "type": "string", + "format": "byte", + "title": "+kubebuilder:validation:Schemaless\n+kubebuilder:pruning:PreserveUnknownFields\n+kubebuilder:validation:Type=object\nJSONBody is the body of the web metric in a json format (method must be POST/PUT)" + } + } + }, + "v1WebMetricHeader": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "v1WeightedPodAffinityTerm": { + "type": "object", + "properties": { + "weight": { + "type": "integer", + "format": "int32", + "description": "weight associated with matching the corresponding podAffinityTerm,\nin the range 1-100." + }, + "podAffinityTerm": { + "$ref": "#/components/schemas/v1PodAffinityTerm" + } + }, + "title": "The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)" + }, + "v1WindowsSecurityContextOptions": { + "type": "object", + "properties": { + "gmsaCredentialSpecName": { + "type": "string", + "title": "GMSACredentialSpecName is the name of the GMSA credential spec to use.\n+optional" + }, + "gmsaCredentialSpec": { + "type": "string", + "title": "GMSACredentialSpec is where the GMSA admission webhook\n(https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the\nGMSA credential spec named by the GMSACredentialSpecName field.\n+optional" + }, + "runAsUserName": { + "type": "string", + "title": "The UserName in Windows to run the entrypoint of the container process.\nDefaults to the user specified in image metadata if unspecified.\nMay also be set in PodSecurityContext. If set in both SecurityContext and\nPodSecurityContext, the value specified in SecurityContext takes precedence.\n+optional" + }, + "hostProcess": { + "type": "boolean", + "title": "HostProcess determines if a container should be run as a 'Host Process' container.\nAll of a Pod's containers must have the same effective HostProcess value\n(it is not allowed to have a mix of HostProcess containers and non-HostProcess containers).\nIn addition, if HostProcess is true then HostNetwork must also be set to true.\n+optional" + } + }, + "description": "WindowsSecurityContextOptions contain Windows-specific options and credentials." + }, + "AggregateStatus": { + "type": "object", + "properties": { + "error": { + "type": "integer", + "description": "Count of evaluations that have a status of 'error'", + "example": 279754528499222000, + "format": "int64" + }, + "pass": { + "type": "integer", + "description": "Count of evaluations that have a status of 'pass'", + "example": 3272061468898573000, + "format": "int64" + }, + "time": { + "type": "integer", + "description": "The Unix time of this particular aggregation", + "example": 7250460550830488000, + "format": "int64" + }, + "warning": { + "type": "integer", + "description": "Count of evaluations that have a status of 'warning'", + "example": 3491344800990543000, + "format": "int64" + } + }, + "description": "Aggregate metrics for evaluations on a single day", + "example": { + "error": 8348509417373207000, + "pass": 1855124884899608600, + "time": 8834761762207590000, + "warning": 8415977746238757000 + }, + "required": [ + "time", + "error", + "warning", + "pass" + ] + }, + "AnalyzeRequestBody": { + "type": "object", + "properties": { + "entityType": { + "type": "string", + "description": "Type of entity on which rego is written on", + "example": "encryptedJsonData example" + }, + "rego": { + "type": "string", + "description": "Rego Policy", + "example": "query example" + } + }, + "example": { + "entityType": "encryptedJsonData example", + "rego": "query example" + } + }, + "AnalyzeResponse": { + "type": "object", + "properties": { + "desc": { + "type": "string", + "description": "Build identifier", + "example": "policy example" + }, + "status": { + "type": "string", + "description": "status", + "example": "SUCCESS" + } + }, + "example": { + "desc": "policy example", + "status": "SUCCESS" + }, + "required": [ + "status", + "desc" + ] + }, + "CreateRequestBody": { + "type": "object", + "properties": { + "git_connector_ref": { + "type": "string", + "description": "The harness connector used for authenticating on the git provider", + "example": "." + }, + "git_path": { + "type": "string", + "description": "The path to the file in the git repo", + "example": ".harness/policy.rego" + }, + "git_repo": { + "type": "string", + "description": "The git repo the policy resides in", + "example": "github.com/org/repo" + }, + "identifier": { + "type": "string", + "description": "Identifier for the policy", + "example": "policy-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy", + "example": "Check that an approval step is present", + "minLength": 1 + }, + "rego": { + "type": "string", + "description": "Rego that defines the policy policy", + "example": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + } + }, + "example": { + "git_connector_ref": ".", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo", + "identifier": "policy-1", + "name": "Check that an approval step is present", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + }, + "required": [ + "name", + "identifier" + ] + }, + "CreateRequestBody2": { + "type": "object", + "properties": { + "action": { + "type": "string", + "description": "Action that triggers the policy set", + "example": "onrun", + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Description of the policy set", + "example": "Captures critical production policies" + }, + "enabled": { + "type": "boolean", + "description": "Only enabled policy sets are evaluated when evaluating by type/action", + "example": true + }, + "identifier": { + "type": "string", + "description": "Identifier for the policy set", + "example": "policyset-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy set", + "example": "Production Policies", + "minLength": 1 + }, + "type": { + "type": "string", + "description": "Type of input suitable for the policy set", + "example": "pipeline", + "minLength": 1 + }, + "yaml_version": { + "type": "string", + "description": "Harness yaml version associated with this policySet", + "default": "0", + "example": "0", + "enum": [ + "0", + "1" + ] + } + }, + "example": { + "action": "onrun", + "description": "Captures critical production policies", + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "type": "pipeline", + "yaml_version": "0" + }, + "required": [ + "identifier", + "name", + "enabled", + "type", + "action", + "created", + "updated", + "account_id", + "org_id", + "project_id", + "entity_selector" + ] + }, + "DashboardMetrics": { + "type": "object", + "properties": { + "aggregates": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AggregateStatus" + }, + "description": "Aggregate evaluation counts by day", + "example": [ + { + "error": 793292374565649800, + "pass": 7952439296093139000, + "time": 5372466697083487000, + "warning": 1084035802756070100 + }, + { + "error": 793292374565649800, + "pass": 7952439296093139000, + "time": 5372466697083487000, + "warning": 1084035802756070100 + }, + { + "error": 793292374565649800, + "pass": 7952439296093139000, + "time": 5372466697083487000, + "warning": 1084035802756070100 + } + ] + }, + "policy_health": { + "$ref": "#/components/schemas/PolicyHealth" + } + }, + "example": { + "aggregates": [ + { + "error": 793292374565649800, + "pass": 7952439296093139000, + "time": 5372466697083487000, + "warning": 1084035802756070100 + }, + { + "error": 793292374565649800, + "pass": 7952439296093139000, + "time": 5372466697083487000, + "warning": 1084035802756070100 + } + ], + "policy_health": { + "total_evaluation_count": 1586567418904594200, + "total_evaluation_entity_count": { + "error": 6575232042203289000, + "pass": 6693795997184111000, + "warning": 6980779131913748000 + }, + "total_policy_count": 1711618585904184300, + "total_policy_set_count": 8265194202066287000, + "total_policy_set_entity_count": { + "Consequatur doloribus voluptatem est.": 7647236864312285000, + "Eum commodi quasi aut sapiente.": 3188015681251562500, + "Necessitatibus quasi ut.": 1215199620673400000 + } + } + }, + "required": [ + "policy_health", + "aggregates" + ] + }, + "EntityYaml": { + "type": "object", + "properties": { + "yaml": { + "type": "string", + "description": "entity yaml", + "example": "x: asdf" + } + }, + "example": { + "yaml": "x: asdf" + }, + "required": [ + "yaml" + ] + }, + "PolicyManagementError": { + "type": "object", + "properties": { + "fault": { + "type": "boolean", + "description": "Is the error a server-side fault?", + "example": false + }, + "id": { + "type": "string", + "description": "ID is a unique identifier for this particular occurrence of the problem.", + "example": "123abc" + }, + "message": { + "type": "string", + "description": "Message is a human-readable explanation specific to this occurrence of the problem.", + "example": "parameter 'p' must be an integer" + }, + "name": { + "type": "string", + "description": "Name is the name of this class of errors.", + "example": "bad_request" + }, + "temporary": { + "type": "boolean", + "description": "Is the error temporary?", + "example": false + }, + "timeout": { + "type": "boolean", + "description": "Is the error a timeout?", + "example": false + } + }, + "example": { + "fault": false, + "id": "123abc", + "message": "parameter 'p' must be an integer", + "name": "bad_request", + "temporary": true, + "timeout": false + }, + "required": [ + "name", + "id", + "message", + "temporary", + "timeout", + "fault" + ] + }, + "ErrorResultWithIdentifier": { + "type": "object", + "properties": { + "fault": { + "type": "boolean", + "description": "Is the error a server-side fault?", + "example": true + }, + "id": { + "type": "string", + "description": "ID is a unique identifier for this particular occurrence of the problem.", + "example": "123abc" + }, + "identifier": { + "type": "string", + "description": "the identifier associated with the error", + "example": "policy-1" + }, + "message": { + "type": "string", + "description": "Message is a human-readable explanation specific to this occurrence of the problem.", + "example": "parameter 'p' must be an integer" + }, + "name": { + "type": "string", + "description": "Name is the name of this class of errors.", + "example": "bad_request" + }, + "temporary": { + "type": "boolean", + "description": "Is the error temporary?", + "example": true + }, + "timeout": { + "type": "boolean", + "description": "Is the error a timeout?", + "example": false + } + }, + "example": { + "fault": false, + "id": "123abc", + "identifier": "policy-1", + "message": "parameter 'p' must be an integer", + "name": "bad_request", + "temporary": true, + "timeout": true + }, + "required": [ + "name", + "id", + "message", + "temporary", + "timeout", + "fault" + ] + }, + "EvaluateRequestBody": { + "type": "object", + "properties": { + "input": { + "type": "string", + "description": "Input to evaluate", + "example": { + "message": "everyone" + }, + "format": "binary" + }, + "rego": { + "type": "string", + "description": "Arbitrary rego to be evaluated", + "example": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}", + "minLength": 1 + } + }, + "example": { + "input": { + "message": "everyone" + }, + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + }, + "required": [ + "rego", + "input" + ] + }, + "EvaluatedPolicy": { + "type": "object", + "properties": { + "deny_messages": { + "type": "array", + "items": { + "type": "string", + "example": "Reiciendis eum." + }, + "description": "The values of any `deny` rego rules as returned by the rego engine", + "example": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ] + }, + "error": { + "type": "string", + "description": "Any errors returned by the rego engine when this policy was evaluated", + "example": "policy.rego:25: rego_parse_error: non-terminated string m == \"test" + }, + "output": { + "type": "string", + "description": "The output returned by the rego engine when this policy was evaluated", + "example": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "format": "binary" + }, + "policy": { + "$ref": "#/components/schemas/PolicyManagementPolicy" + }, + "status": { + "type": "string", + "description": "The overall status for this individual policy indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + } + }, + "example": { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + "required": [ + "status", + "policy", + "output", + "deny_messages", + "error" + ] + }, + "Evaluation": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "The Harness account in which the evaluation was performed", + "example": "XRQAjvT37acOiXx9PRaQMF" + }, + "action": { + "type": "string", + "description": "The action that triggered evaluation", + "example": "onrun" + }, + "created": { + "type": "integer", + "description": "The time at which the evaluation was performed in Unix time millseconds", + "example": 1636370209475, + "format": "int64" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EvaluationDetail" + }, + "description": "The detailed results of te evaluation", + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ] + }, + "entity": { + "type": "string", + "description": "An arbtrary user-supplied string that globally identifies the entity under evaluation", + "example": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e" + }, + "entity_metadata": { + "type": "string", + "description": "Additional arbtrary user-supplied metadta about the entity under evaluation", + "example": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e" + }, + "id": { + "type": "integer", + "description": "The ID of this evaluation", + "example": 123, + "format": "int64" + }, + "input": { + "type": "string", + "description": "The input provided at evaluation time", + "example": "", + "format": "binary" + }, + "org_id": { + "type": "string", + "description": "The Harness organisation in which the evaluation was performed", + "example": "test-org" + }, + "project_id": { + "type": "string", + "description": "The Harness project in which the evaluation was performed", + "example": "test-project" + }, + "status": { + "type": "string", + "description": "The overall status of the evaluation indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + }, + "type": { + "type": "string", + "description": "The types of the entity under evaluation", + "example": "pipeline,service" + } + }, + "description": "The result of a single evaluation", + "example": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + "required": [ + "id", + "status", + "entity", + "entity_metadata", + "type", + "action", + "account_id", + "org_id", + "project_id", + "created", + "input", + "details" + ] + }, + "EvaluationCounts": { + "type": "object", + "properties": { + "error": { + "type": "integer", + "description": "Count of evaluations that have a status of 'error'", + "example": 6120356170870727000, + "format": "int64" + }, + "pass": { + "type": "integer", + "description": "Count of evaluations that have a status of 'pass'", + "example": 4035322068320424400, + "format": "int64" + }, + "warning": { + "type": "integer", + "description": "Count of evaluations that have a status of 'warning'", + "example": 2748215735596750000, + "format": "int64" + } + }, + "description": "Evaluation counts by status", + "example": { + "error": 7021319445605520000, + "pass": 5967399910267942000, + "warning": 1318989702088411100 + }, + "required": [ + "error", + "warning", + "pass" + ] + }, + "EvaluationDetail": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Harness account ID associated with this policy set", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "action": { + "type": "string", + "description": "Action that triggers the policy set", + "example": "onrun", + "minLength": 1 + }, + "created": { + "type": "integer", + "description": "Time the policy set was created", + "example": 1636669297674, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of the policy set", + "example": "Captures critical production policies" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EvaluatedPolicy" + }, + "example": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ] + }, + "enabled": { + "type": "boolean", + "description": "Only enabled policy sets are evaluated when evaluating by type/action", + "example": true + }, + "identifier": { + "type": "string", + "description": "Identifier of the policy set", + "example": "policyset-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy set", + "example": "Production Policies", + "minLength": 1 + }, + "org_id": { + "type": "string", + "description": "Harness organization ID associated with this policy set", + "default": "", + "example": "test-org" + }, + "project_id": { + "type": "string", + "description": "Harness project ID associated with this policy set", + "default": "", + "example": "test-project" + }, + "status": { + "type": "string", + "description": "The overall status for this policy set indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + }, + "type": { + "type": "string", + "description": "Type of input suitable for the policy set", + "example": "pipeline", + "minLength": 1 + }, + "updated": { + "type": "integer", + "description": "Time the policy set was last updated", + "example": 1636669297674, + "format": "int64" + } + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + "required": [ + "status", + "details", + "identifier", + "name", + "action", + "type", + "enabled", + "created", + "updated", + "account_id", + "org_id", + "project_id", + "entity_selector" + ] + }, + "GenerateRequestBody": { + "type": "object", + "properties": { + "policyData": { + "type": "string", + "description": "policySample Data", + "example": "encryptedJsonData example" + }, + "query": { + "type": "string", + "description": "Text query", + "example": "query example" + } + }, + "example": { + "policyData": "encryptedJsonData example", + "query": "query example" + } + }, + "GitErrorResult": { + "type": "object", + "properties": { + "explanation": { + "type": "string", + "description": "the explanation of the error", + "example": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file" + }, + "hint": { + "type": "string", + "description": "the hint on how to resolve the error", + "example": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "message": { + "type": "string", + "description": "the message is a human-readable explanation specific to this occurrence of the problem", + "example": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + } + }, + "example": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "required": [ + "message", + "explanation", + "hint" + ] + }, + "LinkedPolicy": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Harness account ID associated with this policy", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "created": { + "type": "integer", + "description": "Time the policy was created", + "example": 1636669297674, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "identifier of the policy", + "example": "policy-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy", + "example": "Pipeline Approval", + "minLength": 1 + }, + "org_id": { + "type": "string", + "description": "Harness organization ID associated with this policy", + "default": "", + "example": "test-org" + }, + "project_id": { + "type": "string", + "description": "Harness project ID associated with this policy", + "default": "", + "example": "test-project" + }, + "rego": { + "type": "string", + "description": "Rego that defines the policy", + "example": "", + "minLength": 1 + }, + "severity": { + "type": "string", + "description": "The severity of this policy in this context", + "example": "warning", + "enum": [ + "warning", + "error" + ] + }, + "updated": { + "type": "integer", + "description": "Time the policy was last updated", + "example": 1636669297674, + "format": "int64" + } + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + "required": [ + "account_id", + "org_id", + "project_id", + "identifier", + "name", + "severity", + "rego", + "created", + "updated" + ] + }, + "Linkedpolicyidentifier": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "identifier of the policy with account. or org. prefix if needed", + "example": "policy-1", + "minLength": 1 + }, + "severity": { + "type": "string", + "description": "The severity of this policy in this context", + "example": "warning", + "enum": [ + "warning", + "error" + ] + } + }, + "example": { + "identifier": "policy-1", + "severity": "warning" + }, + "required": [ + "identifier", + "severity" + ] + }, + "PolicyManagementPolicy": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Harness account ID associated with this policy", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "created": { + "type": "integer", + "description": "Time the policy was created", + "example": 1636669297674, + "format": "int64" + }, + "git_commit_sha": { + "type": "string", + "description": "The commit sha of the commit that last effected the file", + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + "git_connector_ref": { + "type": "string", + "description": "The harness connector used for authenticating on the git provider", + "example": "." + }, + "git_default_branch": { + "type": "string", + "description": "The default branch, the service pulls in changes from from this branch for policy evaluation", + "example": "main" + }, + "git_default_branch_commit_sha": { + "type": "string", + "description": "The commit sha of the commit that last effected the file in the default branch", + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + "git_default_branch_file_id": { + "type": "string", + "description": "The file id of the file in the default branch, may be empty for bitbucket files", + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + "git_default_branch_file_url": { + "type": "string", + "description": "The url of the file in the default branch", + "example": "" + }, + "git_default_branch_update_error": { + "$ref": "#/components/schemas/GitErrorResult" + }, + "git_default_branch_updated": { + "type": "integer", + "description": "The last time the service successfully pulled in changes from the default branch", + "example": 1636669297674, + "format": "int64" + }, + "git_file_id": { + "type": "string", + "description": "The file id of the file, may be empty for bitbucket files", + "example": "1369b45c20fc685113adcfd1a08a914180ff3c0d" + }, + "git_file_url": { + "type": "string", + "description": "The url of the file on the fit provider", + "example": "" + }, + "git_path": { + "type": "string", + "description": "The path to the file in the git repo", + "example": ".harness/policy.rego" + }, + "git_repo": { + "type": "string", + "description": "The git repo the policy resides in", + "example": "github.com/org/repo,omitempty" + }, + "identifier": { + "type": "string", + "description": "identifier of the policy", + "example": "policy-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy", + "example": "Pipeline Approval", + "minLength": 1 + }, + "org_id": { + "type": "string", + "description": "Harness organization ID associated with this policy", + "default": "", + "example": "test-org" + }, + "project_id": { + "type": "string", + "description": "Harness project ID associated with this policy", + "default": "", + "example": "test-project" + }, + "rego": { + "type": "string", + "description": "Rego that defines the policy", + "example": "", + "minLength": 1 + }, + "updated": { + "type": "integer", + "description": "Time the policy was last updated", + "example": 1636669297674, + "format": "int64" + } + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "git_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_connector_ref": ".", + "git_default_branch": "main", + "git_default_branch_commit_sha": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_default_branch_file_url": "", + "git_default_branch_update_error": { + "explanation": "File with given filepath [file.rego] already exists in Github, thus couldn't create a new file", + "hint": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main].", + "message": "Please check if there's already a file [file.rego] in Github repository [rego-demo] for the given filepath and branch [main]." + }, + "git_default_branch_updated": 1636669297674, + "git_file_id": "1369b45c20fc685113adcfd1a08a914180ff3c0d", + "git_file_url": "", + "git_path": ".harness/policy.rego", + "git_repo": "github.com/org/repo,omitempty", + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "required": [ + "identifier", + "name", + "rego", + "created", + "updated", + "account_id", + "org_id", + "project_id" + ] + }, + "PolicyExample": { + "type": "object", + "properties": { + "desc": { + "type": "string", + "description": "Longer description of the example", + "example": "This is a pipeline example" + }, + "input": { + "type": "string", + "description": "Example input to illustrate the rego policy", + "example": "{\"message\": \"everyone\"}" + }, + "name": { + "type": "string", + "description": "Example name", + "example": "Pipeline example" + }, + "rego": { + "type": "string", + "description": "Example rego policy", + "example": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + }, + "type": { + "type": "string", + "description": "The type of entity illustrated in this example", + "example": "pipeline" + }, + "variables": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Variable" + }, + "description": "The list of substitutable variables in the policy example", + "example": [ + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + } + ] + } + }, + "description": "Example policies and input", + "example": { + "desc": "This is a pipeline example", + "input": "{\"message\": \"everyone\"}", + "name": "Pipeline example", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}", + "type": "pipeline", + "variables": [ + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + } + ] + }, + "required": [ + "name", + "desc", + "type", + "rego", + "input" + ] + }, + "PolicyHealth": { + "type": "object", + "properties": { + "total_evaluation_count": { + "type": "integer", + "description": "Total number of evaluations that have occurred", + "example": 5153937206822594000, + "format": "int64" + }, + "total_evaluation_entity_count": { + "$ref": "#/components/schemas/EvaluationCounts" + }, + "total_policy_count": { + "type": "integer", + "description": "Total number of policies stored", + "example": 8633450485962025000, + "format": "int64" + }, + "total_policy_set_count": { + "type": "integer", + "description": "Total number of policy sets stored", + "example": 8086004520030154000, + "format": "int64" + }, + "total_policy_set_entity_count": { + "type": "object", + "description": "Total number of policy sets by type", + "example": { + "Numquam dolor quibusdam tenetur.": 8474512629279982000, + "Odit ea deserunt praesentium temporibus sed eveniet.": 8394838130337593000 + }, + "additionalProperties": { + "type": "integer", + "example": 2897770354965223000, + "format": "int64" + } + } + }, + "description": "Policy health metrics", + "example": { + "total_evaluation_count": 3402687233734926000, + "total_evaluation_entity_count": { + "error": 6575232042203289000, + "pass": 6693795997184111000, + "warning": 6980779131913748000 + }, + "total_policy_count": 3951647435340971500, + "total_policy_set_count": 3928703440533285400, + "total_policy_set_entity_count": { + "Mollitia qui sequi aliquam.": 3237739702895163400, + "Ut dolor delectus aut accusantium itaque vel.": 6524309823856625000 + } + }, + "required": [ + "total_policy_count", + "total_policy_set_count", + "total_policy_set_entity_count", + "total_evaluation_count", + "total_evaluation_entity_count" + ] + }, + "PolicySample": { + "type": "object", + "properties": { + "policy": { + "type": "string", + "description": "Build identifier", + "example": "policy example" + }, + "status": { + "type": "string", + "description": "status", + "example": "SUCCESS" + } + }, + "example": { + "policy": "policy example", + "status": "SUCCESS" + }, + "required": [ + "status", + "policy" + ] + }, + "PolicyManagementPolicySet": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Harness account ID associated with this policy set", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "action": { + "type": "string", + "description": "Action that triggers the policy set", + "example": "onrun", + "minLength": 1 + }, + "created": { + "type": "integer", + "description": "Time the policy set was created", + "example": 1636669297674, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of the policy set", + "example": "Captures critical production policies" + }, + "enabled": { + "type": "boolean", + "description": "Only enabled policy sets are evaluated when evaluating by type/action", + "example": true + }, + "entity_selector": { + "type": "string", + "description": "A string enum value which determines which entities the policy set applies to during evaluation", + "example": "all_entities_in_resource_groups", + "enum": [ + "all_entities_in_scope", + "all_entities_in_resource_groups" + ] + }, + "identifier": { + "type": "string", + "description": "Identifier of the policy set", + "example": "policyset-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy set", + "example": "Production Policies", + "minLength": 1 + }, + "org_id": { + "type": "string", + "description": "Harness organization ID associated with this policy set", + "default": "", + "example": "test-org" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LinkedPolicy" + }, + "description": "Policies linked to this policy set", + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ] + }, + "project_id": { + "type": "string", + "description": "Harness project ID associated with this policy set", + "default": "", + "example": "test-project" + }, + "resource_groups": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyManagementResourceGroup" + }, + "description": "The groups of resources that this policy set should be applied to", + "example": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ] + }, + "type": { + "type": "string", + "description": "Type of input suitable for the policy set", + "example": "pipeline", + "minLength": 1 + }, + "updated": { + "type": "integer", + "description": "Time the policy set was last updated", + "example": 1636669297674, + "format": "int64" + }, + "yaml_version": { + "type": "string", + "description": "Harness yaml version associated with this policySet", + "default": "0", + "example": "0", + "enum": [ + "0", + "1" + ] + } + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_resource_groups", + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "resource_groups": [ + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + }, + { + "account_id": "Dolorem magni odio quia sed molestiae provident.", + "created": 810010688645222700, + "identifier": "Eveniet fuga velit.", + "name": "Qui dolor cum possimus.", + "org_id": "Saepe ratione voluptas molestiae quam.", + "project_id": "Tempore voluptatibus est cupiditate aliquam dolor." + } + ], + "type": "pipeline", + "updated": 1636669297674, + "yaml_version": "0" + }, + "required": [ + "identifier", + "name", + "action", + "type", + "enabled", + "created", + "updated", + "account_id", + "org_id", + "project_id", + "entity_selector" + ] + }, + "PolicyManagementResourceGroup": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "resource group account id", + "example": "Repudiandae sint fugit consequatur sunt." + }, + "created": { + "type": "integer", + "description": "resource group timestamp", + "example": 4801969467685070000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "resource group identifier", + "example": "Velit maxime repudiandae velit dolores itaque neque." + }, + "name": { + "type": "string", + "description": "resource group name", + "example": "Fuga modi quia est vel officia voluptas." + }, + "org_id": { + "type": "string", + "description": "resource group org id", + "example": "Molestiae nobis." + }, + "project_id": { + "type": "string", + "description": "resource group project identifier", + "example": "Eos et neque debitis." + } + }, + "example": { + "account_id": "Beatae aspernatur doloremque aspernatur quisquam.", + "created": 7857240865991095000, + "identifier": "Omnis incidunt sed libero perspiciatis quidem.", + "name": "Praesentium qui id ut et quia quibusdam.", + "org_id": "Porro accusamus consequatur sapiente id sed sunt.", + "project_id": "Non et similique autem." + }, + "required": [ + "account_id", + "org_id", + "project_id", + "identifier", + "name", + "created" + ] + }, + "ResourceGroupIdentifier": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "resource group account id", + "example": "Facilis excepturi." + }, + "identifier": { + "type": "string", + "description": "resource group identifier", + "example": "Consequatur ipsa aperiam quaerat veritatis qui nihil." + }, + "org_id": { + "type": "string", + "description": "resource group org id", + "example": "Earum et cum eos corrupti cum et." + }, + "project_id": { + "type": "string", + "description": "resource group project identifier", + "example": "Ea vel odio quo." + } + }, + "example": { + "account_id": "Itaque delectus alias.", + "identifier": "Alias nihil.", + "org_id": "Amet omnis cupiditate cum.", + "project_id": "Est omnis odio." + }, + "required": [ + "account_id", + "org_id", + "project_id", + "identifier" + ] + }, + "ServiceVersion": { + "type": "object", + "properties": { + "commit": { + "type": "string", + "description": "Build identifier", + "example": "96381692bf3a2bd7904769c6886e832435768b57" + }, + "version": { + "type": "string", + "description": "Version number", + "example": "v0.123.0" + } + }, + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "version": "v0.123.0" + }, + "required": [ + "version", + "commit" + ] + }, + "UpdateRequestBody": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the policy", + "example": "Check that an approval step is present" + }, + "rego": { + "type": "string", + "description": "The rego that defines the policy policy", + "example": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + } + }, + "example": { + "name": "Check that an approval step is present", + "rego": "package test\ndeny[\"should say hello world\"] {input.message != \"world\"}" + } + }, + "UpdateRequestBody2": { + "type": "object", + "properties": { + "action": { + "type": "string", + "description": "Action that triggers the policy set", + "example": "onrun", + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Description of the policy set", + "example": "Captures critical production policies" + }, + "enabled": { + "type": "boolean", + "description": "Only enabled policy sets are evaluated when evaluating by type/action", + "example": true + }, + "entity_selector": { + "type": "string", + "description": "A string enum value which determines which entities the policy set applies to during evaluation. This feature is not available for all accounts, Contact support if you wish to have it enabled.", + "example": "all_entities_in_scope", + "enum": [ + "all_entities_in_scope", + "all_entities_in_resource_groups" + ] + }, + "name": { + "type": "string", + "description": "Name of the policy set", + "example": "Production Policies" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Linkedpolicyidentifier" + }, + "description": "Policies linked to this policy set", + "example": [ + { + "identifier": "policy-1", + "severity": "warning" + }, + { + "identifier": "policy-1", + "severity": "warning" + }, + { + "identifier": "policy-1", + "severity": "warning" + }, + { + "identifier": "policy-1", + "severity": "warning" + } + ] + }, + "resource_groups": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceGroupIdentifier" + }, + "description": "Resource groups that contain the resources that this policy set should be evaluated for. Resource groups are not supported for flag or custom policy sets. This feature is not available for all accounts, Contact support if you wish to have it enabled.", + "example": [ + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + }, + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + } + ] + }, + "type": { + "type": "string", + "description": "Type of input suitable for the policy set", + "example": "pipeline" + } + }, + "example": { + "action": "onrun", + "description": "Captures critical production policies", + "enabled": true, + "entity_selector": "all_entities_in_scope", + "name": "Production Policies", + "policies": [ + { + "identifier": "policy-1", + "severity": "warning" + }, + { + "identifier": "policy-1", + "severity": "warning" + }, + { + "identifier": "policy-1", + "severity": "warning" + } + ], + "resource_groups": [ + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + }, + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + }, + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + }, + { + "account_id": "Sint itaque.", + "identifier": "Qui cum dignissimos eligendi commodi.", + "org_id": "Doloribus repellendus.", + "project_id": "Sequi id." + } + ], + "type": "pipeline" + } + }, + "Variable": { + "type": "object", + "properties": { + "default": { + "type": "array", + "items": { + "type": "string", + "example": "Iusto eos voluptates est maiores." + }, + "description": "The values that are selected by default", + "example": [ + "JiraUpdate", + "HarnessApproval" + ] + }, + "desc": { + "type": "string", + "description": "Longer description of the variable to substitute", + "example": "The required steps that the policy enforces" + }, + "id": { + "type": "string", + "description": "The id of the variable to substitute in the rego", + "example": "requiredsteps" + }, + "name": { + "type": "string", + "description": "The human readable name of the variable to substitute in the rego", + "example": "Required Steps" + }, + "type": { + "type": "string", + "description": "The variable type", + "example": "selectOne", + "enum": [ + "text", + "textMultiple", + "selectOne", + "selectMultiple" + ] + }, + "values": { + "type": "array", + "items": { + "type": "string", + "example": "Nesciunt non distinctio molestias minima dolorum." + }, + "description": "Pre populated sample values to substitute the variable with", + "example": [ + "JiraUpdate", + "HarnessApproval" + ] + } + }, + "example": { + "default": [ + "JiraUpdate", + "HarnessApproval" + ], + "desc": "The required steps that the policy enforces", + "id": "requiredsteps", + "name": "Required Steps", + "type": "selectOne", + "values": [ + "JiraUpdate", + "HarnessApproval" + ] + } + }, + "DashboardDownloadResponse": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "byte" + } + } + }, + "DashboardsErrorResponse": { + "type": "object", + "properties": { + "error": { + "type": "string" + }, + "code": { + "type": "integer" + }, + "correlationId": { + "type": "string" + }, + "responseMessages": { + "type": "string" + } + }, + "required": [ + "code", + "error", + "responseMessages" + ] + }, + "DashboardElements": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "dashboard_id": { + "type": "string" + }, + "title_text": { + "type": "string", + "nullable": true + }, + "title": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string" + } + }, + "required": [ + "dashboard_id", + "id", + "type" + ] + }, + "GetDashboardElementsResponse": { + "type": "object", + "properties": { + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DashboardElements" + } + } + }, + "required": [ + "resource" + ] + }, + "DashboardFilter": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "dashboard_id": { + "type": "string" + }, + "default_value": { + "type": "string" + }, + "explore": { + "type": "string" + }, + "model": { + "type": "string" + }, + "name": { + "type": "string", + "nullable": true + }, + "row": { + "type": "integer", + "nullable": true + }, + "title": { + "type": "string", + "nullable": true + }, + "ui_config": { + "type": "object" + } + }, + "required": [ + "dashboard_id", + "default_value", + "explore", + "id", + "model", + "ui_config" + ] + }, + "GetDashboardFiltersResponse": { + "type": "object", + "properties": { + "resource": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DashboardFilter" + } + } + }, + "required": [ + "resource" + ] + }, + "CloneDashboardRequestBody": { + "type": "object", + "properties": { + "dashboardId": { + "type": "string" + }, + "folderId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "dashboardId" + ] + }, + "ClonedDashboard": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "resourceIdentifier": { + "type": "string" + } + }, + "required": [ + "description", + "id", + "resourceIdentifier", + "title" + ] + }, + "ClonedDashboardResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/ClonedDashboard" + } + }, + "required": [ + "resource" + ] + }, + "DashboardFolder": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "parent_id": { + "type": "string" + } + }, + "required": [ + "created_at", + "id", + "parent_id", + "title" + ] + }, + "Dashboard": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "ACCOUNT", + "SHARED" + ] + }, + "description": { + "type": "string" + }, + "title": { + "type": "string" + }, + "view_count": { + "type": "integer" + }, + "favorite_count": { + "type": "integer" + }, + "created_at": { + "type": "string" + }, + "data_source": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "CD", + "CE", + "CET", + "CF", + "CHAOS", + "CI", + "DBOPS", + "HARNESS", + "IACM", + "IDP", + "SRM", + "SSCA", + "STO", + "UNIVERSAL" + ] + } + }, + "models": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "CD", + "CE", + "CET", + "CF", + "CG_CD", + "CHAOS", + "CI", + "CI_TI", + "DBOPS", + "IACM", + "IDP", + "SRM", + "SSCA", + "STO", + "UNIVERSAL" + ] + } + }, + "last_accessed_at": { + "type": "string" + }, + "resourceIdentifier": { + "type": "string" + }, + "folder": { + "$ref": "#/components/schemas/DashboardFolder" + } + }, + "required": [ + "created_at", + "data_source", + "description", + "favorite_count", + "folder", + "id", + "last_accessed_at", + "models", + "resourceIdentifier", + "title", + "type", + "view_count" + ] + }, + "GetDashboardResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/Dashboard" + } + }, + "required": [ + "resource" + ] + }, + "CreateDashboardRequest": { + "type": "object", + "properties": { + "folderId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "dashboardId": { + "type": "integer" + } + }, + "required": [ + "folderId", + "name" + ] + }, + "UpdateDashboardResponseResource": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "resourceIdentifier": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "description", + "id", + "resourceIdentifier", + "title" + ] + }, + "UpdateDashboardResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/UpdateDashboardResponseResource" + } + }, + "required": [ + "resource" + ] + }, + "DeleteDashboardRequest": { + "type": "object", + "properties": { + "dashboardId": { + "type": "string" + } + }, + "required": [ + "dashboardId" + ] + }, + "DeleteDashboardResponseResource": { + "type": "object", + "properties": { + "id": { + "type": "string" + } + }, + "required": [ + "id" + ] + }, + "DeleteDashboardResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/DeleteDashboardResponseResource" + } + }, + "required": [ + "resource" + ] + }, + "CreateFolderRequestBody": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "FolderChildren": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "name" + ] + }, + "Folder": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "child_count": { + "type": "integer" + }, + "sub_folders": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Folder" + } + }, + "Children": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FolderChildren" + } + }, + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "ACCOUNT", + "SHARED", + "OOTB" + ] + }, + "permission": { + "type": "string", + "enum": [ + "core_dashboards_view", + "core_dashboards_create", + "core_dashboards_delete", + "core_dashboards_edit" + ] + } + }, + "required": [ + "id", + "name", + "sub_folders", + "type" + ] + }, + "GetFolderResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/Folder" + } + }, + "required": [ + "resource" + ] + }, + "UpdateFolderRequestBody": { + "type": "object", + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "UpdateDashboardFilterRequest": { + "type": "object", + "properties": { + "default_value": { + "type": "string" + }, + "name": { + "type": "string", + "nullable": true + }, + "title": { + "type": "string", + "nullable": true + }, + "row": { + "type": "integer", + "nullable": true + }, + "ui_config": { + "type": "object" + } + } + }, + "GetDashboardFilterResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/DashboardFilter" + } + }, + "required": [ + "resource" + ] + }, + "DownloadCsvDashboardResponse": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "byte" + } + } + }, + "DownloadPdfDashboardResponse": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "byte" + } + } + }, + "ScheduleReportRequestBody": { + "type": "object", + "properties": { + "dashboard_id": { + "type": "string" + }, + "destination_emails": { + "type": "string" + }, + "file_type": { + "type": "string", + "enum": [ + "csv_zip", + "assembled_pdf", + "wysiwyg_pdf", + "wysiwyg_png" + ] + }, + "name": { + "type": "string" + }, + "message": { + "type": "string" + }, + "filters": { + "type": "string" + } + }, + "required": [ + "dashboard_id", + "destination_emails", + "file_type", + "name" + ] + }, + "ScheduleReportResponseBody": { + "type": "object", + "properties": { + "status": { + "type": "string" + } + }, + "required": [ + "status" + ] + }, + "ScheduleReportResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/ScheduleReportResponseBody" + } + }, + "required": [ + "resource" + ] + }, + "QueryTaskDetails": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "status": { + "type": "string", + "enum": [ + "added", + "error", + "killed", + "running", + "complete", + "timeout" + ] + } + }, + "required": [ + "status" + ] + }, + "DownloadQueryTaskResponse": { + "type": "object", + "properties": { + "resource": { + "$ref": "#/components/schemas/QueryTaskDetails" + } + }, + "required": [ + "resource" + ] + }, + "ApiFileDiffRequest": { + "properties": { + "path": { + "type": "string" + }, + "start_line": { + "type": "integer" + } + }, + "type": "object" + }, + "EnumCheckPayloadKind": { + "enum": [ + "", + "markdown", + "pipeline", + "raw" + ], + "type": "string" + }, + "EnumCheckStatus": { + "enum": [ + "error", + "failure", + "failure_ignored", + "pending", + "running", + "success" + ], + "type": "string" + }, + "EnumContentEncodingType": { + "enum": [ + "base64", + "utf8" + ], + "type": "string" + }, + "EnumFileDiffStatus": { + "type": "string" + }, + "EnumLabelColor": { + "enum": [ + "blue", + "brown", + "cyan", + "green", + "indigo", + "lime", + "mint", + "orange", + "pink", + "purple", + "red", + "violet", + "yellow" + ], + "type": "string" + }, + "EnumLabelType": { + "enum": [ + "dynamic", + "static" + ], + "type": "string" + }, + "EnumMergeCheckStatus": { + "type": "string" + }, + "EnumMergeMethod": { + "enum": [ + "fast-forward", + "merge", + "rebase", + "squash" + ], + "type": "string" + }, + "EnumPrincipalType": { + "enum": [ + "service", + "serviceaccount", + "user" + ], + "type": "string" + }, + "EnumPullReqActivityKind": { + "enum": [ + "change-comment", + "comment", + "system" + ], + "type": "string" + }, + "EnumPullReqActivityType": { + "enum": [ + "branch-delete", + "branch-restore", + "branch-update", + "code-comment", + "comment", + "label-modify", + "merge", + "review-submit", + "reviewer-add", + "reviewer-delete", + "state-change", + "target-branch-change", + "title-change" + ], + "type": "string" + }, + "EnumPullReqCommentStatus": { + "enum": [ + "active", + "resolved" + ], + "type": "string" + }, + "EnumPullReqReviewDecision": { + "enum": [ + "approved", + "changereq", + "pending", + "reviewed" + ], + "type": "string" + }, + "EnumPullReqReviewerType": { + "enum": [ + "assigned", + "code_owners", + "default", + "requested", + "self_assigned" + ], + "type": "string" + }, + "EnumPullReqState": { + "enum": [ + "closed", + "merged", + "open" + ], + "type": "string" + }, + "EnumRepoState": { + "nullable": true, + "type": "integer" + }, + "EnumRuleState": { + "enum": [ + "active", + "disabled", + "monitor" + ], + "nullable": true, + "type": "string" + }, + "EnumWebhookExecutionResult": { + "enum": [ + "fatal_error", + "retriable_error", + "success" + ], + "nullable": true, + "type": "string" + }, + "EnumWebhookParent": { + "enum": [ + "registry", + "repo", + "space" + ], + "type": "string" + }, + "EnumWebhookTrigger": { + "enum": [ + "artifact_created", + "artifact_deleted", + "branch_created", + "branch_deleted", + "branch_updated", + "pullreq_branch_updated", + "pullreq_closed", + "pullreq_comment_created", + "pullreq_comment_status_updated", + "pullreq_comment_updated", + "pullreq_created", + "pullreq_label_assigned", + "pullreq_merged", + "pullreq_reopened", + "pullreq_review_submitted", + "pullreq_target_branch_changed", + "pullreq_updated", + "tag_created", + "tag_deleted", + "tag_updated" + ], + "type": "string" + }, + "GitBlamePart": { + "properties": { + "commit": { + "$ref": "#/components/schemas/GitCommit" + }, + "lines": { + "items": { + "type": "string" + }, + "nullable": true, + "type": "array" + }, + "previous": { + "$ref": "#/components/schemas/GitBlamePartPrevious" + } + }, + "type": "object" + }, + "GitBlamePartPrevious": { + "properties": { + "commit_sha": { + "$ref": "#/components/schemas/ShaSHA" + }, + "file_name": { + "type": "string" + } + }, + "type": "object" + }, + "GitCommit": { + "properties": { + "author": { + "$ref": "#/components/schemas/GitSignature" + }, + "committer": { + "$ref": "#/components/schemas/GitSignature" + }, + "file_stats": { + "items": { + "$ref": "#/components/schemas/GitCommitFileStats" + }, + "type": "array" + }, + "message": { + "type": "string" + }, + "parent_shas": { + "items": { + "$ref": "#/components/schemas/ShaSHA" + }, + "type": "array" + }, + "sha": { + "$ref": "#/components/schemas/ShaSHA" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "GitCommitFileStats": { + "type": "object" + }, + "GitFileAction": { + "enum": [ + "CREATE", + "UPDATE", + "DELETE", + "MOVE", + "PATCH_TEXT" + ], + "type": "string" + }, + "GitFileDiff": { + "properties": { + "additions": { + "type": "integer" + }, + "changes": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "is_binary": { + "type": "boolean" + }, + "is_submodule": { + "type": "boolean" + }, + "old_path": { + "type": "string" + }, + "old_sha": { + "type": "string" + }, + "patch": { + "items": { + "minimum": 0, + "type": "integer" + }, + "type": "array" + }, + "path": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/EnumFileDiffStatus" + } + }, + "type": "object" + }, + "GitIdentity": { + "nullable": true, + "properties": { + "email": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, + "GitPathDetails": { + "properties": { + "last_commit": { + "$ref": "#/components/schemas/GitCommit" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "GitSignature": { + "properties": { + "identity": { + "$ref": "#/components/schemas/GitIdentity" + }, + "when": { + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "ImporterPipelineOption": { + "enum": [ + "convert", + "ignore" + ], + "type": "string" + }, + "ImporterProvider": { + "properties": { + "host": { + "type": "string" + }, + "password": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/ImporterProviderType" + }, + "username": { + "type": "string" + } + }, + "type": "object" + }, + "ImporterProviderType": { + "enum": [ + "github", + "gitlab", + "bitbucket", + "stash", + "gitea", + "gogs", + "azure" + ], + "type": "string" + }, + "OpenapiCalculateCommitDivergenceRequest": { + "properties": { + "max_count": { + "type": "integer" + }, + "requests": { + "items": { + "$ref": "#/components/schemas/RepoCommitDivergenceRequest" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "OpenapiCommentApplySuggestionstRequest": { + "properties": { + "bypass_rules": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "message": { + "type": "string" + }, + "suggestions": { + "items": { + "$ref": "#/components/schemas/PullreqSuggestionReference" + }, + "nullable": true, + "type": "array" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiCommentCreatePullReqRequest": { + "properties": { + "line_end": { + "type": "integer" + }, + "line_end_new": { + "type": "boolean" + }, + "line_start": { + "type": "integer" + }, + "line_start_new": { + "type": "boolean" + }, + "parent_id": { + "type": "integer" + }, + "path": { + "type": "string" + }, + "source_commit_sha": { + "type": "string" + }, + "target_commit_sha": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiCommentStatusPullReqRequest": { + "properties": { + "status": { + "$ref": "#/components/schemas/EnumPullReqCommentStatus" + } + }, + "type": "object" + }, + "OpenapiCommentUpdatePullReqRequest": { + "properties": { + "text": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiCommitFilesRequest": { + "properties": { + "actions": { + "items": { + "$ref": "#/components/schemas/RepoCommitFileAction" + }, + "nullable": true, + "type": "array" + }, + "author": { + "$ref": "#/components/schemas/GitIdentity" + }, + "branch": { + "type": "string" + }, + "bypass_rules": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "message": { + "type": "string" + }, + "new_branch": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiContent": { + "oneOf": [ + { + "$ref": "#/components/schemas/RepoFileContent" + }, + { + "$ref": "#/components/schemas/OpenapiDirContent" + }, + { + "$ref": "#/components/schemas/RepoSymlinkContent" + }, + { + "$ref": "#/components/schemas/RepoSubmoduleContent" + } + ], + "type": "object" + }, + "OpenapiContentInfo": { + "properties": { + "latest_commit": { + "$ref": "#/components/schemas/TypesCommit" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/OpenapiContentType" + } + }, + "type": "object" + }, + "OpenapiContentType": { + "enum": [ + "file", + "dir", + "symlink", + "submodule" + ], + "type": "string" + }, + "OpenapiCreateBranchRequest": { + "properties": { + "bypass_rules": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "target": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiCreatePullReqRequest": { + "properties": { + "bypass_rules": { + "type": "boolean" + }, + "description": { + "type": "string" + }, + "is_draft": { + "type": "boolean" + }, + "labels": { + "items": { + "$ref": "#/components/schemas/TypesPullReqLabelAssignInput" + }, + "nullable": true, + "type": "array" + }, + "reviewer_ids": { + "items": { + "type": "integer" + }, + "nullable": true, + "type": "array" + }, + "source_branch": { + "type": "string" + }, + "source_repo_ref": { + "type": "string" + }, + "target_branch": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiCreateRepoWebhookRequest": { + "properties": { + "description": { + "type": "string" + }, + "display_name": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "insecure": { + "type": "boolean" + }, + "secret": { + "type": "string" + }, + "triggers": { + "items": { + "$ref": "#/components/schemas/EnumWebhookTrigger" + }, + "nullable": true, + "type": "array" + }, + "uid": { + "deprecated": true, + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiCreateRepositoryRequest": { + "properties": { + "default_branch": { + "type": "string" + }, + "description": { + "type": "string" + }, + "fork_id": { + "type": "integer" + }, + "git_ignore": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "is_public": { + "type": "boolean" + }, + "license": { + "type": "string" + }, + "parent_ref": { + "type": "string" + }, + "readme": { + "type": "boolean" + }, + "uid": { + "deprecated": true, + "type": "string" + } + }, + "type": "object" + }, + "OpenapiCreateTagRequest": { + "properties": { + "bypass_rules": { + "type": "boolean" + }, + "message": { + "type": "string" + }, + "name": { + "type": "string" + }, + "target": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiDirContent": { + "properties": { + "entries": { + "items": { + "$ref": "#/components/schemas/OpenapiContentInfo" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "OpenapiFileViewAddPullReqRequest": { + "properties": { + "commit_sha": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiGeneralSettingsRequest": { + "properties": { + "file_size_limit": { + "description": "file size limit in bytes", + "nullable": true, + "type": "integer" + }, + "git_lfs_enabled": { + "nullable": true, + "type": "boolean" + } + }, + "type": "object" + }, + "OpenapiGetContentOutput": { + "properties": { + "content": { + "$ref": "#/components/schemas/OpenapiContent" + }, + "latest_commit": { + "$ref": "#/components/schemas/TypesCommit" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/OpenapiContentType" + } + }, + "type": "object" + }, + "OpenapiMergePullReq": { + "properties": { + "bypass_rules": { + "type": "boolean" + }, + "dry_run": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "message": { + "type": "string" + }, + "method": { + "$ref": "#/components/schemas/EnumMergeMethod" + }, + "source_sha": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiPathsDetailsRequest": { + "properties": { + "paths": { + "items": { + "type": "string" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "OpenapiPostRawDiffRequest": { + "items": { + "$ref": "#/components/schemas/ApiFileDiffRequest" + }, + "nullable": true, + "type": "array" + }, + "OpenapiPostRawPRDiffRequest": { + "items": { + "$ref": "#/components/schemas/ApiFileDiffRequest" + }, + "nullable": true, + "type": "array" + }, + "OpenapiPullReqAssignLabelInput": { + "properties": { + "label_id": { + "type": "integer" + }, + "value": { + "type": "string" + }, + "value_id": { + "nullable": true, + "type": "integer" + } + }, + "type": "object" + }, + "OpenapiRestoreRequest": { + "properties": { + "new_identifier": { + "nullable": true, + "type": "string" + }, + "new_parent_ref": { + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, + "OpenapiReviewSubmitPullReqRequest": { + "properties": { + "commit_sha": { + "type": "string" + }, + "decision": { + "$ref": "#/components/schemas/EnumPullReqReviewDecision" + } + }, + "type": "object" + }, + "OpenapiReviewerAddPullReqRequest": { + "properties": { + "reviewer_id": { + "type": "integer" + } + }, + "type": "object" + }, + "OpenapiRule": { + "properties": { + "created": { + "type": "integer" + }, + "created_by": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "definition": { + "$ref": "#/components/schemas/OpenapiRuleDefinition" + }, + "description": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "pattern": { + "$ref": "#/components/schemas/ProtectionPattern" + }, + "scope": { + "type": "integer" + }, + "state": { + "$ref": "#/components/schemas/EnumRuleState" + }, + "type": { + "$ref": "#/components/schemas/OpenapiRuleType" + }, + "updated": { + "type": "integer" + }, + "user_groups": { + "additionalProperties": { + "$ref": "#/components/schemas/TypesUserGroupInfo" + }, + "nullable": true, + "type": "object" + }, + "users": { + "additionalProperties": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "nullable": true, + "type": "object" + } + }, + "type": "object" + }, + "OpenapiRuleDefinition": { + "oneOf": [ + { + "$ref": "#/components/schemas/ProtectionBranch" + } + ], + "type": "object" + }, + "OpenapiRuleType": { + "enum": [ + "branch" + ], + "type": "string" + }, + "OpenapiSecuritySettingsRequest": { + "properties": { + "principal_committer_match": { + "nullable": true, + "type": "boolean" + }, + "secret_scanning_enabled": { + "nullable": true, + "type": "boolean" + }, + "vulnerability_scanning_mode": { + "$ref": "#/components/schemas/SettingsVulnerabilityScanningMode" + } + }, + "type": "object" + }, + "OpenapiStatePullReqRequest": { + "properties": { + "is_draft": { + "type": "boolean" + }, + "state": { + "$ref": "#/components/schemas/EnumPullReqState" + } + }, + "type": "object" + }, + "OpenapiUpdateDefaultBranchRequest": { + "properties": { + "name": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiUpdatePullReqRequest": { + "properties": { + "description": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "OpenapiUpdateRepoPublicAccessRequest": { + "properties": { + "is_public": { + "type": "boolean" + } + }, + "type": "object" + }, + "OpenapiUpdateRepoRequest": { + "properties": { + "description": { + "nullable": true, + "type": "string" + }, + "state": { + "$ref": "#/components/schemas/EnumRepoState" + } + }, + "type": "object" + }, + "OpenapiUpdateRepoWebhookRequest": { + "properties": { + "description": { + "nullable": true, + "type": "string" + }, + "display_name": { + "nullable": true, + "type": "string" + }, + "enabled": { + "nullable": true, + "type": "boolean" + }, + "identifier": { + "nullable": true, + "type": "string" + }, + "insecure": { + "nullable": true, + "type": "boolean" + }, + "secret": { + "nullable": true, + "type": "string" + }, + "triggers": { + "items": { + "$ref": "#/components/schemas/EnumWebhookTrigger" + }, + "nullable": true, + "type": "array" + }, + "uid": { + "deprecated": true, + "nullable": true, + "type": "string" + }, + "url": { + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, + "OpenapiUpdateSpaceWebhookRequest": { + "properties": { + "description": { + "nullable": true, + "type": "string" + }, + "display_name": { + "nullable": true, + "type": "string" + }, + "enabled": { + "nullable": true, + "type": "boolean" + }, + "identifier": { + "nullable": true, + "type": "string" + }, + "insecure": { + "nullable": true, + "type": "boolean" + }, + "secret": { + "nullable": true, + "type": "string" + }, + "triggers": { + "items": { + "$ref": "#/components/schemas/EnumWebhookTrigger" + }, + "nullable": true, + "type": "array" + }, + "uid": { + "deprecated": true, + "nullable": true, + "type": "string" + }, + "url": { + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, + "OpenapiWebhookType": { + "properties": { + "created": { + "type": "integer" + }, + "created_by": { + "type": "integer" + }, + "description": { + "type": "string" + }, + "display_name": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "has_secret": { + "type": "boolean" + }, + "id": { + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "insecure": { + "type": "boolean" + }, + "latest_execution_result": { + "$ref": "#/components/schemas/EnumWebhookExecutionResult" + }, + "parent_id": { + "type": "integer" + }, + "parent_type": { + "$ref": "#/components/schemas/EnumWebhookParent" + }, + "scope": { + "type": "integer" + }, + "triggers": { + "items": { + "$ref": "#/components/schemas/EnumWebhookTrigger" + }, + "nullable": true, + "type": "array" + }, + "updated": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "version": { + "type": "integer" + } + }, + "type": "object" + }, + "ProtectionBranch": { + "properties": { + "bypass": { + "$ref": "#/components/schemas/ProtectionDefBypass" + }, + "lifecycle": { + "$ref": "#/components/schemas/ProtectionDefBranchLifecycle" + }, + "pullreq": { + "$ref": "#/components/schemas/ProtectionDefPullReq" + } + }, + "type": "object" + }, + "ProtectionDefApprovals": { + "properties": { + "require_code_owners": { + "type": "boolean" + }, + "require_latest_commit": { + "type": "boolean" + }, + "require_minimum_count": { + "type": "integer" + }, + "require_minimum_default_reviewer_count": { + "type": "integer" + }, + "require_no_change_request": { + "type": "boolean" + } + }, + "type": "object" + }, + "ProtectionDefBranchLifecycle": { + "properties": { + "create_forbidden": { + "type": "boolean" + }, + "delete_forbidden": { + "type": "boolean" + }, + "update_forbidden": { + "type": "boolean" + }, + "update_force_forbidden": { + "type": "boolean" + } + }, + "type": "object" + }, + "ProtectionDefBypass": { + "properties": { + "repo_owners": { + "type": "boolean" + }, + "user_group_ids": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "user_ids": { + "items": { + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProtectionDefComments": { + "properties": { + "require_resolve_all": { + "type": "boolean" + } + }, + "type": "object" + }, + "ProtectionDefMerge": { + "properties": { + "block": { + "type": "boolean" + }, + "delete_branch": { + "type": "boolean" + }, + "strategies_allowed": { + "items": { + "$ref": "#/components/schemas/EnumMergeMethod" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProtectionDefPullReq": { + "properties": { + "approvals": { + "$ref": "#/components/schemas/ProtectionDefApprovals" + }, + "comments": { + "$ref": "#/components/schemas/ProtectionDefComments" + }, + "merge": { + "$ref": "#/components/schemas/ProtectionDefMerge" + }, + "reviewers": { + "$ref": "#/components/schemas/ProtectionDefReviewers" + }, + "status_checks": { + "$ref": "#/components/schemas/ProtectionDefStatusChecks" + } + }, + "type": "object" + }, + "ProtectionDefReviewers": { + "properties": { + "default_reviewer_ids": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "request_code_owners": { + "type": "boolean" + } + }, + "type": "object" + }, + "ProtectionDefStatusChecks": { + "properties": { + "require_identifiers": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ProtectionPattern": { + "nullable": true, + "properties": { + "default": { + "type": "boolean" + }, + "exclude": { + "items": { + "type": "string" + }, + "type": "array" + }, + "include": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "PullreqCommentApplySuggestionsOutput": { + "properties": { + "commit_id": { + "type": "string" + }, + "dry_run_rules": { + "type": "boolean" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + } + }, + "type": "object" + }, + "PullreqSuggestionReference": { + "properties": { + "check_sum": { + "type": "string" + }, + "comment_id": { + "type": "integer" + } + }, + "type": "object" + }, + "RepoCommitDivergenceRequest": { + "properties": { + "from": { + "type": "string" + }, + "to": { + "type": "string" + } + }, + "type": "object" + }, + "RepoCommitFileAction": { + "properties": { + "action": { + "$ref": "#/components/schemas/GitFileAction" + }, + "encoding": { + "$ref": "#/components/schemas/EnumContentEncodingType" + }, + "path": { + "type": "string" + }, + "payload": { + "type": "string" + }, + "sha": { + "$ref": "#/components/schemas/ShaSHA" + } + }, + "type": "object" + }, + "RepoCommitTag": { + "properties": { + "commit": { + "$ref": "#/components/schemas/TypesCommit" + }, + "is_annotated": { + "type": "boolean" + }, + "message": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "tagger": { + "$ref": "#/components/schemas/TypesSignature" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "RepoContent": {}, + "RepoContentInfo": { + "properties": { + "latest_commit": { + "$ref": "#/components/schemas/TypesCommit" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/RepoContentType" + } + }, + "type": "object" + }, + "RepoContentType": { + "type": "string" + }, + "RepoFileContent": { + "properties": { + "data": { + "type": "string" + }, + "data_size": { + "type": "integer" + }, + "encoding": { + "$ref": "#/components/schemas/EnumContentEncodingType" + }, + "lfs_object_id": { + "type": "string" + }, + "lfs_object_size": { + "type": "integer" + }, + "size": { + "type": "integer" + } + }, + "type": "object" + }, + "RepoListPathsOutput": { + "properties": { + "directories": { + "items": { + "type": "string" + }, + "type": "array" + }, + "files": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "RepoMergeCheck": { + "properties": { + "conflict_files": { + "items": { + "type": "string" + }, + "type": "array" + }, + "mergeable": { + "type": "boolean" + } + }, + "type": "object" + }, + "RepoPathsDetailsOutput": { + "properties": { + "details": { + "items": { + "$ref": "#/components/schemas/GitPathDetails" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "RepoRepositoryOutput": { + "properties": { + "archived": { + "type": "boolean" + }, + "created": { + "type": "integer" + }, + "created_by": { + "type": "integer" + }, + "default_branch": { + "type": "string" + }, + "deleted": { + "nullable": true, + "type": "integer" + }, + "description": { + "type": "string" + }, + "fork_id": { + "type": "integer" + }, + "git_ssh_url": { + "type": "string" + }, + "git_url": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "importing": { + "type": "boolean" + }, + "is_empty": { + "type": "boolean" + }, + "is_favorite": { + "type": "boolean" + }, + "is_public": { + "type": "boolean" + }, + "last_git_push": { + "type": "integer" + }, + "num_closed_pulls": { + "type": "integer" + }, + "num_forks": { + "type": "integer" + }, + "num_merged_pulls": { + "type": "integer" + }, + "num_open_pulls": { + "type": "integer" + }, + "num_pulls": { + "type": "integer" + }, + "parent_id": { + "type": "integer" + }, + "path": { + "type": "string" + }, + "size": { + "description": "size of the repository in KiB", + "type": "integer" + }, + "size_lfs": { + "description": "size of the repository LFS in KiB", + "type": "integer" + }, + "size_updated": { + "type": "integer" + }, + "state": { + "$ref": "#/components/schemas/EnumRepoState" + }, + "updated": { + "type": "integer" + } + }, + "type": "object" + }, + "RepoSoftDeleteResponse": { + "properties": { + "deleted_at": { + "type": "integer" + } + }, + "type": "object" + }, + "RepoSubmoduleContent": { + "properties": { + "commit_sha": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "RepoSymlinkContent": { + "properties": { + "size": { + "type": "integer" + }, + "target": { + "type": "string" + } + }, + "type": "object" + }, + "ReposettingsGeneralSettings": { + "properties": { + "file_size_limit": { + "description": "file size limit in bytes", + "nullable": true, + "type": "integer" + }, + "git_lfs_enabled": { + "nullable": true, + "type": "boolean" + } + }, + "type": "object" + }, + "ReposettingsSecuritySettings": { + "properties": { + "principal_committer_match": { + "nullable": true, + "type": "boolean" + }, + "secret_scanning_enabled": { + "nullable": true, + "type": "boolean" + }, + "vulnerability_scanning_mode": { + "$ref": "#/components/schemas/SettingsVulnerabilityScanningMode" + } + }, + "type": "object" + }, + "SettingsVulnerabilityScanningMode": { + "enum": [ + "disabled", + "detect", + "block" + ], + "nullable": true, + "type": "string" + }, + "ShaSHA": { + "description": "Git object hash", + "type": "string" + }, + "TypesBranchExtended": { + "properties": { + "check_summary": { + "$ref": "#/components/schemas/TypesCheckCountSummary" + }, + "commit": { + "$ref": "#/components/schemas/TypesCommit" + }, + "commit_divergence": { + "$ref": "#/components/schemas/TypesCommitDivergence" + }, + "is_default": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "pull_requests": { + "items": { + "$ref": "#/components/schemas/TypesPullReq" + }, + "type": "array" + }, + "rules": { + "items": { + "$ref": "#/components/schemas/TypesRuleInfo" + }, + "type": "array" + }, + "sha": { + "$ref": "#/components/schemas/ShaSHA" + } + }, + "type": "object" + }, + "TypesBranchTable": { + "properties": { + "created": { + "type": "integer" + }, + "created_by": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "updated": { + "type": "integer" + }, + "updated_by": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesChangeStats": { + "properties": { + "changes": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "insertions": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesCheck": { + "properties": { + "created": { + "type": "integer" + }, + "ended": { + "type": "integer" + }, + "id": { + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "link": { + "type": "string" + }, + "metadata": {}, + "payload": { + "$ref": "#/components/schemas/TypesCheckPayload" + }, + "reported_by": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "started": { + "type": "integer" + }, + "status": { + "$ref": "#/components/schemas/EnumCheckStatus" + }, + "summary": { + "type": "string" + }, + "updated": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesCheckCountSummary": { + "properties": { + "error": { + "type": "integer" + }, + "failure": { + "type": "integer" + }, + "pending": { + "type": "integer" + }, + "running": { + "type": "integer" + }, + "success": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesCheckPayload": { + "properties": { + "data": {}, + "kind": { + "$ref": "#/components/schemas/EnumCheckPayloadKind" + }, + "version": { + "type": "string" + } + }, + "type": "object" + }, + "TypesCodeCommentFields": { + "properties": { + "line_new": { + "type": "integer" + }, + "line_old": { + "type": "integer" + }, + "merge_base_sha": { + "type": "string" + }, + "outdated": { + "type": "boolean" + }, + "path": { + "type": "string" + }, + "source_sha": { + "type": "string" + }, + "span_new": { + "type": "integer" + }, + "span_old": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesCodeOwnerEvaluation": { + "properties": { + "evaluation_entries": { + "items": { + "$ref": "#/components/schemas/TypesCodeOwnerEvaluationEntry" + }, + "nullable": true, + "type": "array" + }, + "file_sha": { + "type": "string" + } + }, + "type": "object" + }, + "TypesCodeOwnerEvaluationEntry": { + "properties": { + "line_number": { + "type": "integer" + }, + "owner_evaluations": { + "items": { + "$ref": "#/components/schemas/TypesOwnerEvaluation" + }, + "nullable": true, + "type": "array" + }, + "pattern": { + "type": "string" + }, + "user_group_owner_evaluations": { + "items": { + "$ref": "#/components/schemas/TypesUserGroupOwnerEvaluation" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "TypesCommit": { + "properties": { + "author": { + "$ref": "#/components/schemas/TypesSignature" + }, + "committer": { + "$ref": "#/components/schemas/TypesSignature" + }, + "message": { + "type": "string" + }, + "parent_shas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "sha": { + "type": "string" + }, + "stats": { + "$ref": "#/components/schemas/TypesCommitStats" + }, + "title": { + "type": "string" + } + }, + "type": "object" + }, + "TypesCommitDivergence": { + "properties": { + "ahead": { + "type": "integer" + }, + "behind": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesCommitFileStats": { + "properties": { + "changes": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "insertions": { + "type": "integer" + }, + "old_path": { + "type": "string" + }, + "path": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/EnumFileDiffStatus" + } + }, + "type": "object" + }, + "TypesCommitFilesResponse": { + "properties": { + "changed_files": { + "items": { + "$ref": "#/components/schemas/TypesFileReference" + }, + "nullable": true, + "type": "array" + }, + "commit_id": { + "type": "string" + }, + "dry_run_rules": { + "type": "boolean" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesCommitStats": { + "properties": { + "files": { + "items": { + "$ref": "#/components/schemas/TypesCommitFileStats" + }, + "type": "array" + }, + "total": { + "$ref": "#/components/schemas/TypesChangeStats" + } + }, + "type": "object" + }, + "TypesCreateBranchOutput": { + "properties": { + "commit": { + "$ref": "#/components/schemas/TypesCommit" + }, + "dry_run_rules": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + }, + "sha": { + "$ref": "#/components/schemas/ShaSHA" + } + }, + "type": "object" + }, + "TypesDefaultReviewerApprovalsResponse": { + "properties": { + "current_count": { + "type": "integer" + }, + "minimum_required_count": { + "type": "integer" + }, + "minimum_required_count_latest": { + "type": "integer" + }, + "principals": { + "items": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "TypesDeleteBranchOutput": { + "properties": { + "dry_run_rules": { + "type": "boolean" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesDiffStats": { + "properties": { + "additions": { + "nullable": true, + "type": "integer" + }, + "commits": { + "nullable": true, + "type": "integer" + }, + "deletions": { + "nullable": true, + "type": "integer" + }, + "files_changed": { + "nullable": true, + "type": "integer" + } + }, + "type": "object" + }, + "TypesFileReference": { + "properties": { + "blob_sha": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "TypesIdentity": { + "properties": { + "email": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, + "TypesLabel": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "created": { + "type": "integer" + }, + "created_by": { + "type": "integer" + }, + "description": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "key": { + "type": "string" + }, + "pullreq_count": { + "type": "integer" + }, + "repo_id": { + "nullable": true, + "type": "integer" + }, + "scope": { + "type": "integer" + }, + "space_id": { + "nullable": true, + "type": "integer" + }, + "type": { + "$ref": "#/components/schemas/EnumLabelType" + }, + "updated": { + "type": "integer" + }, + "updated_by": { + "type": "integer" + }, + "value_count": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesLabelAssignment": { + "properties": { + "assigned": { + "nullable": true, + "type": "boolean" + }, + "assigned_value": { + "$ref": "#/components/schemas/TypesLabelValueInfo" + }, + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "id": { + "type": "integer" + }, + "key": { + "type": "string" + }, + "scope": { + "type": "integer" + }, + "type": { + "$ref": "#/components/schemas/EnumLabelType" + }, + "values": { + "items": { + "$ref": "#/components/schemas/TypesLabelValueInfo" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesLabelPullReqAssignmentInfo": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "id": { + "type": "integer" + }, + "key": { + "type": "string" + }, + "scope": { + "type": "integer" + }, + "value": { + "nullable": true, + "type": "string" + }, + "value_color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "value_count": { + "type": "integer" + }, + "value_id": { + "nullable": true, + "type": "integer" + } + }, + "type": "object" + }, + "TypesLabelValue": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "created": { + "type": "integer" + }, + "created_by": { + "type": "integer" + }, + "id": { + "type": "integer" + }, + "label_id": { + "type": "integer" + }, + "updated": { + "type": "integer" + }, + "updated_by": { + "type": "integer" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "TypesLabelValueInfo": { + "properties": { + "color": { + "nullable": true, + "type": "string" + }, + "id": { + "nullable": true, + "type": "integer" + }, + "value": { + "nullable": true, + "type": "string" + } + }, + "type": "object" + }, + "TypesLabelWithValues": { + "properties": { + "label": { + "$ref": "#/components/schemas/TypesLabel" + }, + "values": { + "items": { + "$ref": "#/components/schemas/TypesLabelValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesListCommitResponse": { + "properties": { + "commits": { + "items": { + "$ref": "#/components/schemas/TypesCommit" + }, + "nullable": true, + "type": "array" + }, + "rename_details": { + "items": { + "$ref": "#/components/schemas/TypesRenameDetails" + }, + "nullable": true, + "type": "array" + }, + "total_commits": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesMergeResponse": { + "properties": { + "allowed_methods": { + "items": { + "$ref": "#/components/schemas/EnumMergeMethod" + }, + "type": "array" + }, + "branch_deleted": { + "type": "boolean" + }, + "conflict_files": { + "items": { + "type": "string" + }, + "type": "array" + }, + "default_reviewer_aprovals": { + "items": { + "$ref": "#/components/schemas/TypesDefaultReviewerApprovalsResponse" + }, + "type": "array" + }, + "dry_run": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "mergeable": { + "type": "boolean" + }, + "minimum_required_approvals_count": { + "type": "integer" + }, + "minimum_required_approvals_count_latest": { + "type": "integer" + }, + "requires_code_owners_approval": { + "type": "boolean" + }, + "requires_code_owners_approval_latest": { + "type": "boolean" + }, + "requires_comment_resolution": { + "type": "boolean" + }, + "requires_no_change_requests": { + "type": "boolean" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + }, + "sha": { + "type": "string" + } + }, + "type": "object" + }, + "TypesMergeViolations": { + "properties": { + "conflict_files": { + "items": { + "type": "string" + }, + "type": "array" + }, + "message": { + "type": "string" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesOwnerEvaluation": { + "properties": { + "owner": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "review_decision": { + "$ref": "#/components/schemas/EnumPullReqReviewDecision" + }, + "review_sha": { + "type": "string" + } + }, + "type": "object" + }, + "TypesPrincipalInfo": { + "nullable": true, + "properties": { + "created": { + "type": "integer" + }, + "display_name": { + "type": "string" + }, + "email": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "type": { + "$ref": "#/components/schemas/EnumPrincipalType" + }, + "uid": { + "type": "string" + }, + "updated": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesPullReq": { + "properties": { + "author": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "check_summary": { + "$ref": "#/components/schemas/TypesCheckCountSummary" + }, + "closed": { + "nullable": true, + "type": "integer" + }, + "created": { + "type": "integer" + }, + "description": { + "type": "string" + }, + "edited": { + "type": "integer" + }, + "is_draft": { + "type": "boolean" + }, + "labels": { + "items": { + "$ref": "#/components/schemas/TypesLabelPullReqAssignmentInfo" + }, + "type": "array" + }, + "merge_base_sha": { + "type": "string" + }, + "merge_check_status": { + "$ref": "#/components/schemas/EnumMergeCheckStatus" + }, + "merge_conflicts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "merge_method": { + "$ref": "#/components/schemas/EnumMergeMethod" + }, + "merge_target_sha": { + "nullable": true, + "type": "string" + }, + "merge_violations_bypassed": { + "nullable": true, + "type": "boolean" + }, + "merged": { + "nullable": true, + "type": "integer" + }, + "merger": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "number": { + "type": "integer" + }, + "rebase_check_status": { + "$ref": "#/components/schemas/EnumMergeCheckStatus" + }, + "rebase_conflicts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "rules": { + "items": { + "$ref": "#/components/schemas/TypesRuleInfo" + }, + "type": "array" + }, + "source_branch": { + "type": "string" + }, + "source_repo_id": { + "type": "integer" + }, + "source_sha": { + "type": "string" + }, + "state": { + "$ref": "#/components/schemas/EnumPullReqState" + }, + "stats": { + "$ref": "#/components/schemas/TypesPullReqStats" + }, + "target_branch": { + "type": "string" + }, + "target_repo_id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "updated": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesPullReqActivity": { + "properties": { + "author": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "code_comment": { + "$ref": "#/components/schemas/TypesCodeCommentFields" + }, + "created": { + "type": "integer" + }, + "deleted": { + "nullable": true, + "type": "integer" + }, + "edited": { + "type": "integer" + }, + "id": { + "type": "integer" + }, + "kind": { + "$ref": "#/components/schemas/EnumPullReqActivityKind" + }, + "mentions": { + "additionalProperties": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "type": "object" + }, + "metadata": { + "$ref": "#/components/schemas/TypesPullReqActivityMetadata" + }, + "order": { + "type": "integer" + }, + "parent_id": { + "nullable": true, + "type": "integer" + }, + "payload": {}, + "pullreq_id": { + "type": "integer" + }, + "repo_id": { + "type": "integer" + }, + "resolved": { + "nullable": true, + "type": "integer" + }, + "resolver": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "sub_order": { + "type": "integer" + }, + "text": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumPullReqActivityType" + }, + "updated": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesPullReqActivityMentionsMetadata": { + "properties": { + "ids": { + "items": { + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesPullReqActivityMetadata": { + "properties": { + "mentions": { + "$ref": "#/components/schemas/TypesPullReqActivityMentionsMetadata" + }, + "suggestions": { + "$ref": "#/components/schemas/TypesPullReqActivitySuggestionsMetadata" + } + }, + "type": "object" + }, + "TypesPullReqActivitySuggestionsMetadata": { + "properties": { + "applied_check_sum": { + "type": "string" + }, + "applied_commit_sha": { + "type": "string" + }, + "check_sums": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesPullReqCheck": { + "properties": { + "bypassable": { + "type": "boolean" + }, + "check": { + "$ref": "#/components/schemas/TypesCheck" + }, + "required": { + "type": "boolean" + } + }, + "type": "object" + }, + "TypesPullReqChecks": { + "properties": { + "checks": { + "items": { + "$ref": "#/components/schemas/TypesPullReqCheck" + }, + "nullable": true, + "type": "array" + }, + "commit_sha": { + "type": "string" + } + }, + "type": "object" + }, + "TypesPullReqFileView": { + "properties": { + "obsolete": { + "type": "boolean" + }, + "path": { + "type": "string" + }, + "sha": { + "type": "string" + } + }, + "type": "object" + }, + "TypesPullReqLabel": { + "properties": { + "created": { + "type": "integer" + }, + "created_by": { + "type": "integer" + }, + "label_id": { + "type": "integer" + }, + "pullreq_id": { + "type": "integer" + }, + "updated": { + "type": "integer" + }, + "updated_by": { + "type": "integer" + }, + "value_id": { + "nullable": true, + "type": "integer" + } + }, + "type": "object" + }, + "TypesPullReqLabelAssignInput": { + "properties": { + "label_id": { + "type": "integer" + }, + "value": { + "type": "string" + }, + "value_id": { + "nullable": true, + "type": "integer" + } + }, + "type": "object" + }, + "TypesPullReqRepo": { + "properties": { + "pull_request": { + "$ref": "#/components/schemas/TypesPullReq" + }, + "repository": { + "$ref": "#/components/schemas/TypesRepositoryCore" + } + }, + "type": "object" + }, + "TypesPullReqReviewer": { + "properties": { + "added_by": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "created": { + "type": "integer" + }, + "latest_review_id": { + "nullable": true, + "type": "integer" + }, + "review_decision": { + "$ref": "#/components/schemas/EnumPullReqReviewDecision" + }, + "reviewer": { + "$ref": "#/components/schemas/TypesPrincipalInfo" + }, + "sha": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumPullReqReviewerType" + }, + "updated": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesPullReqStats": { + "properties": { + "additions": { + "nullable": true, + "type": "integer" + }, + "commits": { + "nullable": true, + "type": "integer" + }, + "conversations": { + "type": "integer" + }, + "deletions": { + "nullable": true, + "type": "integer" + }, + "files_changed": { + "nullable": true, + "type": "integer" + }, + "unresolved_count": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesRebaseResponse": { + "properties": { + "already_ancestor": { + "type": "boolean" + }, + "conflict_files": { + "items": { + "type": "string" + }, + "type": "array" + }, + "dry_run": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "new_head_branch_sha": { + "$ref": "#/components/schemas/ShaSHA" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesRenameDetails": { + "properties": { + "commit_sha_after": { + "type": "string" + }, + "commit_sha_before": { + "type": "string" + }, + "new_path": { + "type": "string" + }, + "old_path": { + "type": "string" + } + }, + "type": "object" + }, + "TypesRepositoryCore": { + "nullable": true, + "properties": { + "default_branch": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "parent_id": { + "type": "integer" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "TypesRepositoryPullReqSummary": { + "properties": { + "closed_count": { + "type": "integer" + }, + "merged_count": { + "type": "integer" + }, + "open_count": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesRepositorySummary": { + "properties": { + "branch_count": { + "type": "integer" + }, + "default_branch_commit_count": { + "type": "integer" + }, + "pull_req_summary": { + "$ref": "#/components/schemas/TypesRepositoryPullReqSummary" + }, + "tag_count": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesRevertResponse": { + "properties": { + "branch": { + "type": "string" + }, + "commit": { + "$ref": "#/components/schemas/TypesCommit" + } + }, + "type": "object" + }, + "TypesRuleInfo": { + "properties": { + "identifier": { + "type": "string" + }, + "repo_path": { + "type": "string" + }, + "space_path": { + "type": "string" + }, + "state": { + "$ref": "#/components/schemas/EnumRuleState" + }, + "type": { + "$ref": "#/components/schemas/TypesRuleType" + } + }, + "type": "object" + }, + "TypesRuleType": { + "type": "string" + }, + "TypesRuleViolations": { + "properties": { + "bypassable": { + "type": "boolean" + }, + "bypassed": { + "type": "boolean" + }, + "rule": { + "$ref": "#/components/schemas/TypesRuleInfo" + }, + "violations": { + "items": { + "$ref": "#/components/schemas/TypesViolation" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "TypesRulesViolations": { + "properties": { + "message": { + "type": "string" + }, + "violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "TypesSaveLabelInput": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "description": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "key": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/EnumLabelType" + } + }, + "type": "object" + }, + "TypesSaveLabelValueInput": { + "properties": { + "color": { + "$ref": "#/components/schemas/EnumLabelColor" + }, + "id": { + "type": "integer" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "TypesScopeData": { + "properties": { + "repository": { + "$ref": "#/components/schemas/TypesRepositoryCore" + }, + "scope": { + "type": "integer" + }, + "space": { + "$ref": "#/components/schemas/TypesSpaceCore" + } + }, + "type": "object" + }, + "TypesScopesLabels": { + "properties": { + "label_data": { + "items": { + "$ref": "#/components/schemas/TypesLabelAssignment" + }, + "nullable": true, + "type": "array" + }, + "scope_data": { + "items": { + "$ref": "#/components/schemas/TypesScopeData" + }, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "TypesSignature": { + "properties": { + "identity": { + "$ref": "#/components/schemas/TypesIdentity" + }, + "when": { + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "TypesSpaceCore": { + "properties": { + "id": { + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "parent_id": { + "type": "integer" + }, + "path": { + "type": "string" + } + }, + "type": "object" + }, + "TypesSquashResponse": { + "properties": { + "conflict_files": { + "items": { + "type": "string" + }, + "type": "array" + }, + "dry_run": { + "type": "boolean" + }, + "dry_run_rules": { + "type": "boolean" + }, + "new_head_branch_sha": { + "$ref": "#/components/schemas/ShaSHA" + }, + "rule_violations": { + "items": { + "$ref": "#/components/schemas/TypesRuleViolations" + }, + "type": "array" + } + }, + "type": "object" + }, + "TypesUserGroupInfo": { + "properties": { + "description": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "name": { + "type": "string" + }, + "scope": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesUserGroupOwnerEvaluation": { + "properties": { + "evaluations": { + "items": { + "$ref": "#/components/schemas/TypesOwnerEvaluation" + }, + "nullable": true, + "type": "array" + }, + "id": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, + "TypesViolation": { + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "params": { + "items": {}, + "nullable": true, + "type": "array" + } + }, + "type": "object" + }, + "TypesWebhookCreateInput": { + "properties": { + "description": { + "type": "string" + }, + "display_name": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "identifier": { + "type": "string" + }, + "insecure": { + "type": "boolean" + }, + "secret": { + "type": "string" + }, + "triggers": { + "items": { + "$ref": "#/components/schemas/EnumWebhookTrigger" + }, + "nullable": true, + "type": "array" + }, + "uid": { + "deprecated": true, + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "TypesWebhookExecution": { + "properties": { + "created": { + "type": "integer" + }, + "duration": { + "type": "integer" + }, + "error": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "request": { + "$ref": "#/components/schemas/TypesWebhookExecutionRequest" + }, + "response": { + "$ref": "#/components/schemas/TypesWebhookExecutionResponse" + }, + "result": { + "$ref": "#/components/schemas/EnumWebhookExecutionResult" + }, + "retrigger_of": { + "nullable": true, + "type": "integer" + }, + "retriggerable": { + "type": "boolean" + }, + "trigger_type": { + "$ref": "#/components/schemas/EnumWebhookTrigger" + }, + "webhook_id": { + "type": "integer" + } + }, + "type": "object" + }, + "TypesWebhookExecutionRequest": { + "properties": { + "body": { + "type": "string" + }, + "headers": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "TypesWebhookExecutionResponse": { + "properties": { + "body": { + "type": "string" + }, + "headers": { + "type": "string" + }, + "status": { + "type": "string" + }, + "status_code": { + "type": "integer" + } + }, + "type": "object" + }, + "UploadResult": { + "properties": { + "file_path": { + "type": "string" + } + }, + "type": "object" + }, + "UsererrorError": { + "properties": { + "message": { + "type": "string" + }, + "values": { + "additionalProperties": {}, + "type": "object" + } + }, + "type": "object" + }, + "AccessKeySecretKey": { + "properties": { + "accessKey": { + "type": "string" + }, + "accessKeySecretIdentifier": { + "type": "string" + }, + "accessKeySecretSpaceId": { + "format": "int64", + "type": "integer" + }, + "accessKeySecretSpacePath": { + "type": "string" + }, + "secretKeyIdentifier": { + "type": "string" + }, + "secretKeySpaceId": { + "format": "int64", + "type": "integer" + }, + "secretKeySpacePath": { + "type": "string" + } + }, + "required": [ + "secretKeyIdentifier" + ] + }, + "Anonymous": {}, + "ArtifactDeploymentsDetail": { + "description": "Artifact deployments Detail", + "properties": { + "count": { + "type": "integer" + }, + "envIdentifier": { + "type": "string" + }, + "envName": { + "type": "string" + }, + "envType": { + "$ref": "#/components/schemas/RegistryEnvironmentType" + }, + "infraIdentifier": { + "type": "string" + }, + "infraName": { + "type": "string" + }, + "lastDeployedAt": { + "type": "string" + }, + "lastDeployedById": { + "type": "string" + }, + "lastDeployedByName": { + "type": "string" + }, + "lastPipelineExecutionId": { + "type": "string" + }, + "lastPipelineExecutionName": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "pipelineId": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "serviceIdentifier": { + "type": "string" + }, + "serviceName": { + "type": "string" + } + }, + "type": "object" + }, + "ArtifactDeploymentsDetails": { + "description": "Docker Artifact deployments Details", + "properties": { + "deployments": { + "$ref": "#/components/schemas/ArtifactDeploymentsList" + }, + "deploymentsStats": { + "$ref": "#/components/schemas/DeploymentStats" + } + }, + "required": [ + "deployments" + ], + "type": "object" + }, + "ArtifactDeploymentsList": { + "description": "A list of Artifact Deployments", + "properties": { + "deployments": { + "description": "A list of Artifact", + "items": { + "$ref": "#/components/schemas/ArtifactDeploymentsDetail" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + } + }, + "required": [ + "artifacts" + ], + "type": "object" + }, + "ArtifactDetail": { + "description": "Artifact Detail", + "discriminator": { + "mapping": { + "DOCKER": "#/components/schemas/DockerArtifactDetailConfig", + "GENERIC": "#/components/schemas/GenericArtifactDetailConfig", + "HELM": "#/components/schemas/HelmArtifactDetailConfig", + "MAVEN": "#/components/schemas/MavenArtifactDetailConfig", + "NPM": "#/components/schemas/NpmArtifactDetailConfig", + "NUGET": "#/components/schemas/NugetArtifactDetailConfig", + "PYTHON": "#/components/schemas/PythonArtifactDetailConfig", + "RPM": "#/components/schemas/RpmArtifactDetailConfig" + }, + "propertyName": "packageType" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/DockerArtifactDetailConfig" + }, + { + "$ref": "#/components/schemas/HelmArtifactDetailConfig" + }, + { + "$ref": "#/components/schemas/GenericArtifactDetailConfig" + }, + { + "$ref": "#/components/schemas/MavenArtifactDetailConfig" + }, + { + "$ref": "#/components/schemas/PythonArtifactDetailConfig" + }, + { + "$ref": "#/components/schemas/NpmArtifactDetailConfig" + }, + { + "$ref": "#/components/schemas/RpmArtifactDetailConfig" + }, + { + "$ref": "#/components/schemas/NugetArtifactDetailConfig" + } + ], + "properties": { + "createdAt": { + "type": "string" + }, + "createdBy": { + "type": "string" + }, + "downloadCount": { + "format": "int64", + "type": "integer" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "size": { + "type": "string" + }, + "version": { + "type": "string" + } + }, + "required": [ + "imageName", + "version", + "registryPath", + "url", + "packageType" + ], + "type": "object" + }, + "ArtifactLabelRequest": { + "properties": { + "labels": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "labels" + ], + "type": "object" + }, + "ArtifactMetadata": { + "description": "Artifact Metadata", + "properties": { + "deploymentMetadata": { + "$ref": "#/components/schemas/DeploymentMetadata" + }, + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "lastModified": { + "type": "string" + }, + "latestVersion": { + "type": "string" + }, + "name": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "pullCommand": { + "type": "string" + }, + "registryIdentifier": { + "type": "string" + }, + "registryPath": { + "type": "string" + }, + "version": { + "type": "string" + } + }, + "required": [ + "name", + "registryIdentifier", + "latestVersion", + "registryPath", + "version" + ], + "type": "object" + }, + "ArtifactStats": { + "description": "Harness Artifact Stats", + "properties": { + "downloadCount": { + "format": "int64", + "type": "integer" + }, + "downloadSize": { + "format": "int64", + "type": "integer" + }, + "totalStorageSize": { + "format": "int64", + "type": "integer" + }, + "uploadSize": { + "format": "int64", + "type": "integer" + } + }, + "type": "object" + }, + "ArtifactSummary": { + "description": "Harness Artifact Summary", + "properties": { + "createdAt": { + "type": "string" + }, + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "imageName": { + "type": "string" + }, + "labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "modifiedAt": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + } + }, + "required": [ + "imageName", + "packageType" + ], + "type": "object" + }, + "ArtifactVersionMetadata": { + "description": "Artifact Version Metadata", + "properties": { + "deploymentMetadata": { + "$ref": "#/components/schemas/DeploymentMetadata" + }, + "digestCount": { + "format": "int64", + "type": "integer" + }, + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "fileCount": { + "format": "int64", + "type": "integer" + }, + "lastModified": { + "type": "string" + }, + "name": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "pullCommand": { + "type": "string" + }, + "registryIdentifier": { + "type": "string" + }, + "registryPath": { + "type": "string" + }, + "size": { + "type": "string" + } + }, + "required": [ + "name", + "registryIdentifier", + "latestVersion", + "registryPath" + ], + "type": "object" + }, + "ArtifactVersionSummary": { + "description": "Docker Artifact Version Summary", + "properties": { + "imageName": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "sscaArtifactId": { + "type": "string" + }, + "sscaArtifactSourceId": { + "type": "string" + }, + "stoExecutionId": { + "type": "string" + }, + "stoPipelineId": { + "type": "string" + }, + "version": { + "type": "string" + } + }, + "required": [ + "imageName", + "version", + "packageType" + ], + "type": "object" + }, + "AuthType": { + "description": "Authentication type", + "enum": [ + "UserPassword", + "Anonymous" + ], + "type": "string" + }, + "RegistryBuildDetails": { + "properties": { + "orgIdentifier": { + "type": "string" + }, + "pipelineDisplayName": { + "type": "string" + }, + "pipelineExecutionId": { + "type": "string" + }, + "pipelineIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "stageExecutionId": { + "type": "string" + }, + "stepExecutionId": { + "type": "string" + } + }, + "type": "object" + }, + "CleanupPolicy": { + "description": "Cleanup Policy for Harness Artifact Registries", + "properties": { + "expireDays": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "packagePrefix": { + "items": { + "type": "string" + }, + "type": "array" + }, + "versionPrefix": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ClientSetupDetails": { + "description": "Client Setup Details", + "properties": { + "mainHeader": { + "type": "string" + }, + "secHeader": { + "type": "string" + }, + "sections": { + "items": { + "$ref": "#/components/schemas/ClientSetupSection" + }, + "type": "array" + } + }, + "required": [ + "mainHeader", + "secHeader", + "sections" + ], + "type": "object" + }, + "ClientSetupSection": { + "description": "Client Setup Section", + "discriminator": { + "mapping": { + "INLINE": "#/components/schemas/ClientSetupStepConfig", + "TABS": "#/components/schemas/TabSetupStepConfig" + }, + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/ClientSetupStepConfig" + }, + { + "$ref": "#/components/schemas/TabSetupStepConfig" + } + ], + "properties": { + "header": { + "type": "string" + }, + "secHeader": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/SectionType" + } + }, + "required": [ + "type" + ], + "type": "object" + }, + "ClientSetupStep": { + "description": "Client Setup Step", + "properties": { + "commands": { + "items": { + "$ref": "#/components/schemas/ClientSetupStepCommand" + }, + "type": "array" + }, + "header": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/ClientSetupStepType" + } + }, + "type": "object" + }, + "ClientSetupStepCommand": { + "description": "Client Setup Step Command", + "properties": { + "label": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "ClientSetupStepConfig": { + "description": "Client Setup Step", + "properties": { + "steps": { + "items": { + "$ref": "#/components/schemas/ClientSetupStep" + }, + "type": "array" + } + }, + "type": "object" + }, + "ClientSetupStepType": { + "description": "ClientSetupStepType type", + "enum": [ + "Static", + "GenerateToken" + ], + "type": "string" + }, + "DeploymentDetails": { + "properties": { + "nonProdDeployment": { + "type": "integer" + }, + "prodDeployment": { + "type": "integer" + }, + "totalDeployment": { + "type": "integer" + } + }, + "required": [ + "prodDeployment", + "nonProdDeployment", + "totalDeployment" + ], + "type": "object" + }, + "DeploymentMetadata": { + "properties": { + "nonProdEnvCount": { + "type": "integer" + }, + "prodEnvCount": { + "type": "integer" + } + }, + "required": [ + "prodEnvCount", + "nonProdEnvCount" + ], + "type": "object" + }, + "DeploymentStats": { + "description": "DeploymentStats", + "properties": { + "PreProduction": { + "type": "integer" + }, + "Production": { + "type": "integer" + } + }, + "required": [ + "Production", + "PreProduction" + ], + "type": "object" + }, + "DockerArtifactDetail": { + "description": "Docker Artifact Detail", + "properties": { + "createdAt": { + "type": "string" + }, + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "imageName": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "pullCommand": { + "type": "string" + }, + "registryPath": { + "type": "string" + }, + "size": { + "type": "string" + }, + "url": { + "type": "string" + }, + "version": { + "type": "string" + } + }, + "required": [ + "imageName", + "version", + "registryPath", + "url", + "packageType" + ], + "type": "object" + }, + "DockerArtifactDetailConfig": { + "description": "Config for docker artifact details", + "properties": { + "pullCommand": { + "type": "string" + } + }, + "type": "object" + }, + "DockerArtifactIntegrationDetail": { + "description": "Docker Artifact Detail", + "properties": { + "buildDetails": { + "$ref": "#/components/schemas/RegistryBuildDetails" + }, + "deploymentsDetails": { + "$ref": "#/components/schemas/DeploymentDetails" + }, + "sbomDetails": { + "$ref": "#/components/schemas/SBOMDetails" + }, + "slsaDetails": { + "$ref": "#/components/schemas/SLSADetails" + }, + "stoDetails": { + "$ref": "#/components/schemas/STODetails" + } + }, + "type": "object" + }, + "DockerArtifactManifest": { + "description": "Docker Artifact Manifest", + "properties": { + "manifest": { + "type": "string" + } + }, + "required": [ + "manifest" + ], + "type": "object" + }, + "DockerLayerEntry": { + "description": "Harness Artifact Layers", + "properties": { + "command": { + "type": "string" + }, + "size": { + "type": "string" + } + }, + "required": [ + "command" + ], + "type": "object" + }, + "DockerLayersSummary": { + "description": "Harness Layers Summary", + "properties": { + "digest": { + "type": "string" + }, + "layers": { + "items": { + "$ref": "#/components/schemas/DockerLayerEntry" + }, + "type": "array" + }, + "osArch": { + "type": "string" + } + }, + "required": [ + "digest" + ], + "type": "object" + }, + "DockerManifestDetails": { + "description": "Harness Artifact Layers", + "properties": { + "createdAt": { + "type": "string" + }, + "digest": { + "type": "string" + }, + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "osArch": { + "type": "string" + }, + "size": { + "type": "string" + }, + "stoDetails": { + "$ref": "#/components/schemas/STODetails" + }, + "stoExecutionId": { + "type": "string" + }, + "stoPipelineId": { + "type": "string" + } + }, + "required": [ + "digest", + "layers", + "osArch" + ], + "type": "object" + }, + "DockerManifests": { + "description": "Harness Manifests", + "properties": { + "imageName": { + "type": "string" + }, + "manifests": { + "items": { + "$ref": "#/components/schemas/DockerManifestDetails" + }, + "type": "array" + }, + "version": { + "type": "string" + } + }, + "required": [ + "imageName", + "version" + ], + "type": "object" + }, + "RegistryEnvironmentType": { + "description": "Environment Type", + "enum": [ + "PreProduction", + "Production" + ], + "type": "string" + }, + "RegistryError": { + "properties": { + "code": { + "description": "The http error code", + "example": "404", + "type": "string" + }, + "details": { + "description": "Additional details about the error", + "type": "object" + }, + "message": { + "description": "The reason the request failed", + "type": "string" + } + }, + "required": [ + "code", + "message" + ], + "type": "object" + }, + "ExtraHeader": { + "description": "Webhook Extra Header", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "key", + "value" + ], + "type": "object" + }, + "FileDetail": { + "description": "File Detail", + "properties": { + "checksums": { + "items": { + "type": "string" + }, + "type": "array" + }, + "createdAt": { + "type": "string" + }, + "downloadCommand": { + "type": "string" + }, + "name": { + "type": "string" + }, + "size": { + "type": "string" + } + }, + "required": [ + "name", + "size", + "checksums", + "downloadCommand", + "createdAt" + ], + "type": "object" + }, + "GenericArtifactDetailConfig": { + "description": "Config for generic artifact details", + "properties": { + "description": { + "type": "string" + } + }, + "type": "object" + }, + "HelmArtifactDetail": { + "description": "Helm Artifact Detail", + "properties": { + "artifact": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "modifiedAt": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "pullCommand": { + "type": "string" + }, + "registryPath": { + "type": "string" + }, + "size": { + "type": "string" + }, + "url": { + "type": "string" + }, + "version": { + "type": "string" + } + }, + "required": [ + "imageName", + "version", + "registryPath", + "url", + "packageType" + ], + "type": "object" + }, + "HelmArtifactDetailConfig": { + "description": "Config for helm artifact details", + "properties": { + "pullCommand": { + "type": "string" + } + }, + "type": "object" + }, + "HelmArtifactManifest": { + "description": "Helm Artifact Manifest", + "properties": { + "manifest": { + "type": "string" + } + }, + "required": [ + "manifest" + ], + "type": "object" + }, + "JfrogReplicationRegistry": { + "properties": { + "namespace": { + "type": "string" + }, + "passwordSecretId": { + "type": "string" + }, + "passwordSecretSpaceId": { + "type": "string" + }, + "url": { + "format": "uri", + "type": "string" + }, + "username": { + "type": "string" + } + }, + "required": [ + "url", + "namespace" + ], + "type": "object" + }, + "ListArtifact": { + "description": "A list of Artifacts", + "properties": { + "artifacts": { + "description": "A list of Artifact", + "items": { + "$ref": "#/components/schemas/ArtifactMetadata" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + } + }, + "required": [ + "artifacts" + ], + "type": "object" + }, + "ListArtifactLabel": { + "description": "A list of Harness Artifact Labels", + "properties": { + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + } + }, + "required": [ + "labels" + ], + "type": "object" + }, + "ListArtifactVersion": { + "description": "A list of Artifact versions", + "properties": { + "artifactVersions": { + "description": "A list of Artifact versions", + "items": { + "$ref": "#/components/schemas/ArtifactVersionMetadata" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + } + }, + "required": [ + "artifacts" + ], + "type": "object" + }, + "ListMigrationImage": { + "description": "A list of migration images", + "properties": { + "images": { + "description": "A list of Artifact versions", + "items": { + "$ref": "#/components/schemas/MigrationImage" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + } + }, + "required": [ + "pageCount", + "itemCount", + "pageSize", + "pageIndex", + "images" + ], + "type": "object" + }, + "ListRegistry": { + "description": "A list of Harness Artifact Registries", + "properties": { + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + }, + "registries": { + "description": "A list of Harness Artifact Registries", + "items": { + "$ref": "#/components/schemas/RegistryMetadata" + }, + "type": "array" + } + }, + "required": [ + "registries" + ], + "type": "object" + }, + "ListRegistryArtifact": { + "description": "A list of Artifacts", + "properties": { + "artifacts": { + "description": "A list of Artifact", + "items": { + "$ref": "#/components/schemas/RegistryArtifactMetadata" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + } + }, + "required": [ + "artifacts" + ], + "type": "object" + }, + "ListReplicationRule": { + "description": "A list of replication rules", + "properties": { + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 10, + "type": "integer" + }, + "rules": { + "description": "A list of Replication Rules", + "items": { + "$ref": "#/components/schemas/ReplicationRule" + }, + "type": "array" + } + }, + "required": [ + "pageCount", + "itemCount", + "pageSize", + "pageIndex", + "rules" + ], + "type": "object" + }, + "ListWebhooks": { + "description": "A list of Harness Registries webhooks", + "properties": { + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + }, + "webhooks": { + "description": "A list of Registries webhooks", + "items": { + "$ref": "#/components/schemas/Webhook" + }, + "type": "array" + } + }, + "required": [ + "webhooks" + ], + "type": "object" + }, + "ListWebhooksExecutions": { + "description": "A list of Harness Registries webhooks executions", + "properties": { + "executions": { + "description": "A list of Registries webhooks executions", + "items": { + "$ref": "#/components/schemas/WebhookExecution" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + } + }, + "required": [ + "executions" + ], + "type": "object" + }, + "LocalReplicationRegistry": { + "properties": { + "registryIdentifier": { + "type": "string" + } + }, + "required": [ + "registryIdentifier" + ], + "type": "object" + }, + "MavenArtifactDetailConfig": { + "description": "Config for maven artifact details", + "properties": { + "artifactId": { + "type": "string" + }, + "groupId": { + "type": "string" + } + }, + "type": "object" + }, + "MigrationImage": { + "properties": { + "imageId": { + "type": "string" + }, + "imageTag": { + "type": "string" + }, + "progress": { + "type": "integer" + }, + "status": { + "type": "string" + } + }, + "type": "object" + }, + "MigrationLog": { + "properties": { + "message": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "type": "object" + }, + "NpmArtifactDetailConfig": { + "description": "Config for npm artifact details", + "properties": { + "metadata": { + "additionalProperties": true, + "type": "object" + } + }, + "type": "object" + }, + "NugetArtifactDetailConfig": { + "description": "Config for nuget artifact details", + "properties": { + "metadata": { + "additionalProperties": true, + "type": "object" + } + }, + "type": "object" + }, + "PackageType": { + "description": "refers to package", + "enum": [ + "DOCKER", + "MAVEN", + "GENERIC", + "HELM" + ], + "type": "string" + }, + "PythonArtifactDetailConfig": { + "description": "Config for python artifact details", + "properties": { + "metadata": { + "additionalProperties": true, + "type": "object" + } + }, + "type": "object" + }, + "Registry": { + "description": "Harness Artifact Registry", + "properties": { + "allowedPattern": { + "items": { + "type": "string" + }, + "type": "array" + }, + "blockedPattern": { + "items": { + "type": "string" + }, + "type": "array" + }, + "cleanupPolicy": { + "items": { + "$ref": "#/components/schemas/CleanupPolicy" + }, + "type": "array" + }, + "config": { + "$ref": "#/components/schemas/RegistryConfig" + }, + "createdAt": { + "type": "string" + }, + "description": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "modifiedAt": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "scanners": { + "items": { + "$ref": "#/components/schemas/Scanner" + }, + "type": "array" + }, + "url": { + "type": "string" + } + }, + "required": [ + "name", + "identifier", + "type", + "url", + "packageType" + ], + "type": "object" + }, + "RegistryArtifactMetadata": { + "description": "Artifact Metadata", + "properties": { + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "lastModified": { + "type": "string" + }, + "latestVersion": { + "type": "string" + }, + "name": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "registryIdentifier": { + "type": "string" + }, + "registryPath": { + "type": "string" + } + }, + "required": [ + "name", + "registryIdentifier", + "latestVersion", + "registryPath" + ], + "type": "object" + }, + "RegistryConfig": { + "description": "SubConfig specific for Virtual or Upstream Registry", + "discriminator": { + "mapping": { + "UPSTREAM": "#/components/schemas/UpstreamConfig", + "VIRTUAL": "#/components/schemas/VirtualConfig" + }, + "propertyName": "type" + }, + "oneOf": [ + { + "$ref": "#/components/schemas/VirtualConfig" + }, + { + "$ref": "#/components/schemas/UpstreamConfig" + } + ], + "properties": { + "type": { + "$ref": "#/components/schemas/RegistryType" + } + }, + "required": [ + "type" + ], + "type": "object" + }, + "RegistryMetadata": { + "description": "Harness Artifact Registry Metadata", + "properties": { + "artifactsCount": { + "format": "int64", + "type": "integer" + }, + "description": { + "type": "string" + }, + "downloadsCount": { + "format": "int64", + "type": "integer" + }, + "identifier": { + "type": "string" + }, + "labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "lastModified": { + "type": "string" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "path": { + "type": "string" + }, + "registrySize": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/RegistryType" + }, + "url": { + "type": "string" + } + }, + "required": [ + "type", + "packageType", + "identifier", + "url" + ], + "type": "object" + }, + "RegistryRequest": { + "properties": { + "allowedPattern": { + "items": { + "type": "string" + }, + "type": "array" + }, + "blockedPattern": { + "items": { + "type": "string" + }, + "type": "array" + }, + "cleanupPolicy": { + "items": { + "$ref": "#/components/schemas/CleanupPolicy" + }, + "type": "array" + }, + "config": { + "$ref": "#/components/schemas/RegistryConfig" + }, + "description": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "labels": { + "items": { + "type": "string" + }, + "type": "array" + }, + "packageType": { + "$ref": "#/components/schemas/PackageType" + }, + "parentRef": { + "type": "string" + }, + "scanners": { + "items": { + "$ref": "#/components/schemas/Scanner" + }, + "type": "array" + } + }, + "required": [ + "identifier", + "type", + "packageType" + ], + "type": "object" + }, + "RegistryType": { + "description": "refers to type of registry i.e virtual or upstream", + "discriminator": { + "propertyName": "type" + }, + "enum": [ + "VIRTUAL", + "UPSTREAM" + ], + "type": "string" + }, + "ReplicationRegistry": { + "oneOf": [ + { + "$ref": "#/components/schemas/LocalReplicationRegistry" + }, + { + "$ref": "#/components/schemas/JfrogReplicationRegistry" + } + ] + }, + "ReplicationRule": { + "properties": { + "allowedPatterns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "blockedPatterns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "createdAt": { + "type": "string" + }, + "destination": { + "$ref": "#/components/schemas/ReplicationRegistry" + }, + "destinationType": { + "enum": [ + "Local", + "Jfrog", + "GCP" + ], + "type": "string" + }, + "identifier": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "parentRef": { + "type": "string" + }, + "source": { + "$ref": "#/components/schemas/ReplicationRegistry" + }, + "sourceType": { + "enum": [ + "Local", + "Jfrog", + "GCP" + ], + "type": "string" + } + }, + "required": [ + "identifier", + "source", + "destination", + "sourceType", + "destinationType", + "allowedPatterns", + "blockedPatterns", + "parentRef", + "modifiedAt", + "createdAt" + ], + "type": "object" + }, + "ReplicationRuleRequest": { + "properties": { + "allowedPatterns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "blockedPatterns": { + "items": { + "type": "string" + }, + "type": "array" + }, + "destination": { + "$ref": "#/components/schemas/ReplicationRegistry" + }, + "destinationType": { + "enum": [ + "Local", + "Jfrog", + "GCP" + ], + "type": "string" + }, + "source": { + "$ref": "#/components/schemas/ReplicationRegistry" + }, + "sourceType": { + "enum": [ + "Local", + "Jfrog", + "GCP" + ], + "type": "string" + } + }, + "required": [ + "source", + "destination", + "sourceType", + "destinationType", + "allowedPatterns", + "blockedPatterns" + ], + "type": "object" + }, + "RpmArtifactDetailConfig": { + "description": "Config for RPM artifact details", + "properties": { + "metadata": { + "additionalProperties": true, + "type": "object" + } + }, + "type": "object" + }, + "SBOMDetails": { + "properties": { + "allowListViolations": { + "type": "integer" + }, + "artifactId": { + "type": "string" + }, + "artifactSourceId": { + "type": "string" + }, + "avgScore": { + "type": "string" + }, + "componentsCount": { + "type": "integer" + }, + "denyListViolations": { + "type": "integer" + }, + "maxScore": { + "type": "string" + }, + "orchestrationId": { + "type": "string" + }, + "orgId": { + "type": "string" + }, + "projectId": { + "type": "string" + } + }, + "type": "object" + }, + "SLSADetails": { + "properties": { + "provenanceId": { + "type": "string" + }, + "status": { + "type": "string" + } + }, + "type": "object" + }, + "STODetails": { + "properties": { + "critical": { + "type": "integer" + }, + "executionId": { + "type": "string" + }, + "high": { + "type": "integer" + }, + "ignored": { + "type": "integer" + }, + "info": { + "type": "integer" + }, + "lastScanned": { + "type": "string" + }, + "low": { + "type": "integer" + }, + "medium": { + "type": "integer" + }, + "pipelineId": { + "type": "string" + }, + "total": { + "type": "integer" + } + }, + "type": "object" + }, + "Scanner": { + "description": "Scanner for Harness Artifact Registries", + "properties": { + "name": { + "enum": [ + "AQUA_TRIVY", + "GRYPE" + ], + "type": "string" + } + }, + "type": "object" + }, + "SectionType": { + "description": "refers to client setup section type", + "discriminator": { + "propertyName": "type" + }, + "enum": [ + "INLINE", + "TABS" + ], + "type": "string" + }, + "RegistryStatus": { + "description": "Indicates if the request was successful or not", + "enum": [ + "SUCCESS", + "FAILURE", + "ERROR" + ], + "type": "string" + }, + "StorageDetails": { + "description": "storage details", + "properties": { + "totalSize": { + "type": "string" + } + }, + "required": [ + "totalSize" + ], + "type": "object" + }, + "TabSetupStep": { + "description": "Tab Setup step", + "properties": { + "header": { + "type": "string" + }, + "sections": { + "items": { + "$ref": "#/components/schemas/ClientSetupSection" + }, + "type": "array" + } + }, + "type": "object" + }, + "TabSetupStepConfig": { + "description": "Tab Setup step config", + "properties": { + "tabs": { + "items": { + "$ref": "#/components/schemas/TabSetupStep" + }, + "type": "array" + } + }, + "type": "object" + }, + "Trigger": { + "description": "refers to trigger", + "enum": [ + "ARTIFACT_CREATION", + "ARTIFACT_DELETION" + ], + "type": "string" + }, + "UpstreamConfig": { + "description": "Configuration for Harness Artifact UpstreamProxies", + "properties": { + "auth": { + "oneOf": [ + { + "$ref": "#/components/schemas/UserPassword" + }, + { + "$ref": "#/components/schemas/Anonymous" + } + ] + }, + "authType": { + "$ref": "#/components/schemas/AuthType" + }, + "source": { + "enum": [ + "Dockerhub", + "Custom" + ], + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "authType" + ], + "type": "object", + "x-discriminator-value": "UPSTREAM" + }, + "UserPassword": { + "properties": { + "secretIdentifier": { + "type": "string" + }, + "secretSpaceId": { + "type": "integer" + }, + "secretSpacePath": { + "type": "string" + }, + "userName": { + "type": "string" + } + }, + "required": [ + "userName", + "password" + ] + }, + "VirtualConfig": { + "description": "Configuration for Harness Virtual Artifact Registries", + "properties": { + "upstreamProxies": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Webhook": { + "description": "Harness Regstries Webhook", + "properties": { + "createdAt": { + "type": "string" + }, + "createdBy": { + "format": "int64", + "type": "integer" + }, + "description": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "extraHeaders": { + "items": { + "$ref": "#/components/schemas/ExtraHeader" + }, + "type": "array" + }, + "identifier": { + "type": "string" + }, + "insecure": { + "type": "boolean" + }, + "internal": { + "type": "boolean" + }, + "latestExecutionResult": { + "$ref": "#/components/schemas/WebhookExecResult" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "secretIdentifier": { + "type": "string" + }, + "secretSpaceId": { + "format": "int64", + "type": "integer" + }, + "secretSpacePath": { + "type": "string" + }, + "triggers": { + "items": { + "$ref": "#/components/schemas/Trigger" + }, + "type": "array" + }, + "url": { + "type": "string" + }, + "version": { + "format": "int64", + "type": "integer" + } + }, + "required": [ + "identifier", + "url", + "name", + "enabled", + "insecure" + ], + "type": "object" + }, + "WebhookExecRequest": { + "description": "Harness Regstries HTTP Webhook Request", + "properties": { + "body": { + "type": "string" + }, + "headers": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "WebhookExecResponse": { + "description": "Harness Regstries HTTP Webhook Response", + "properties": { + "body": { + "type": "string" + }, + "headers": { + "type": "string" + }, + "status": { + "type": "string" + }, + "statusCode": { + "type": "integer" + } + }, + "type": "object" + }, + "WebhookExecResult": { + "description": "refers to webhook execution", + "enum": [ + "SUCCESS", + "RETRIABLE_ERROR", + "FATAL_ERROR" + ], + "type": "string" + }, + "WebhookExecution": { + "description": "Harness Regstries Webhook Execution", + "properties": { + "created": { + "format": "int64", + "type": "integer" + }, + "duration": { + "format": "int64", + "type": "integer" + }, + "error": { + "type": "string" + }, + "id": { + "format": "int64", + "type": "integer" + }, + "request": { + "$ref": "#/components/schemas/WebhookExecRequest" + }, + "response": { + "$ref": "#/components/schemas/WebhookExecResponse" + }, + "result": { + "$ref": "#/components/schemas/WebhookExecResult" + }, + "retriggerOf": { + "format": "int64", + "type": "integer" + }, + "retriggerable": { + "type": "boolean" + }, + "triggerType": { + "$ref": "#/components/schemas/Trigger" + }, + "webhookId": { + "format": "int64", + "type": "integer" + } + }, + "type": "object" + }, + "WebhookRequest": { + "properties": { + "description": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "extraHeaders": { + "items": { + "$ref": "#/components/schemas/ExtraHeader" + }, + "type": "array" + }, + "identifier": { + "type": "string" + }, + "insecure": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "secretIdentifier": { + "type": "string" + }, + "secretSpaceId": { + "format": "int64", + "type": "integer" + }, + "secretSpacePath": { + "type": "string" + }, + "triggers": { + "items": { + "$ref": "#/components/schemas/Trigger" + }, + "type": "array" + }, + "url": { + "type": "string" + } + }, + "required": [ + "insecure", + "enabled", + "identifier", + "url", + "name" + ], + "type": "object" + }, + "ActivityMetadata": { + "type": "object", + "properties": { + "PlannedChangesCount": { + "type": "integer", + "description": "Deprecated: use resource_count_xxxx fields instead", + "default": 0, + "example": 883577156789898600, + "format": "int64" + }, + "activity_status": { + "type": "string", + "description": "The status of this activity", + "example": "success", + "enum": [ + "success", + "failure" + ] + }, + "activity_type": { + "type": "string", + "description": "The type of this activity", + "example": "apply", + "enum": [ + "apply", + "destroy", + "plan", + "drifted", + "import" + ] + }, + "cost_breakdown_uuid": { + "type": "string", + "description": "The ID of any associated cost breakdown data", + "example": "Saepe cum minima aut quas." + }, + "cost_currency": { + "type": "string", + "description": "The currency used in cost data for this change", + "example": "Est consequuntur temporibus." + }, + "cost_diff_total_monthly": { + "type": "string", + "description": "The currency used in cost data for this change", + "example": "Possimus et quae ipsum." + }, + "cost_diff_uuid": { + "type": "string", + "description": "The ID of any associated cost diff data", + "example": "In doloribus." + }, + "cost_past_total_monthly": { + "type": "string", + "description": "The currency used in cost data for this change", + "example": "Qui dolor ut modi sit." + }, + "cost_total_monthly": { + "type": "string", + "description": "The currency used in cost data for this change", + "example": "Explicabo laborum eum velit esse." + }, + "cost_total_monthly_percentage_change": { + "type": "string", + "description": "The currency used in cost data for this change", + "example": "Distinctio voluptatem illo ut dolorum commodi." + }, + "drift_counts": { + "$ref": "#/components/schemas/Counts" + }, + "enable_solutions_factory": { + "type": "boolean", + "description": "Indicates if Harness Solution Factory functionality is enabled", + "example": true + }, + "git_branch": { + "type": "string", + "description": "Git branch associated with this execution", + "example": "Doloribus eligendi et est ipsam dolor." + }, + "git_commit_message": { + "type": "string", + "description": "Git commit message associated with this execution", + "example": "Facere molestias et alias officia est." + }, + "git_commit_sha": { + "type": "string", + "description": "Git commit SHA associated with this execution", + "example": "Quae nulla iure repellat sed consequatur." + }, + "git_repo": { + "type": "string", + "description": "Git repo associated with this execution", + "example": "Similique nulla totam minima sit asperiores." + }, + "modules_uuid": { + "type": "string", + "description": "The ID of any associated modules data", + "example": "Adipisci provident natus." + }, + "output_counts": { + "$ref": "#/components/schemas/Counts" + }, + "pipeline": { + "type": "string", + "description": "The unique identifier of any associated pipeline", + "example": "Voluptatem magni officiis corporis." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for any associated pipeline execution", + "example": "Praesentium libero commodi quasi." + }, + "pipeline_execution_number": { + "type": "string", + "description": "The unique number for any associated pipeline execution", + "example": "Voluptas voluptate quam quaerat eius et doloribus." + }, + "pipeline_name": { + "type": "string", + "description": "The name of any associated pipeline", + "example": "Iusto et earum odit odit." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Sunt qui." + }, + "plan_uuid": { + "type": "string", + "description": "The ID of any associated plan data", + "example": "Est quis maiores perferendis dolorum." + }, + "providers_uuid": { + "type": "string", + "description": "The ID of any associated providers data", + "example": "Illo sit temporibus quis." + }, + "provisioner": { + "type": "string", + "description": "The provisioner in use", + "example": "Et saepe in corporis vel ex." + }, + "provisioner_version": { + "type": "string", + "description": "The current version of the provisioner in use", + "example": "Ipsam quibusdam error quisquam aliquid dolor." + }, + "resource_counts": { + "$ref": "#/components/schemas/Counts" + }, + "state_checksum": { + "type": "string", + "description": "The checksum of the last-seen state file", + "example": "Veritatis vel voluptatibus quia." + }, + "state_uuid": { + "type": "string", + "description": "The ID of any associated state data", + "example": "In quia amet consequatur rerum labore sed." + }, + "trigger": { + "type": "object", + "description": "Trigger info for any associated pipeline execution", + "example": { + "Corporis doloremque iure sed ipsam voluptas rem.": "Eius natus qui et vitae eveniet.", + "Qui totam praesentium.": "Iusto ut unde repudiandae.", + "Voluptates vel consequuntur ratione.": "At occaecati ea nesciunt qui." + }, + "additionalProperties": true + } + }, + "example": { + "PlannedChangesCount": 9204801855035949000, + "activity_status": "success", + "activity_type": "drifted", + "cost_breakdown_uuid": "Tenetur neque rerum reprehenderit aliquid doloremque occaecati.", + "cost_currency": "Aspernatur animi.", + "cost_diff_total_monthly": "Quod sit nobis unde ipsam.", + "cost_diff_uuid": "Quos fugiat sit at aut harum facere.", + "cost_past_total_monthly": "Officiis eum consequatur.", + "cost_total_monthly": "Asperiores illo vero debitis sapiente non.", + "cost_total_monthly_percentage_change": "Doloribus tenetur cupiditate natus sint.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": false, + "git_branch": "Temporibus deleniti minima ea sit aut velit.", + "git_commit_message": "A eos facilis.", + "git_commit_sha": "Quas dolor ut neque.", + "git_repo": "Doloremque debitis delectus cum.", + "modules_uuid": "Mollitia similique molestiae.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Deserunt veritatis omnis tempore consequuntur natus harum.", + "pipeline_execution_id": "Qui eum qui.", + "pipeline_execution_number": "Quae odio nihil quaerat officia.", + "pipeline_name": "Incidunt aut fugit delectus qui velit.", + "pipeline_stage_id": "Aliquid sunt.", + "plan_uuid": "Sunt voluptas consequatur dolores dolores.", + "providers_uuid": "Et molestias cum ipsa vel.", + "provisioner": "Consequatur velit reprehenderit odio.", + "provisioner_version": "Ipsam ut consectetur.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "A et.", + "state_uuid": "Sequi deleniti vel.", + "trigger": { + "Error vitae.": "Praesentium alias minima rem debitis." + } + } + }, + "ActivityResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmActivity" + }, + "example": [ + { + "account": "q2", + "created": 5866788083526893000, + "id": "Et odio nam.", + "metadata": { + "PlannedChangesCount": 4038944726028888000, + "activity_status": "failure", + "activity_type": "drifted", + "cost_breakdown_uuid": "Optio nobis explicabo sit possimus accusamus deserunt.", + "cost_currency": "Facilis enim quo ea temporibus esse.", + "cost_diff_total_monthly": "Voluptatem eligendi reiciendis doloribus.", + "cost_diff_uuid": "Voluptas autem iste.", + "cost_past_total_monthly": "Assumenda voluptates officiis.", + "cost_total_monthly": "Odit suscipit nesciunt voluptate.", + "cost_total_monthly_percentage_change": "Dolorem natus velit aspernatur in eos blanditiis.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": true, + "git_branch": "Quidem quasi eligendi at eveniet quaerat.", + "git_commit_message": "Voluptatibus debitis vitae dolor.", + "git_commit_sha": "Quidem omnis autem et et magni.", + "git_repo": "Ex molestiae iusto voluptate enim.", + "modules_uuid": "Inventore aut quaerat.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Ipsum expedita.", + "pipeline_execution_id": "Tenetur ipsum autem doloremque est itaque.", + "pipeline_execution_number": "Doloremque rerum perspiciatis et.", + "pipeline_name": "Consequatur quibusdam aut eligendi in voluptatem.", + "pipeline_stage_id": "Nesciunt nobis eos qui ea et.", + "plan_uuid": "Vel occaecati veritatis deserunt ipsum.", + "providers_uuid": "Unde est unde esse.", + "provisioner": "Quia provident cupiditate consequatur veniam dolores.", + "provisioner_version": "Non eaque et praesentium voluptas iure.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "Dolores neque.", + "state_uuid": "Expedita exercitationem.", + "trigger": { + "Animi nesciunt adipisci dolores.": "In enim soluta.", + "Numquam reiciendis ex quia fuga vel est.": "Vel eius aut omnis." + } + }, + "org": "tw", + "project": "ksp", + "workspace": "Ipsam sed et." + }, + { + "account": "q2", + "created": 5866788083526893000, + "id": "Et odio nam.", + "metadata": { + "PlannedChangesCount": 4038944726028888000, + "activity_status": "failure", + "activity_type": "drifted", + "cost_breakdown_uuid": "Optio nobis explicabo sit possimus accusamus deserunt.", + "cost_currency": "Facilis enim quo ea temporibus esse.", + "cost_diff_total_monthly": "Voluptatem eligendi reiciendis doloribus.", + "cost_diff_uuid": "Voluptas autem iste.", + "cost_past_total_monthly": "Assumenda voluptates officiis.", + "cost_total_monthly": "Odit suscipit nesciunt voluptate.", + "cost_total_monthly_percentage_change": "Dolorem natus velit aspernatur in eos blanditiis.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": true, + "git_branch": "Quidem quasi eligendi at eveniet quaerat.", + "git_commit_message": "Voluptatibus debitis vitae dolor.", + "git_commit_sha": "Quidem omnis autem et et magni.", + "git_repo": "Ex molestiae iusto voluptate enim.", + "modules_uuid": "Inventore aut quaerat.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Ipsum expedita.", + "pipeline_execution_id": "Tenetur ipsum autem doloremque est itaque.", + "pipeline_execution_number": "Doloremque rerum perspiciatis et.", + "pipeline_name": "Consequatur quibusdam aut eligendi in voluptatem.", + "pipeline_stage_id": "Nesciunt nobis eos qui ea et.", + "plan_uuid": "Vel occaecati veritatis deserunt ipsum.", + "providers_uuid": "Unde est unde esse.", + "provisioner": "Quia provident cupiditate consequatur veniam dolores.", + "provisioner_version": "Non eaque et praesentium voluptas iure.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "Dolores neque.", + "state_uuid": "Expedita exercitationem.", + "trigger": { + "Animi nesciunt adipisci dolores.": "In enim soluta.", + "Numquam reiciendis ex quia fuga vel est.": "Vel eius aut omnis." + } + }, + "org": "tw", + "project": "ksp", + "workspace": "Ipsam sed et." + }, + { + "account": "q2", + "created": 5866788083526893000, + "id": "Et odio nam.", + "metadata": { + "PlannedChangesCount": 4038944726028888000, + "activity_status": "failure", + "activity_type": "drifted", + "cost_breakdown_uuid": "Optio nobis explicabo sit possimus accusamus deserunt.", + "cost_currency": "Facilis enim quo ea temporibus esse.", + "cost_diff_total_monthly": "Voluptatem eligendi reiciendis doloribus.", + "cost_diff_uuid": "Voluptas autem iste.", + "cost_past_total_monthly": "Assumenda voluptates officiis.", + "cost_total_monthly": "Odit suscipit nesciunt voluptate.", + "cost_total_monthly_percentage_change": "Dolorem natus velit aspernatur in eos blanditiis.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": true, + "git_branch": "Quidem quasi eligendi at eveniet quaerat.", + "git_commit_message": "Voluptatibus debitis vitae dolor.", + "git_commit_sha": "Quidem omnis autem et et magni.", + "git_repo": "Ex molestiae iusto voluptate enim.", + "modules_uuid": "Inventore aut quaerat.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Ipsum expedita.", + "pipeline_execution_id": "Tenetur ipsum autem doloremque est itaque.", + "pipeline_execution_number": "Doloremque rerum perspiciatis et.", + "pipeline_name": "Consequatur quibusdam aut eligendi in voluptatem.", + "pipeline_stage_id": "Nesciunt nobis eos qui ea et.", + "plan_uuid": "Vel occaecati veritatis deserunt ipsum.", + "providers_uuid": "Unde est unde esse.", + "provisioner": "Quia provident cupiditate consequatur veniam dolores.", + "provisioner_version": "Non eaque et praesentium voluptas iure.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "Dolores neque.", + "state_uuid": "Expedita exercitationem.", + "trigger": { + "Animi nesciunt adipisci dolores.": "In enim soluta.", + "Numquam reiciendis ex quia fuga vel est.": "Vel eius aut omnis." + } + }, + "org": "tw", + "project": "ksp", + "workspace": "Ipsam sed et." + } + ] + }, + "AnsibleActivityMetadata": { + "type": "object", + "properties": { + "activity_status": { + "type": "string", + "description": "The status of this activity", + "example": "failure", + "enum": [ + "success", + "failure" + ] + }, + "git_branch": { + "type": "string", + "description": "Git branch associated with this execution", + "example": "Necessitatibus ipsam enim." + }, + "git_commit_message": { + "type": "string", + "description": "Git commit message associated with this execution", + "example": "Est nobis reprehenderit." + }, + "git_commit_sha": { + "type": "string", + "description": "Git commit SHA associated with this execution", + "example": "Aut eos possimus quia molestiae." + }, + "git_repo": { + "type": "string", + "description": "Git repo associated with this execution", + "example": "Eius delectus eius et est et temporibus." + }, + "pipeline": { + "type": "string", + "description": "The unique identifier of any associated pipeline", + "example": "Ut assumenda natus et dolor." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for any associated pipeline execution", + "example": "Ratione hic fugit consectetur vero maxime velit." + }, + "pipeline_execution_number": { + "type": "string", + "description": "The unique number for any associated pipeline execution", + "example": "At qui." + }, + "pipeline_name": { + "type": "string", + "description": "The name of any associated pipeline", + "example": "Eveniet aut." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Hic voluptatem pariatur ullam laborum culpa." + }, + "results_uuid": { + "type": "string", + "description": "The ID of any associated results", + "example": "Id expedita veritatis." + }, + "trigger": { + "type": "object", + "description": "Trigger info for any associated pipeline execution", + "example": { + "Eos earum et.": "Amet tenetur enim doloremque eius." + }, + "additionalProperties": true + } + }, + "example": { + "activity_status": "failure", + "git_branch": "Necessitatibus fugiat.", + "git_commit_message": "Eveniet natus omnis eveniet.", + "git_commit_sha": "Commodi quaerat quos non dolore velit.", + "git_repo": "Aut perferendis sunt.", + "pipeline": "Quia non voluptas.", + "pipeline_execution_id": "Rerum fugiat eos ab maxime.", + "pipeline_execution_number": "Consequatur magni voluptas qui expedita alias atque.", + "pipeline_name": "Corporis harum.", + "pipeline_stage_id": "Aliquam corporis est exercitationem.", + "results_uuid": "Rerum sit aut illo dolorem.", + "trigger": { + "Accusamus facere.": "Magni veniam fugit.", + "Est recusandae.": "Vero consectetur ducimus dolorem.", + "Eveniet ipsa.": "Voluptas magni quibusdam." + } + } + }, + "AnsibleActivityResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmAnsibleactivity" + }, + "example": [ + { + "account": "8a", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "squ", + "playbooks": [ + "init_webservers" + ], + "project": "d" + }, + { + "account": "8a", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "squ", + "playbooks": [ + "init_webservers" + ], + "project": "d" + }, + { + "account": "8a", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "squ", + "playbooks": [ + "init_webservers" + ], + "project": "d" + } + ] + }, + "AnsibleData": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ev", + "minLength": 1, + "maxLength": 128 + }, + "data_type": { + "type": "string", + "description": "Type of data stored", + "example": "task_results", + "enum": [ + "task_results" + ] + }, + "inventories": { + "type": "string", + "description": "Inventories associated with this event", + "example": [ + "webservers_europe" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "in", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Consectetur similique a libero ad iure ut." + }, + "pipeline_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Aut quisquam ut velit aut aut reiciendis." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Mollitia sit harum rem nobis modi." + }, + "playbooks": { + "type": "string", + "description": "Playbooks associated with this event", + "example": [ + "init_webservers" + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "stage_id": { + "type": "string", + "description": "The unique identifier for a stage", + "example": "Maiores eum optio tenetur quidem." + } + }, + "description": "AnsibleData is the representation for a single item of data associated with an inventory and playbook.", + "example": { + "account": "8v", + "data_type": "task_results", + "inventories": [ + "webservers_europe" + ], + "org": "4e", + "pipeline_execution_id": "Ipsum eum vel fugit ut.", + "pipeline_id": "Quo sunt.", + "pipeline_stage_id": "Voluptatem fuga aut eum veritatis.", + "playbooks": [ + "init_webservers" + ], + "project": "a", + "stage_id": "Quo optio quidem id." + }, + "required": [ + "account", + "org", + "project", + "data_type", + "inventories", + "playbooks" + ] + }, + "AnsibleDataInfo": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + } + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "required": [ + "id" + ] + }, + "AnsibleDataResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmAnsibledata" + }, + "example": [ + { + "account": "bx", + "created": 9161657249044464000, + "data_type": "task_results", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "org": "g1", + "pipeline_execution_id": "Deserunt dolorem dignissimos sunt ea.", + "pipeline_id": "Quo ut.", + "pipeline_stage_id": "Non saepe qui quia occaecati consequatur esse.", + "playbooks": [ + "init_webservers" + ], + "project": "d", + "stage_id": "Adipisci quia natus laborum quia expedita." + }, + { + "account": "bx", + "created": 9161657249044464000, + "data_type": "task_results", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "org": "g1", + "pipeline_execution_id": "Deserunt dolorem dignissimos sunt ea.", + "pipeline_id": "Quo ut.", + "pipeline_stage_id": "Non saepe qui quia occaecati consequatur esse.", + "playbooks": [ + "init_webservers" + ], + "project": "d", + "stage_id": "Adipisci quia natus laborum quia expedita." + } + ] + }, + "AnsibleEvent": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "sxi", + "minLength": 1, + "maxLength": 128 + }, + "event_type": { + "type": "string", + "description": "The type of event that occurred", + "example": "activity-execution", + "enum": [ + "activity-execution", + "activity-dry-run-execution" + ] + }, + "inventories": { + "type": "string", + "description": "Inventories associated with this event", + "example": [ + "webservers_europe" + ] + }, + "metadata": { + "$ref": "#/components/schemas/AnsibleActivityMetadata" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "j", + "minLength": 1, + "maxLength": 128 + }, + "playbooks": { + "type": "string", + "description": "Playbooks associated with this event", + "example": [ + "init_webservers" + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "i", + "minLength": 1, + "maxLength": 128 + } + }, + "description": "AnsibleEvent defines an individual ansible event", + "example": { + "account": "kn", + "event_type": "activity-execution", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "d2", + "playbooks": [ + "init_webservers" + ], + "project": "86x" + }, + "required": [ + "account", + "org", + "project", + "inventories", + "playbooks", + "event_type" + ] + }, + "AnsibleVariable": { + "type": "object", + "properties": { + "file_name": { + "type": "string", + "description": "Filename is where to store the value of the secret.", + "example": "Voluptatem nihil velit eos a doloribus expedita." + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "e", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Hic possimus consectetur." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "string", + "enum": [ + "string", + "secret" + ] + } + }, + "description": "AnsibleVariable is the representation for a single variable associated with ansible.", + "example": { + "file_name": "Et quia.", + "key": "60n", + "value": "Distinctio itaque enim excepturi eveniet in.", + "value_type": "string" + }, + "required": [ + "key", + "value", + "value_type" + ] + }, + "Approval": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "0i", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "lt", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Iure ipsam reprehenderit eum asperiores aut." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Nemo aut alias deserunt illum delectus." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "Status of the approval resource", + "default": "pending", + "example": "rejected", + "enum": [ + "pending", + "approved", + "rejected" + ] + }, + "workspace_id": { + "type": "string", + "description": "The unique identifier for the workspace_id", + "example": "Nisi deleniti qui." + } + }, + "example": { + "account": "22x", + "org": "z", + "pipeline_execution_id": "Sit cumque eligendi aut.", + "pipeline_stage_id": "Suscipit mollitia dolores est voluptatem repellendus.", + "project": "lci", + "status": "pending", + "workspace_id": "Est facilis et incidunt." + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace_id" + ] + }, + "ApprovalIdentifier": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "3", + "minLength": 1, + "maxLength": 128 + }, + "id": { + "type": "string", + "example": "6949f7d6-b246-4542-a52d-1f7398a4cf56", + "format": "uuid" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ibf", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "4w", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "b9", + "id": "b055509f-3aa8-4f4a-887f-6db465c807d2", + "org": "a", + "project": "29" + }, + "required": [ + "account", + "org", + "project", + "id", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace_id" + ] + }, + "ApprovalResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmApproval" + }, + "example": [ + { + "account": "4", + "actioned_by": "John Doe", + "created": 3621902536542514000, + "id": "Sed accusamus voluptatem nisi et accusantium.", + "org": "l4", + "pipeline_execution_id": "Nobis aspernatur rerum vero aliquam.", + "pipeline_stage_id": "Et eius culpa nobis explicabo.", + "project": "ec", + "status": "Doloremque necessitatibus ab reprehenderit.", + "updated": 3066046670084265000, + "workspace_id": "Animi qui laudantium." + }, + { + "account": "4", + "actioned_by": "John Doe", + "created": 3621902536542514000, + "id": "Sed accusamus voluptatem nisi et accusantium.", + "org": "l4", + "pipeline_execution_id": "Nobis aspernatur rerum vero aliquam.", + "pipeline_stage_id": "Et eius culpa nobis explicabo.", + "project": "ec", + "status": "Doloremque necessitatibus ab reprehenderit.", + "updated": 3066046670084265000, + "workspace_id": "Animi qui laudantium." + }, + { + "account": "4", + "actioned_by": "John Doe", + "created": 3621902536542514000, + "id": "Sed accusamus voluptatem nisi et accusantium.", + "org": "l4", + "pipeline_execution_id": "Nobis aspernatur rerum vero aliquam.", + "pipeline_stage_id": "Et eius culpa nobis explicabo.", + "project": "ec", + "status": "Doloremque necessitatibus ab reprehenderit.", + "updated": 3066046670084265000, + "workspace_id": "Animi qui laudantium." + }, + { + "account": "4", + "actioned_by": "John Doe", + "created": 3621902536542514000, + "id": "Sed accusamus voluptatem nisi et accusantium.", + "org": "l4", + "pipeline_execution_id": "Nobis aspernatur rerum vero aliquam.", + "pipeline_stage_id": "Et eius culpa nobis explicabo.", + "project": "ec", + "status": "Doloremque necessitatibus ab reprehenderit.", + "updated": 3066046670084265000, + "workspace_id": "Animi qui laudantium." + } + ] + }, + "ApprovalUpdate": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "uq8", + "minLength": 1, + "maxLength": 128 + }, + "actioned_by": { + "type": "string", + "description": "User that approved/rejected the step", + "example": "John Doe" + }, + "id": { + "type": "string", + "example": "7be95491-28bf-4568-971c-1049bf49a947", + "format": "uuid" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "8", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "igq", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "Status update to be performed upon the Approval step", + "default": "pending", + "example": "pending", + "enum": [ + "approved", + "rejected", + "pending" + ] + } + }, + "description": "ApprovalUpdate defines the fields of an approval step that can be updated", + "example": { + "account": "n10", + "actioned_by": "John Doe", + "id": "544f7655-9ac6-443b-baec-d9f69fc86fae", + "org": "c", + "project": "1ll", + "status": "pending" + }, + "required": [ + "account", + "org", + "project", + "id", + "status", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace_id" + ] + }, + "ApprovalsCreateApprovalResponseBodyCreation": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "Praesentium est ipsam ut ut quo." + } + }, + "description": "Create-ApprovalResponseBody result type (creation view)", + "example": { + "id": "Doloribus sed similique accusamus est." + }, + "required": [ + "id" + ] + }, + "ApprovalsShowApprovalResponseBodyStatusInfo": { + "type": "object", + "properties": { + "actioned_by": { + "type": "string", + "description": "User that approved/rejected the step", + "example": "John Doe" + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 8947576430567284000, + "format": "int64" + }, + "status": { + "type": "string", + "description": "Status of the approval resource", + "default": "pending", + "example": "Alias corporis perferendis excepturi ipsum et est." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 1143200130938323600, + "format": "int64" + } + }, + "description": "Show-ApprovalResponseBody result type (statusInfo view)", + "example": { + "actioned_by": "John Doe", + "created": 6315152091326771000, + "status": "Autem hic reprehenderit omnis asperiores exercitationem.", + "updated": 2308825579614223000 + }, + "required": [ + "status", + "created", + "updated" + ] + }, + "AssociatedTemplate": { + "type": "object", + "properties": { + "template_id": { + "type": "string", + "description": "Template ID of the template associated to the Workspace.", + "example": "ik", + "minLength": 1, + "maxLength": 128 + }, + "version": { + "type": "string", + "description": "Version of the template associated to the Workspace.", + "example": "f28", + "minLength": 1, + "maxLength": 64 + } + }, + "description": "AssociatedTemplate defines the template details with template_id and version.", + "example": { + "template_id": "h", + "version": "j4" + } + }, + "Audit": { + "type": "object", + "properties": { + "git_audit_data": { + "$ref": "#/components/schemas/GitAuditData" + } + }, + "example": { + "git_audit_data": { + "hash": "v1", + "name": "Magni minima doloribus harum aspernatur earum sint.", + "repo_url": "j", + "type": "branch, tag" + } + } + }, + "IaCMAuditEvent": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "xfe", + "minLength": 1, + "maxLength": 128 + }, + "audit": { + "$ref": "#/components/schemas/Audit" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "dk", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "Pipeline execution ID", + "example": "9ir", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_stage_id": { + "type": "string", + "description": "Pipeline execution stage ID", + "example": "q12", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "4", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "jo", + "audit": { + "git_audit_data": { + "hash": "v1", + "name": "Magni minima doloribus harum aspernatur earum sint.", + "repo_url": "j", + "type": "branch, tag" + } + }, + "org": "0f", + "pipeline_execution_id": "fq", + "pipeline_stage_id": "z", + "project": "d" + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id" + ] + }, + "ChangedCostsCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmChangedCosts" + }, + "example": [ + { + "currency": "Ea quisquam sint.", + "diff": { + "Repellendus iure similique impedit itaque neque quidem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Ut harum facilis consequatur sunt.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Dolor suscipit aliquam.", + "past_total_monthly_cost": "Quasi sit suscipit excepturi.", + "percentage_change_total_monthly_cost": 6605931329534609000, + "stage_execution_id": "Perspiciatis quasi officia blanditiis et accusamus modi.", + "stage_id": "Iste nihil.", + "total_monthly_cost": "At enim nisi.", + "workspace_id": "Laborum expedita est sed." + }, + { + "currency": "Ea quisquam sint.", + "diff": { + "Repellendus iure similique impedit itaque neque quidem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Ut harum facilis consequatur sunt.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Dolor suscipit aliquam.", + "past_total_monthly_cost": "Quasi sit suscipit excepturi.", + "percentage_change_total_monthly_cost": 6605931329534609000, + "stage_execution_id": "Perspiciatis quasi officia blanditiis et accusamus modi.", + "stage_id": "Iste nihil.", + "total_monthly_cost": "At enim nisi.", + "workspace_id": "Laborum expedita est sed." + }, + { + "currency": "Ea quisquam sint.", + "diff": { + "Repellendus iure similique impedit itaque neque quidem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Ut harum facilis consequatur sunt.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Dolor suscipit aliquam.", + "past_total_monthly_cost": "Quasi sit suscipit excepturi.", + "percentage_change_total_monthly_cost": 6605931329534609000, + "stage_execution_id": "Perspiciatis quasi officia blanditiis et accusamus modi.", + "stage_id": "Iste nihil.", + "total_monthly_cost": "At enim nisi.", + "workspace_id": "Laborum expedita est sed." + } + ] + }, + "ChangedResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmChangedResource" + }, + "example": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ] + }, + "ChangedResourcesCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmChangedResources" + }, + "example": [ + { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Minus qui voluptatibus voluptate ea eos.", + "pipeline_stage": "Sed reprehenderit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Non quibusdam quisquam et et illo reiciendis.", + "workspace_id": "Ut velit facere." + }, + { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Minus qui voluptatibus voluptate ea eos.", + "pipeline_stage": "Sed reprehenderit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Non quibusdam quisquam et et illo reiciendis.", + "workspace_id": "Ut velit facere." + }, + { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Minus qui voluptatibus voluptate ea eos.", + "pipeline_stage": "Sed reprehenderit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Non quibusdam quisquam et et illo reiciendis.", + "workspace_id": "Ut velit facere." + } + ] + }, + "CheckPushDataResponse": { + "type": "object", + "properties": { + "disabled": { + "type": "boolean", + "description": "Indicates if the data is allowed to be pushed", + "example": true + } + }, + "example": { + "disabled": false + }, + "required": [ + "disabled" + ] + }, + "CloneWorkspaceRequest": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "jy", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "identifier": "kuz", + "name": "resource name" + }, + "required": [ + "identifier", + "name" + ] + }, + "CostResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmCostsresources" + }, + "example": [ + { + "account": "5x", + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "org": "7", + "pipeline": "Voluptatum deleniti odit sit rerum quia.", + "pipeline_execution_id": "Quasi qui.", + "pipeline_stage_id": "Doloremque ea.", + "project": "2", + "workspace": "Quia quo." + }, + { + "account": "5x", + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "org": "7", + "pipeline": "Voluptatum deleniti odit sit rerum quia.", + "pipeline_execution_id": "Quasi qui.", + "pipeline_stage_id": "Doloremque ea.", + "project": "2", + "workspace": "Quia quo." + } + ] + }, + "CostResourcesCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmCostResource" + }, + "example": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ] + }, + "Counts": { + "type": "object", + "properties": { + "added": { + "type": "integer", + "description": "Number added", + "example": 2688289833321203000, + "format": "int64" + }, + "changed": { + "type": "integer", + "description": "Number changed", + "example": 7553650636224005000, + "format": "int64" + }, + "deleted": { + "type": "integer", + "description": "Number deleted", + "example": 2766234786762381000, + "format": "int64" + }, + "imported": { + "type": "integer", + "description": "Number imported", + "example": 5225905421584774000, + "format": "int64" + }, + "removed": { + "type": "integer", + "description": "Number removed", + "example": 1402619917494424800, + "format": "int64" + }, + "unchanged": { + "type": "integer", + "description": "Number unchanged", + "example": 7526330887861097000, + "format": "int64" + } + }, + "example": { + "added": 3779926956673386000, + "changed": 9210681615715014000, + "deleted": 7681807574253816000, + "imported": 6434611792101014000, + "removed": 1279854905286153500, + "unchanged": 249707766583198370 + }, + "required": [ + "added", + "changed", + "deleted", + "unchanged" + ] + }, + "CreateAnsibleDataResponse": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + } + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "required": [ + "id" + ] + }, + "CreateApprovalRequest": { + "type": "object", + "properties": { + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Excepturi quae rerum aperiam voluptatem ut voluptatum." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Aliquam error facere tempore et maiores provident." + }, + "status": { + "type": "string", + "description": "Status of the approval resource", + "default": "pending", + "example": "pending", + "enum": [ + "pending", + "approved", + "rejected" + ] + }, + "workspace_id": { + "type": "string", + "description": "The unique identifier for the workspace_id", + "example": "Esse hic blanditiis laborum beatae." + } + }, + "example": { + "pipeline_execution_id": "Repellendus mollitia.", + "pipeline_stage_id": "Fugit voluptatem voluptatum.", + "status": "rejected", + "workspace_id": "Enim error aut provident amet minus ipsa." + }, + "required": [ + "pipeline_execution_id", + "pipeline_stage_id", + "workspace_id" + ] + }, + "CreateDataResponse": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "policy_evaluation": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceDataPolicyEvaluation" + }, + "description": "Individual policy evaluation details", + "example": [ + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + } + ] + }, + "policy_evaluation_message": { + "type": "string", + "description": "Pre-rendered message included when policy evaluation did not pass", + "example": "- instance type 'xlarge' is not permitted" + }, + "policy_evaluation_status": { + "type": "string", + "description": "The overall status of policy evaluation (if it occurred) indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + } + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "policy_evaluation": [ + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + } + ], + "policy_evaluation_message": "- instance type 'xlarge' is not permitted", + "policy_evaluation_status": "error" + }, + "required": [ + "id" + ] + }, + "CreateDynamicInventoryRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/DynamicInventory" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + } + }, + "example": { + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory" + }, + "required": [ + "identifier", + "name", + "data", + "type" + ] + }, + "CreateDynamicInventoryResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "yl", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "data": { + "type": "string", + "description": "The data representing the inventory", + "example": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "z", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "49a", + "minLength": 1, + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Type indicates what kind of inventory this is", + "example": "manual", + "enum": [ + "manual", + "dynamic" + ] + }, + "updated": { + "type": "integer", + "description": "Timestamp when the resource was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "51l", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "4q", + "project": "r", + "type": "manual", + "updated": 1627686800 + }, + "required": [ + "created", + "updated", + "account", + "org", + "project", + "identifier", + "name", + "type", + "data" + ] + }, + "CreateExecutionRequest": { + "type": "object", + "properties": { + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Consectetur aliquid." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Non voluptatem eveniet eum." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Qui illum dolores eius sunt." + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Suscipit ut labore est hic voluptates repellat." + } + }, + "example": { + "pipeline": "Non est magni aut.", + "pipeline_execution_id": "Laudantium ut dicta earum enim accusamus.", + "pipeline_stage_id": "Eveniet modi et aliquid quasi maiores.", + "workspace": "Laboriosam est et illum iure." + }, + "required": [ + "pipeline_execution_id", + "pipeline_stage_id", + "workspace", + "pipeline" + ] + }, + "CreateExecutionResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "4", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 2908830838237220000, + "format": "int64" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "y6", + "minLength": 1, + "maxLength": 128 + }, + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Non reprehenderit necessitatibus." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Quo consequatur enim omnis enim at." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Corrupti mollitia quibusdam fugit." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "41j", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "The overall status of the execution", + "example": "failure", + "enum": [ + "none", + "success", + "failure" + ] + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Sint quia." + } + }, + "example": { + "account": "ses", + "created": 9217401466556491000, + "org": "w", + "pipeline": "Sunt consectetur aspernatur cumque ratione.", + "pipeline_execution_id": "Aperiam dolor tempore.", + "pipeline_stage_id": "Vitae id.", + "project": "e", + "status": "success", + "workspace": "Blanditiis ea dolore consequatur fuga similique." + }, + "required": [ + "status", + "created", + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace", + "pipeline" + ] + }, + "CreateManualInventoryRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ManualInventory" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + } + }, + "example": { + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory" + }, + "required": [ + "identifier", + "name", + "data", + "type" + ] + }, + "CreateManualInventoryResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "v", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "data": { + "type": "string", + "description": "The data representing the inventory", + "example": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "3", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7", + "minLength": 1, + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Type indicates what kind of inventory this is", + "example": "manual", + "enum": [ + "manual", + "dynamic" + ] + }, + "updated": { + "type": "integer", + "description": "Timestamp when the resource was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "r9r", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "hl1", + "project": "xbt", + "type": "manual", + "updated": 1627686800 + }, + "required": [ + "created", + "updated", + "account", + "org", + "project", + "identifier", + "name", + "type", + "data" + ] + }, + "CreateModuleDataRequest": { + "type": "object", + "properties": { + "download_url": { + "type": "string", + "description": "download url of the module", + "example": "Eius et consequatur sequi." + }, + "error": { + "type": "object", + "description": "error from the tag operation", + "example": { + "Eligendi iusto odio minus qui reprehenderit.": "Non iste adipisci assumenda ipsam natus." + }, + "additionalProperties": { + "type": "string", + "example": "Velit tenetur enim sed eos nihil aut." + } + }, + "examples_paths": { + "type": "array", + "items": { + "type": "string", + "example": "Vel aliquam." + }, + "description": "path of the examples relative to the module", + "example": [ + "Dicta earum vel voluptas a laudantium asperiores.", + "Suscipit qui perferendis error." + ] + }, + "git_tag": { + "type": "string", + "description": "git tag of the module", + "example": "Corporis est dolor dolor dolorum." + }, + "metadata": { + "type": "string", + "description": "metadata to be parsed", + "example": "Omnis ad quia provident molestiae nulla deleniti." + }, + "repo_url": { + "type": "string", + "description": "url pointing to the repo", + "example": "Qui iure." + }, + "submodule_name": { + "type": "string", + "description": "name of the submodule been processed", + "example": "Maxime et dolore aut ut est." + }, + "submodule_paths": { + "type": "array", + "items": { + "type": "string", + "example": "Animi vitae possimus provident." + }, + "description": "path of the submodules relative to the module", + "example": [ + "Nobis illo commodi dignissimos tenetur.", + "Beatae est consequatur.", + "Qui velit quisquam autem officiis repellendus.", + "Libero velit eos." + ] + } + }, + "example": { + "download_url": "Hic pariatur necessitatibus consequatur blanditiis quibusdam quo.", + "error": { + "Unde voluptates et illo in rerum dignissimos.": "Excepturi corporis aut exercitationem." + }, + "examples_paths": [ + "Saepe suscipit sint vero.", + "Sit laborum neque cumque et harum." + ], + "git_tag": "Totam quo vitae odio pariatur.", + "metadata": "Quia dolorem totam quidem quisquam quaerat nihil.", + "repo_url": "Rerum nisi perferendis voluptatem.", + "submodule_name": "Necessitatibus quae.", + "submodule_paths": [ + "At et eligendi qui occaecati.", + "Autem qui maiores saepe.", + "Doloremque officia ea quia.", + "Sit impedit quibusdam ipsum blanditiis." + ] + }, + "required": [ + "metadata", + "download_url", + "git_tag" + ] + }, + "CreateModuleExecutionRequest": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Velit quia quas est voluptas accusamus consequatur." + }, + "pipelineExecutionId": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Esse quia ut repellendus pariatur dolor tempora." + }, + "pipelineStageId": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Unde maxime eos." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "s6s", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "8q", + "org": "pq", + "pipeline": "Et cumque repellendus.", + "pipelineExecutionId": "Reprehenderit qui voluptates temporibus et nam.", + "pipelineStageId": "Voluptatem quae error provident sequi consequuntur.", + "project": "m" + }, + "required": [ + "account", + "org", + "project", + "pipelineExecutionId", + "pipelineStageId", + "pipeline" + ] + }, + "CreateModuleExecutionResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ahm", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 9088004830032330000, + "format": "int64" + }, + "metadata": { + "$ref": "#/components/schemas/ModuleExecutionMetadata" + }, + "moduleId": { + "type": "string", + "description": "The unique identifier for the associated module", + "example": "Est maxime optio aut." + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "lz", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ik", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "The overall status of the execution", + "example": "Ut et ut error." + } + }, + "example": { + "account": "nr", + "created": 5854804849019863000, + "metadata": { + "pipeline": "Sequi alias praesentium.", + "pipeline_execution_id": "Ad est vero.", + "pipeline_execution_number": "Necessitatibus qui eligendi aut sit cum praesentium.", + "pipeline_name": "Fugiat modi tenetur et deserunt qui ipsam.", + "pipeline_stage_id": "Aut earum et molestiae.", + "trigger": { + "Nisi ad impedit officiis voluptas id.": "Recusandae et facere enim.", + "Quis ullam incidunt amet explicabo aut animi.": "Voluptatem est id aut hic doloremque illum.", + "Voluptate itaque iusto et eum.": "Laboriosam omnis esse delectus." + } + }, + "moduleId": "Quam et maiores sunt sed voluptas temporibus.", + "org": "19", + "project": "yxt", + "status": "Commodi nihil." + }, + "required": [ + "status", + "created", + "account", + "org", + "project", + "pipelineExecutionId", + "pipelineStageId", + "moduleId", + "pipeline" + ] + }, + "CreateModuleRequest": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "description of the module", + "example": "Cupiditate sunt omnis necessitatibus assumenda eaque quidem." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Impedit itaque et in eius qui." + }, + "name": { + "type": "string", + "description": "module name", + "example": "4", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "org that owns the module", + "example": "og", + "minLength": 1, + "maxLength": 1024 + }, + "project": { + "type": "string", + "description": "project that owns the module", + "example": "w", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Sit accusamus est vel sapiente sint." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Reprehenderit itaque rerum velit." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "iv", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Sit quo quasi excepturi." + } + }, + "example": { + "description": "Deserunt ut ex et.", + "git_tag_style": "Assumenda rem.", + "name": "xim", + "org": "ccr", + "project": "o5h", + "repository": "Ipsa omnis beatae alias rem eveniet laudantium.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ullam et tempora quod quia voluptas.", + "repository_path": "", + "system": "b", + "tags": "Consectetur adipisci in nesciunt praesentium aperiam quis." + }, + "required": [ + "name", + "system" + ] + }, + "CreateModuleTagsRequest": { + "type": "object", + "properties": { + "error": { + "type": "object", + "description": "error from the tag operation", + "example": { + "Cumque et.": "Provident sapiente quo illum." + }, + "additionalProperties": { + "type": "string", + "example": "Cupiditate eos ducimus quia qui sunt." + } + }, + "tags": { + "type": "array", + "items": { + "type": "string", + "example": "Velit mollitia." + }, + "description": "tags defining the module", + "example": [ + "Quisquam quam sequi.", + "Neque omnis natus dolorem." + ] + } + }, + "example": { + "error": { + "Quia tempore quaerat a voluptas provident.": "Consequatur accusamus suscipit iure eum.", + "Ut ut sint id ullam vel.": "Voluptatum ducimus aliquid." + }, + "tags": [ + "Provident corrupti quis consequatur earum ea vel.", + "Omnis perspiciatis dolorem quaerat quis dolor.", + "Veritatis perspiciatis earum." + ] + } + }, + "CreatePlaybookRequest": { + "type": "object", + "properties": { + "identifier": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Dolorem quia id." + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test playbook", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the playbook should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the playbook should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this playbook.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the playbook resides.", + "default": "", + "example": "playbooks/" + } + }, + "example": { + "identifier": "Et alias aspernatur nam.", + "name": "test playbook", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/" + }, + "required": [ + "identifier", + "name", + "repository_path" + ] + }, + "CreatePlaybookResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "m", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Dolor ullam reiciendis quos sit." + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test playbook", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "0tf", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "xi", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the playbook should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the playbook should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this playbook.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the playbook resides.", + "default": "", + "example": "playbooks/" + }, + "updated": { + "type": "integer", + "description": "Timestamp when the resource was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "3", + "created": 1627590400, + "identifier": "Doloribus dolores mollitia quas.", + "name": "test playbook", + "org": "s", + "project": "do", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + }, + "required": [ + "created", + "updated", + "account", + "org", + "project", + "identifier", + "name", + "repository_path" + ] + }, + "CreateProviderVersionRequestBody": { + "type": "object", + "properties": { + "protocol": { + "type": "array", + "items": { + "type": "string", + "example": "Veritatis sit nam harum esse alias placeat." + }, + "description": "Supported Terraform protocol versions", + "example": [ + "4.0" + ] + }, + "version": { + "type": "string", + "description": "Provider version", + "example": "1.0.0" + } + }, + "example": { + "protocol": [ + "4.0" + ], + "version": "1.0.0" + }, + "required": [ + "version", + "protocol" + ] + }, + "CreateRemoteExecutionRequest": { + "type": "object", + "properties": { + "custom_arguments": { + "type": "object", + "description": "The arguments supplied to the plan.", + "example": { + "Delectus autem et aspernatur a quidem.": [ + "Ipsa repudiandae dicta id.", + "Harum quia velit voluptatum rerum." + ] + }, + "additionalProperties": { + "type": "array", + "items": { + "type": "string", + "example": "Consectetur eius facere quam." + }, + "example": [ + "Voluptas enim officiis ducimus non eius.", + "Aspernatur at a provident.", + "Veniam doloribus rerum pariatur ut soluta eum." + ] + } + } + }, + "example": { + "custom_arguments": { + "Autem expedita rerum.": [ + "Iure amet.", + "Laboriosam soluta." + ], + "Corrupti autem.": [ + "Ab cum eum consequuntur.", + "Fugit non fugit esse excepturi ipsa iusto.", + "Sit sed et." + ] + } + }, + "required": [ + "id", + "pipeline_execution_id", + "pipeline_execution_url", + "created", + "updated", + "executed", + "sha256_checksum" + ] + }, + "CreateRemoteExecutionResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "1", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 1958637499747222000, + "format": "int64" + }, + "custom_arguments": { + "type": "object", + "description": "The arguments supplied to the plan.", + "example": { + "Et nihil temporibus illo neque molestiae debitis.": [ + "Maxime cum recusandae.", + "Dolorum omnis." + ], + "Molestiae aut rerum.": [ + "Eum sunt in sit maiores.", + "Fuga id veritatis sunt.", + "Sed iusto facere voluptatem nesciunt voluptatem non." + ], + "Voluptates voluptate vero dolores ut numquam.": [ + "Ratione voluptas.", + "Iusto aut voluptate aut.", + "Alias voluptas.", + "Vel tempora repudiandae." + ] + }, + "additionalProperties": { + "type": "array", + "items": { + "type": "string", + "example": "Labore omnis nobis atque et quas." + }, + "example": [ + "Ut minus quis sit eum.", + "Similique dolorem temporibus omnis eaque expedita." + ] + } + }, + "executed": { + "type": "boolean", + "description": "The boolean value indicating if the remote execution has been executed.", + "example": false + }, + "id": { + "type": "string", + "description": "The ID of the remote execution.", + "example": "3554fe65-c8c8-4689-b2d5-f2d125101b4d", + "format": "uuid" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "rcc", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The pipeline execution ID of the pipeline executing the remote execution", + "example": "Id enim ipsa et." + }, + "pipeline_execution_url": { + "type": "string", + "description": "The pipeline execution URL of the pipeline executing the remote execution", + "example": "Rerum est aut." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "q", + "minLength": 1, + "maxLength": 128 + }, + "sha256_checksum": { + "type": "string", + "description": "The checksum of the patch file of changes that the remote execution will run against.", + "example": "Fugiat deserunt deserunt." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 6308034369819630000, + "format": "int64" + }, + "workspace": { + "type": "string", + "description": "The workspace associated with the remote execution.", + "example": "Est voluptates sint harum amet veritatis." + } + }, + "example": { + "account": "ez", + "created": 7778846089967287000, + "custom_arguments": { + "Deserunt rerum facere reprehenderit.": [ + "Ea aut.", + "Ut qui.", + "Voluptatem minima cumque." + ], + "Provident quam.": [ + "Occaecati mollitia facilis fugiat.", + "Sint magnam aut velit reiciendis dolorem qui." + ], + "Vel suscipit quia qui.": [ + "Ipsum occaecati possimus minima unde ea.", + "Qui accusantium ipsam veniam laudantium tempora aliquam.", + "Assumenda qui labore." + ] + }, + "executed": false, + "id": "4905b9c9-21c7-40c4-9cf8-8f4f35581918", + "org": "x7", + "pipeline_execution_id": "Maxime pariatur neque.", + "pipeline_execution_url": "A harum nostrum optio sit.", + "project": "ive", + "sha256_checksum": "Repellendus dolorem.", + "updated": 1701985649408318500, + "workspace": "Ipsa optio consequatur ullam." + }, + "required": [ + "account", + "org", + "project", + "id", + "workspace", + "pipeline_execution_id", + "pipeline_execution_url", + "created", + "updated", + "executed", + "sha256_checksum" + ] + }, + "CreateTestingPipelineRequest": { + "type": "object", + "properties": { + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "dpb", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "org": "4", + "project": "o4" + }, + "required": [ + "org", + "project" + ] + }, + "CreateVariableSetRequestAccScope": { + "type": "object", + "properties": { + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Eius ea sit debitis minima.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Officia ratione iste esse error maiores.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Qui repellendus eos.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 8278769756089190000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "v09", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Accusantium animi quibusdam aut ducimus omnis maxime.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Iusto eveniet.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 270782473269204160, + "identifier": "mu", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Voluptatem sint placeat natus quos.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "identifier", + "name" + ] + }, + "CreateVariableSetRequestOrgScope": { + "type": "object", + "properties": { + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Ea molestiae nisi autem.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 1317763001862410000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "v", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Dolores et rerum dolore ullam cupiditate.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Praesentium illo aut.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Porro ipsam sed.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Qui consequuntur.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Voluptatum et qui sed.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 3745651836396410400, + "identifier": "2xo", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "In est non id.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Nemo iusto.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Sunt itaque.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "identifier", + "name" + ] + }, + "CreateVariableSetRequestProjScope": { + "type": "object", + "properties": { + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Nihil voluptatem autem in.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Quas aliquid incidunt.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Sapiente accusantium nisi minus molestiae et.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 5847426295769975000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Atque incidunt quae illo aliquam ex.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Tempora tempore.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Sit doloribus quidem.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 3211172738076087300, + "identifier": "k", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Eius aut harum iure.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Qui iste repellendus accusantium nihil modi.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Velit et.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "identifier", + "name" + ] + }, + "CreateWorkspaceRequest": { + "type": "object", + "properties": { + "associated_template": { + "$ref": "#/components/schemas/AssociatedTemplate" + }, + "budget": { + "type": "number", + "description": "define the budget for a specific workspace", + "example": 0.3498847, + "format": "float" + }, + "cost_breakdown_json": { + "type": "string", + "description": "cost_breakdown_json is the identifier to the breakdown cost file from the current execution that was applied successfully", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_diff_json": { + "type": "string", + "description": "cost_diff_json is the identifier to the diff cost file between the previous and current successful executions", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_estimation_enabled": { + "type": "boolean", + "description": "define if cost estimation operations will be performed in this workspace", + "default": false, + "example": true + }, + "default_pipelines": { + "type": "object", + "description": "List of default pipelines associated with this workspace and any per-workspace overrides.", + "example": { + "Rerum delectus aut.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/DefaultPipelineOverride" + } + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "list of environment variables configured on the workspace.", + "example": { + "Non aperiam similique ducimus molestias blanditiis.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Voluptatem error.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 5089403458150234000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "cb", + "minLength": 1, + "maxLength": 128 + }, + "modules_json": { + "type": "string", + "description": "modules_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "Provider Connector is the reference to the connector for the infrastructure provider.", + "example": "At illum est." + }, + "provider_connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceProviderConnector" + }, + "description": "define an array of provider connectors that belong to Workspace", + "example": [ + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + } + ] + }, + "providers_json": { + "type": "string", + "description": "providers_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "provisioner": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "terraform", + "enum": [ + "terraform", + "opentofu" + ] + }, + "provisioner_version": { + "type": "string", + "description": "Provisioner Version defines the tool version to use.", + "default": "latest", + "example": "Sit voluptatibus iusto nihil." + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Tempora velit aliquid." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Modi et." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_submodules": { + "type": "string", + "description": "repository_submodules is the instruction about whether to clone submodules in the pipeline step", + "default": "false", + "example": "recursive", + "enum": [ + "false", + "true", + "recursive" + ] + }, + "sparse_checkout": { + "type": "string", + "description": "List of patterens that will be used for sparse checkout option of git clone", + "example": "Voluptas aperiam officiis vel nam libero." + }, + "state_checksum": { + "type": "string", + "description": "state_checksum is the sha-256 checksum of terraform state file", + "example": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f" + }, + "tags": { + "type": "string", + "description": "Tags associated with the workspace.", + "example": { + "foo": "bar" + } + }, + "terraform_plan_json": { + "type": "string", + "description": "terraform_plan_json is the identifier to the current state file only in JSON format.", + "example": "f9e21473daaa2674d862b67a1339f4570e86de17" + }, + "terraform_state": { + "type": "string", + "description": "terraform_state is the identifier to the plan file used to create the latest state.", + "example": "fc1200c7a7aa52109d762a9f005b149abef01479" + }, + "terraform_state_json": { + "type": "string", + "description": "terraform_state_json is the identifier to the plan file used to create the latest state only in JSON format.", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceTerraformVariableFiles" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "list of terraform variables configured on the workspace.", + "example": { + "Non et qui reiciendis iure.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "variable_sets": { + "type": "array", + "items": { + "type": "string", + "example": "Fugit sunt." + }, + "description": "Optional Variable Sets as references", + "example": [ + "Dolor molestiae voluptas.", + "Maiores et modi suscipit nulla consectetur enim.", + "Est sunt sequi dolor dolores.", + "Ut explicabo eius qui autem rerum natus." + ] + } + }, + "example": { + "associated_template": { + "template_id": "3gf", + "version": "8yt" + }, + "budget": 0.16378193, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "default_pipelines": { + "Exercitationem dolores blanditiis.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + }, + "Laborum vel.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Autem ad voluptatem quae et.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Ea possimus minima commodi.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "id": 3966247024085899300, + "identifier": "c", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "provider_connector": "Voluptate distinctio aut non cupiditate sit.", + "provider_connectors": [ + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "terraform", + "provisioner_version": "Sapiente sunt.", + "repository": "Laboriosam nihil recusandae.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Architecto in.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Ipsa dolorum nulla non.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Iure consequuntur voluptatem.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Nulla dolorum quia eligendi.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "variable_sets": [ + "Cupiditate inventore est.", + "Omnis ut recusandae ad expedita." + ] + }, + "required": [ + "identifier", + "name", + "provider_connector", + "provisioner", + "terraform_variables", + "environment_variables" + ] + }, + "CreateWorkspaceTemplateRequest": { + "type": "object", + "properties": { + "template_id": { + "type": "string", + "description": "Template identifier", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "version": { + "type": "string", + "description": "Template version", + "example": "rq", + "minLength": 1, + "maxLength": 64 + }, + "workspace_id": { + "type": "string", + "description": "Workspace identifier", + "example": "r", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "template_id": "zlu", + "version": "r", + "workspace_id": "51" + }, + "required": [ + "workspace_id", + "template_id", + "version" + ] + }, + "CreateWorkspaceTemplateResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account identifier.", + "example": "m2", + "minLength": 1, + "maxLength": 128 + }, + "created_at": { + "type": "integer", + "description": "Timestamp when the workspace-template association was created.", + "example": 1627590400, + "format": "int64" + }, + "org": { + "type": "string", + "description": "Organization identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project identifier.", + "example": "du", + "minLength": 1, + "maxLength": 128 + }, + "template_id": { + "type": "string", + "description": "Template identifier.", + "example": "rz5", + "minLength": 1, + "maxLength": 128 + }, + "updated_at": { + "type": "integer", + "description": "Timestamp when the workspace-template association was last updated.", + "example": 1627686800, + "format": "int64" + }, + "version": { + "type": "string", + "description": "Template version associated with the workspace.", + "example": "u", + "minLength": 1, + "maxLength": 32 + }, + "workspace_id": { + "type": "string", + "description": "Workspace identifier.", + "example": "6t", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "ba7", + "created_at": 1627590400, + "org": "6lq", + "project": "aud", + "template_id": "ch", + "updated_at": 1627686800, + "version": "b7", + "workspace_id": "m" + }, + "required": [ + "workspace_id", + "template_id", + "version", + "created_at", + "updated_at", + "account", + "project", + "org" + ] + }, + "CreateWorkspaceVariableRequest": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "0n", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "kind": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "env", + "enum": [ + "env", + "tf" + ] + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Omnis voluptatem dolorem." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "string", + "enum": [ + "string", + "secret" + ] + } + }, + "example": { + "key": "w", + "kind": "tf", + "value": "Qui libero voluptatibus explicabo qui perspiciatis.", + "value_type": "secret" + }, + "required": [ + "key", + "value", + "value_type", + "kind" + ] + }, + "CreateWorkspaceVariableResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "69b", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 5564416184590704000, + "format": "int64" + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "ln", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "kind": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "env", + "enum": [ + "env", + "tf" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "2", + "minLength": 1, + "maxLength": 128 + }, + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7j2", + "minLength": 1, + "maxLength": 128 + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 6717585233958959000, + "format": "int64" + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Quas nobis dolorum et." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "string", + "enum": [ + "string", + "secret" + ] + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Dolore dignissimos praesentium facilis voluptatem quo." + } + }, + "example": { + "account": "w74", + "created": 8179483835664226000, + "key": "n", + "kind": "tf", + "org": "rk", + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + "project": "o", + "updated": 5615735274314064000, + "value": "Et molestiae vel qui autem rerum.", + "value_type": "string", + "workspace": "Eum eos fugiat saepe est consectetur." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "key", + "value", + "value_type", + "kind", + "created", + "updated" + ] + }, + "DefaultPipelineCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmDefaultpipeline" + }, + "example": [ + { + "account": "Neque a.", + "operation": "plan", + "org": "Vero aut nesciunt in sunt iste aut.", + "pipeline": "testpipeline", + "project": "Distinctio consequatur provident nostrum soluta.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + }, + { + "account": "Neque a.", + "operation": "plan", + "org": "Vero aut nesciunt in sunt iste aut.", + "pipeline": "testpipeline", + "project": "Distinctio consequatur provident nostrum soluta.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + }, + { + "account": "Neque a.", + "operation": "plan", + "org": "Vero aut nesciunt in sunt iste aut.", + "pipeline": "testpipeline", + "project": "Distinctio consequatur provident nostrum soluta.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + }, + { + "account": "Neque a.", + "operation": "plan", + "org": "Vero aut nesciunt in sunt iste aut.", + "pipeline": "testpipeline", + "project": "Distinctio consequatur provident nostrum soluta.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + } + ] + }, + "DefaultPipelineIdentifier": { + "type": "object", + "properties": { + "account": { + "type": "string", + "example": "Nemo similique." + }, + "operation": { + "type": "string", + "description": "The default pipeline is associated with this operation", + "example": "plan", + "enum": [ + "plan", + "apply", + "destroy", + "drift" + ] + }, + "org": { + "type": "string", + "example": "Aut tenetur id ratione fugit." + }, + "project": { + "type": "string", + "example": "Sint ea saepe rerum itaque." + }, + "provisioner": { + "type": "string", + "description": "The default pipeline is associated with this provisioner", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "workspace": { + "type": "string", + "description": "The default pipeline is associated with this workspace if specified", + "default": "", + "example": "plan" + } + }, + "example": { + "account": "Dolorem doloremque aut occaecati quas.", + "operation": "plan", + "org": "Sed repellat consequatur non.", + "project": "Quo asperiores sapiente non.", + "provisioner": "opentofu", + "workspace": "plan" + }, + "required": [ + "account", + "org", + "project", + "provisioner", + "operation" + ] + }, + "DefaultPipelineOverride": { + "type": "object", + "properties": { + "project_pipeline": { + "type": "string", + "description": "Default pipeline assigned as the project-level", + "example": "Voluptatem harum sit est." + }, + "workspace_pipeline": { + "type": "string", + "description": "Default pipeline assigned as the workspace-level", + "example": "Qui accusamus dolorem tempora." + } + }, + "description": "Per-workspace override to the assigned default pipelines.", + "example": { + "project_pipeline": "Qui corrupti exercitationem.", + "workspace_pipeline": "Odit ea nam." + } + }, + "DeleteDefaultPipelineRequest": { + "type": "object", + "properties": { + "operation": { + "type": "string", + "description": "The default pipeline is associated with this operation", + "example": "plan", + "enum": [ + "plan", + "apply", + "destroy", + "drift" + ] + }, + "provisioner": { + "type": "string", + "description": "The default pipeline is associated with this provisioner", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "workspace": { + "type": "string", + "description": "The default pipeline is associated with this workspace if specified", + "default": "", + "example": "plan" + } + }, + "example": { + "operation": "plan", + "provisioner": "opentofu", + "workspace": "plan" + }, + "required": [ + "provisioner", + "operation" + ] + }, + "DependenciesMetadata": { + "type": "object", + "properties": { + "dependency_name": { + "type": "string", + "description": "Dependency name", + "example": "Dolore omnis excepturi quidem quod voluptatem provident." + }, + "dependency_source": { + "type": "string", + "description": "Dependency source", + "example": "Assumenda ratione eius laborum eum repudiandae." + }, + "dependency_version": { + "type": "string", + "description": "Dependency version", + "example": "Eos et quidem ea consectetur iusto." + } + }, + "example": { + "dependency_name": "Ullam et quam quia.", + "dependency_source": "Necessitatibus quia porro non sint quisquam.", + "dependency_version": "Hic laudantium." + } + }, + "DestroyWorkspaceVariableResponse": { + "type": "object", + "properties": { + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + } + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + }, + "DynamicInventory": { + "type": "object", + "properties": { + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the dynamic inventory should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the dynamic inventory should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this dynamic inventory.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the dynamic inventory file resides.", + "default": "", + "example": "inventories/my_inventory.yaml" + } + }, + "example": { + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "inventories/my_inventory.yaml" + }, + "required": [ + "repository_path" + ] + }, + "DynamicInventoryResource": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "f", + "minLength": 1, + "maxLength": 128 + }, + "data": { + "$ref": "#/components/schemas/DynamicInventory" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "70", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "wdp", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "3p6", + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "52", + "project": "th" + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "data", + "type" + ] + }, + "EnableTestingRequest": { + "type": "object", + "properties": { + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "934", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_id": { + "type": "array", + "items": { + "type": "string", + "example": "Qui ipsa voluptatem." + }, + "description": "pipelines to create the webhooks to trigger the executions for testing", + "example": [ + "Nulla maxime quidem ex.", + "Ea suscipit molestiae recusandae molestias non.", + "Rerum reiciendis nemo quo.", + "Sunt laudantium totam totam nam sunt." + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "provider connector", + "example": "Voluptas nihil." + }, + "provisioner_type": { + "type": "string", + "description": "provisioner type", + "example": "Ipsum ut eligendi est aspernatur." + }, + "provisioner_version": { + "type": "string", + "description": "provisioner version", + "example": "Minima qui illo tempore repellat." + }, + "release_pipeline": { + "type": "string", + "description": "pipeline to create the webhooks for releases", + "example": "Odio temporibus." + } + }, + "example": { + "org": "3", + "pipeline_id": [ + "Ut nisi laborum.", + "Delectus esse odio.", + "Autem ab voluptas qui ut exercitationem alias." + ], + "project": "nz", + "provider_connector": "Fugiat ut eum.", + "provisioner_type": "Omnis ut dolores eveniet non impedit.", + "provisioner_version": "Ut rerum consequuntur incidunt sunt molestiae.", + "release_pipeline": "Non itaque non dolor aut." + }, + "required": [ + "org", + "project", + "provider_connector", + "provisioner_type", + "provisioner_version" + ] + }, + "IaCMError": { + "type": "object", + "properties": { + "fault": { + "type": "boolean", + "description": "Is the error a server-side fault?", + "example": true + }, + "id": { + "type": "string", + "description": "ID is a unique identifier for this particular occurrence of the problem.", + "example": "123abc" + }, + "message": { + "type": "string", + "description": "Message is a human-readable explanation specific to this occurrence of the problem.", + "example": "parameter 'p' must be an integer" + }, + "name": { + "type": "string", + "description": "Name is the name of this class of errors.", + "example": "bad_request" + }, + "temporary": { + "type": "boolean", + "description": "Is the error temporary?", + "example": false + }, + "timeout": { + "type": "boolean", + "description": "Is the error a timeout?", + "example": true + } + }, + "example": { + "fault": true, + "id": "123abc", + "message": "parameter 'p' must be an integer", + "name": "bad_request", + "temporary": false, + "timeout": false + }, + "required": [ + "name", + "id", + "message", + "temporary", + "timeout", + "fault" + ] + }, + "EvaluateDataResponse": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "policy_evaluation": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceDataPolicyEvaluation" + }, + "description": "Individual policy evaluation details", + "example": [ + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + } + ] + }, + "policy_evaluation_message": { + "type": "string", + "description": "Pre-rendered message included when policy evaluation did not pass", + "example": "- instance type 'xlarge' is not permitted" + }, + "policy_evaluation_status": { + "type": "string", + "description": "The overall status of policy evaluation (if it occurred) indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + } + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "policy_evaluation": [ + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + }, + { + "message": "Qui accusamus.", + "policy_id": "Animi facilis accusantium aspernatur sit.", + "policy_name": "Alias nihil.", + "policy_set_id": "Aliquam placeat.", + "policy_set_name": "Saepe ducimus et distinctio.", + "policy_status": "Sunt ea." + } + ], + "policy_evaluation_message": "- instance type 'xlarge' is not permitted", + "policy_evaluation_status": "error" + }, + "required": [ + "id" + ] + }, + "IaCMEvaluatedPolicy": { + "type": "object", + "properties": { + "deny_messages": { + "type": "array", + "items": { + "type": "string", + "example": "Aspernatur labore earum nulla iusto facilis et." + }, + "description": "The values of any `deny` rego rules as returned by the rego engine", + "example": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ] + }, + "output": { + "description": "The output returned by the rego engine when this policy was evaluated", + "example": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}" + }, + "policy": { + "$ref": "#/components/schemas/IaCMPolicy" + }, + "rego_error": { + "type": "string", + "description": "Any errors returned by the rego engine when this policy was evaluated", + "example": "policy.rego:25: rego_parse_error: non-terminated string m == \"test" + }, + "status": { + "type": "string", + "description": "The overall status for this individual policy indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + } + }, + "example": { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + "required": [ + "status", + "policy", + "output", + "deny_messages", + "rego_error" + ] + }, + "IaCMEvaluation": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "The Harness account in which the evaluation was performed", + "example": "XRQAjvT37acOiXx9PRaQMF" + }, + "action": { + "type": "string", + "description": "The action that triggered evaluation", + "example": "onrun" + }, + "created": { + "type": "integer", + "description": "The time at which the evaluation was performed in Unix time milliseconds", + "example": 1636370209475, + "format": "int64" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IaCMEvaluationDetail" + }, + "description": "The detailed results of te evaluation", + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ] + }, + "entity": { + "type": "string", + "description": "An arbitrary user-supplied string that globally identifies the entity under evaluation", + "example": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e" + }, + "entity_metadata": { + "type": "string", + "description": "Additional arbitrary user-supplied metadata about the entity under evaluation", + "example": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e" + }, + "id": { + "type": "integer", + "description": "The ID of this evaluation", + "example": 123, + "format": "int64" + }, + "input": { + "description": "The input provided at evaluation time", + "example": "" + }, + "org_id": { + "type": "string", + "description": "The Harness organisation in which the evaluation was performed", + "example": "test-org" + }, + "project_id": { + "type": "string", + "description": "The Harness project in which the evaluation was performed", + "example": "test-project" + }, + "status": { + "type": "string", + "description": "The overall status of the evaluation indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + }, + "type": { + "type": "string", + "description": "The types of the entity under evaluation", + "example": "pipeline,service" + } + }, + "description": "The result of a single evaluation", + "example": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + "required": [ + "id", + "status", + "entity", + "entity_metadata", + "type", + "action", + "account_id", + "org_id", + "project_id", + "created", + "input", + "details" + ] + }, + "IaCMEvaluationDetail": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Harness account ID associated with this policy set", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "action": { + "type": "string", + "description": "Action that triggers the policy set", + "example": "onrun", + "minLength": 1 + }, + "created": { + "type": "integer", + "description": "Time the policy set was created", + "example": 1636669297674, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of the policy set", + "example": "Captures critical production policies" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IaCMEvaluatedPolicy" + }, + "example": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ] + }, + "enabled": { + "type": "boolean", + "description": "Only enabled policy sets are evaluated when evaluating by type/action", + "example": true + }, + "identifier": { + "type": "string", + "description": "Identifier of the policy set", + "example": "policyset-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy set", + "example": "Production Policies", + "minLength": 1 + }, + "org_id": { + "type": "string", + "description": "Harness organization ID associated with this policy set", + "default": "", + "example": "test-org" + }, + "project_id": { + "type": "string", + "description": "Harness project ID associated with this policy set", + "default": "", + "example": "test-project" + }, + "status": { + "type": "string", + "description": "The overall status for this policy set indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + }, + "type": { + "type": "string", + "description": "Type of input suitable for the policy set", + "example": "pipeline", + "minLength": 1 + }, + "updated": { + "type": "integer", + "description": "Time the policy set was last updated", + "example": 1636669297674, + "format": "int64" + } + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + "required": [ + "status", + "details", + "identifier", + "name", + "action", + "type", + "enabled", + "created", + "updated", + "account_id", + "org_id", + "project_id", + "entity_selector" + ] + }, + "Execution": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "3hs", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ds", + "minLength": 1, + "maxLength": 128 + }, + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Minima quo itaque a aut sint." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Ipsum ut et corrupti voluptas cum ex." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Perspiciatis debitis cumque." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "o", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Aut voluptates animi tempora." + } + }, + "description": "Execution defines an individual execution of a workspace workflow", + "example": { + "account": "g", + "org": "9dr", + "pipeline": "Aut eaque occaecati facere officia nobis.", + "pipeline_execution_id": "Omnis at exercitationem et assumenda perferendis qui.", + "pipeline_stage_id": "Nulla aut dicta est fugit explicabo ullam.", + "project": "6", + "workspace": "Molestiae consequatur quae doloribus quia recusandae eos." + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace", + "pipeline" + ] + }, + "ExecutionResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmExecution" + }, + "example": [ + { + "account": "e2h", + "created": 5346915877496289000, + "org": "q", + "pipeline": "Et earum non qui.", + "pipeline_execution_id": "Aliquam odio illo dolor.", + "pipeline_stage_id": "Quos quia qui praesentium qui reiciendis.", + "project": "4i", + "status": "none", + "workspace": "Modi mollitia quia magni qui ipsam quos." + }, + { + "account": "e2h", + "created": 5346915877496289000, + "org": "q", + "pipeline": "Et earum non qui.", + "pipeline_execution_id": "Aliquam odio illo dolor.", + "pipeline_stage_id": "Quos quia qui praesentium qui reiciendis.", + "project": "4i", + "status": "none", + "workspace": "Modi mollitia quia magni qui ipsam quos." + }, + { + "account": "e2h", + "created": 5346915877496289000, + "org": "q", + "pipeline": "Et earum non qui.", + "pipeline_execution_id": "Aliquam odio illo dolor.", + "pipeline_stage_id": "Quos quia qui praesentium qui reiciendis.", + "project": "4i", + "status": "none", + "workspace": "Modi mollitia quia magni qui ipsam quos." + } + ] + }, + "GPGKey": { + "type": "object", + "properties": { + "ascii_armor": { + "type": "string", + "description": "ASCII-armored GPG public key", + "example": "Quibusdam nisi voluptatem." + }, + "key_id": { + "type": "string", + "description": "GPG key ID", + "example": "Aut eos quis." + } + }, + "description": "GPG key information for provider verification", + "example": { + "ascii_armor": "Totam id quidem ducimus.", + "key_id": "Rerum suscipit eum assumenda necessitatibus id." + }, + "required": [ + "key_id", + "ascii_armor" + ] + }, + "GetProviderDownloadResponse": { + "type": "object", + "properties": { + "arch": { + "type": "string", + "description": "Architecture", + "example": "Ducimus quos non." + }, + "download_url": { + "type": "string", + "description": "URL to download the provider binary", + "example": "Quasi minima voluptatem nostrum ipsa sit unde." + }, + "filename": { + "type": "string", + "description": "Provider binary filename", + "example": "Perspiciatis numquam." + }, + "os": { + "type": "string", + "description": "Operating system", + "example": "Et nihil iure commodi." + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "example": "Quidem odio vel." + }, + "description": "Supported Terraform protocol versions", + "example": [ + "Quis sed eum consequatur aspernatur.", + "Recusandae quia." + ] + }, + "shasum": { + "type": "string", + "description": "SHA256 checksum of the provider binary", + "example": "In repellendus culpa laboriosam aut." + }, + "shasums_signature_url": { + "type": "string", + "description": "URL to download the checksums signature", + "example": "Quae esse deleniti impedit quis qui." + }, + "shasums_url": { + "type": "string", + "description": "URL to download the checksums file", + "example": "Commodi animi voluptatem." + }, + "signing_keys": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistrySigningKeys" + } + }, + "description": "Provider download information", + "example": { + "arch": "Aperiam incidunt similique corporis et.", + "download_url": "Omnis ut ullam quis.", + "filename": "Quod qui ut exercitationem dolores.", + "os": "Et iste error omnis saepe labore sit.", + "protocols": [ + "Corrupti quisquam quia.", + "Autem expedita facilis rem error.", + "Nulla nam.", + "Quae occaecati." + ], + "shasum": "Qui quod.", + "shasums_signature_url": "Voluptates corporis.", + "shasums_url": "Ut eius non.", + "signing_keys": { + "gpg_public_keys": [ + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + } + ] + } + }, + "required": [ + "protocols", + "os", + "arch", + "filename", + "download_url", + "shasums_url", + "shasums_signature_url", + "shasum", + "signing_keys" + ] + }, + "IaCMGetProviderResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account that owns the provider", + "example": "Delectus qui corrupti necessitatibus." + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 7389192269795961000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of the provider", + "example": "Cum est quo impedit laboriosam voluptatem voluptatum." + }, + "id": { + "type": "string", + "description": "Provider ID", + "example": "Distinctio ab eveniet." + }, + "type": { + "type": "string", + "description": "Provider type", + "example": "Alias dignissimos dignissimos qui." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 7569548482072034000, + "format": "int64" + }, + "versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistryProviderVersionMetadata" + }, + "description": "Provider versions", + "example": [ + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + } + ] + } + }, + "description": "Provider", + "example": { + "account": "Praesentium voluptates et natus necessitatibus animi.", + "created": 566415113492911300, + "description": "Dolorem quia similique eligendi occaecati laudantium sunt.", + "id": "Incidunt nisi.", + "type": "Repudiandae vel quidem repudiandae eligendi animi itaque.", + "updated": 8351000572594388000, + "versions": [ + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + } + ] + }, + "required": [ + "id", + "account", + "type", + "description", + "versions", + "created", + "updated" + ] + }, + "GetWorkspaceTemplateReconciliationDiffResponse": { + "type": "object", + "properties": { + "currentWorkspaceYaml": { + "type": "string", + "description": "Current workspace YAML", + "example": "Tenetur placeat." + }, + "reconcilableWorkspaceYaml": { + "type": "string", + "description": "Workspace YAML after applying changes from the template", + "example": "Eius hic quia dolor in nemo dolores." + }, + "requiresReconciliation": { + "type": "boolean", + "description": "Indicates if the workspace needs template-based reconciliation", + "example": true + } + }, + "example": { + "currentWorkspaceYaml": "Laboriosam mollitia eaque.", + "reconcilableWorkspaceYaml": "Vel excepturi enim enim reiciendis.", + "requiresReconciliation": true + }, + "required": [ + "currentWorkspaceYaml", + "reconcilableWorkspaceYaml", + "requiresReconciliation" + ] + }, + "GitAuditData": { + "type": "object", + "properties": { + "hash": { + "type": "string", + "description": "Hash of the git branch used", + "example": "7", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "The name of the branch or tag used", + "example": "A aut veritatis culpa sed saepe iste." + }, + "repo_url": { + "type": "string", + "description": "Url of the repo used", + "example": "y", + "minLength": 1 + }, + "type": { + "type": "string", + "description": "Type of fetch used to get the data", + "example": "branch, tag", + "enum": [ + "branch", + "tag" + ] + } + }, + "example": { + "hash": "hi", + "name": "Cumque aliquid earum est qui.", + "repo_url": "b", + "type": "branch, tag" + }, + "required": [ + "hash", + "repo_url" + ] + }, + "HarnessIacmActivity": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "l", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 3472820585843878400, + "format": "int64" + }, + "id": { + "type": "string", + "description": "The unique identifier for this activity", + "example": "Vel nihil." + }, + "metadata": { + "$ref": "#/components/schemas/ActivityMetadata" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "lv", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "97", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Vel cupiditate maiores commodi autem." + } + }, + "description": "Activity defines an individual significant event in the history of aworkspace", + "example": { + "account": "bi", + "created": 5686266842602946000, + "id": "Animi repellat.", + "metadata": { + "PlannedChangesCount": 4038944726028888000, + "activity_status": "failure", + "activity_type": "drifted", + "cost_breakdown_uuid": "Optio nobis explicabo sit possimus accusamus deserunt.", + "cost_currency": "Facilis enim quo ea temporibus esse.", + "cost_diff_total_monthly": "Voluptatem eligendi reiciendis doloribus.", + "cost_diff_uuid": "Voluptas autem iste.", + "cost_past_total_monthly": "Assumenda voluptates officiis.", + "cost_total_monthly": "Odit suscipit nesciunt voluptate.", + "cost_total_monthly_percentage_change": "Dolorem natus velit aspernatur in eos blanditiis.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": true, + "git_branch": "Quidem quasi eligendi at eveniet quaerat.", + "git_commit_message": "Voluptatibus debitis vitae dolor.", + "git_commit_sha": "Quidem omnis autem et et magni.", + "git_repo": "Ex molestiae iusto voluptate enim.", + "modules_uuid": "Inventore aut quaerat.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Ipsum expedita.", + "pipeline_execution_id": "Tenetur ipsum autem doloremque est itaque.", + "pipeline_execution_number": "Doloremque rerum perspiciatis et.", + "pipeline_name": "Consequatur quibusdam aut eligendi in voluptatem.", + "pipeline_stage_id": "Nesciunt nobis eos qui ea et.", + "plan_uuid": "Vel occaecati veritatis deserunt ipsum.", + "providers_uuid": "Unde est unde esse.", + "provisioner": "Quia provident cupiditate consequatur veniam dolores.", + "provisioner_version": "Non eaque et praesentium voluptas iure.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "Dolores neque.", + "state_uuid": "Expedita exercitationem.", + "trigger": { + "Animi nesciunt adipisci dolores.": "In enim soluta.", + "Numquam reiciendis ex quia fuga vel est.": "Vel eius aut omnis." + } + }, + "org": "1e", + "project": "6a", + "workspace": "Assumenda ut velit esse consequatur libero vitae." + }, + "required": [ + "account", + "org", + "project", + "id", + "workspace", + "metadata", + "created" + ] + }, + "HarnessIacmAnsibleactivity": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "8", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "event_type": { + "type": "string", + "description": "The type of event that occurred", + "example": "activity-execution", + "enum": [ + "activity-execution", + "activity-dry-run-execution" + ] + }, + "id": { + "type": "string", + "description": "The unique identifier for this activity", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "inventories": { + "type": "string", + "description": "Inventories associated with this event", + "example": [ + "webservers_europe" + ] + }, + "metadata": { + "$ref": "#/components/schemas/AnsibleActivityMetadata" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "4", + "minLength": 1, + "maxLength": 128 + }, + "playbooks": { + "type": "string", + "description": "Playbooks associated with this event", + "example": [ + "init_webservers" + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "m9", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "wv", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "success", + "git_branch": "Consectetur sapiente aut nemo amet.", + "git_commit_message": "Tempore sunt est esse.", + "git_commit_sha": "Occaecati quis voluptate officiis ad sed nesciunt.", + "git_repo": "Officia molestiae animi nisi.", + "pipeline": "Corrupti harum amet.", + "pipeline_execution_id": "Doloremque voluptas sit nihil.", + "pipeline_execution_number": "Nobis ut deserunt enim.", + "pipeline_name": "Non velit aut odio.", + "pipeline_stage_id": "Facere eos vitae nam et.", + "results_uuid": "Quidem quia consequatur totam aliquid.", + "trigger": { + "Minima sit consequatur atque eum tempora.": "Dolores expedita velit et nihil sequi provident." + } + }, + "org": "g", + "playbooks": [ + "init_webservers" + ], + "project": "ygg" + }, + "required": [ + "account", + "org", + "project", + "inventories", + "playbooks", + "id", + "metadata", + "created", + "event_type" + ] + }, + "HarnessIacmAnsibledata": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "4dd", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 7146073892311229000, + "format": "int64" + }, + "data_type": { + "type": "string", + "description": "Type of data stored", + "example": "task_results", + "enum": [ + "task_results" + ] + }, + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "inventories": { + "type": "string", + "description": "Inventories associated with this event", + "example": [ + "webservers_europe" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "qbo", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Vel perferendis culpa iure non." + }, + "pipeline_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Alias ab autem." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Similique et et nobis possimus sit." + }, + "playbooks": { + "type": "string", + "description": "Playbooks associated with this event", + "example": [ + "init_webservers" + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "stage_id": { + "type": "string", + "description": "The unique identifier for a stage", + "example": "Voluptate asperiores laborum." + } + }, + "description": "AnsibleDataResource is the representation for a single item of data associated with an ansible run.", + "example": { + "account": "gp", + "created": 4517539994653209600, + "data_type": "task_results", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "org": "q", + "pipeline_execution_id": "Voluptatum voluptatem quos ut quaerat harum quia.", + "pipeline_id": "Accusantium voluptas quam.", + "pipeline_stage_id": "Quos et provident sit tenetur iusto.", + "playbooks": [ + "init_webservers" + ], + "project": "b", + "stage_id": "Ad voluptas iure eos omnis." + }, + "required": [ + "account", + "org", + "project", + "created", + "id", + "data_type", + "inventories", + "playbooks" + ] + }, + "HarnessIacmApproval": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "sa", + "minLength": 1, + "maxLength": 128 + }, + "actioned_by": { + "type": "string", + "description": "User that approved/rejected the step", + "example": "John Doe" + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 4435246650461363700, + "format": "int64" + }, + "id": { + "type": "string", + "example": "Aut est alias incidunt nemo." + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "y6", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Suscipit eum ut pariatur in facere." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Earum commodi corrupti aperiam quia praesentium quibusdam." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "v4", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "Status of the approval resource", + "default": "pending", + "example": "Aut quisquam aliquam atque." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 7496136942044787000, + "format": "int64" + }, + "workspace_id": { + "type": "string", + "description": "The unique identifier for the workspace_id", + "example": "Odio et rerum quo unde." + } + }, + "description": "Approval is the representation for a single approval", + "example": { + "account": "w7b", + "actioned_by": "John Doe", + "created": 417861532613546430, + "id": "Et inventore possimus minima omnis ipsa.", + "org": "99", + "pipeline_execution_id": "Voluptates labore modi.", + "pipeline_stage_id": "Accusantium sed.", + "project": "l", + "status": "Voluptatem iusto consequatur dicta libero.", + "updated": 5991960394181808000, + "workspace_id": "Non nam iste inventore ut." + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace_id", + "id", + "status", + "created", + "updated" + ] + }, + "HarnessIacmChangedCosts": { + "type": "object", + "properties": { + "currency": { + "type": "string", + "description": "Currency of the costs", + "example": "Sed architecto ut soluta facere eveniet." + }, + "diff": { + "type": "object", + "description": "Map of the type of resources and their costs.", + "example": { + "Odio hic.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Sed et.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Sit aut veniam sint sed possimus quidem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/HarnessIacmCostResourcesByType" + } + }, + "diff_total_monthly_cost": { + "type": "string", + "description": "Difference of cost between workspaces per month", + "example": "Harum animi dolorem earum ut quas odit." + }, + "past_total_monthly_cost": { + "type": "string", + "description": "Total cost of the resources per month for the last workspace", + "example": "Nulla perspiciatis alias natus quis blanditiis." + }, + "percentage_change_total_monthly_cost": { + "type": "integer", + "description": "The change between the costs per month represented as a percentage", + "example": 4894804056734920000, + "format": "int64" + }, + "stage_execution_id": { + "type": "string", + "description": "The stage execution ID", + "example": "Tempore quae eius qui omnis." + }, + "stage_id": { + "type": "string", + "description": "The stage ID", + "example": "In laudantium sequi sint reprehenderit consequatur." + }, + "total_monthly_cost": { + "type": "string", + "description": "Total cost of the resources per month", + "example": "Nesciunt rerum consequatur." + }, + "workspace_id": { + "type": "string", + "description": "The workspace identifier", + "example": "Pariatur saepe autem nobis." + } + }, + "description": "Contains the difference in cost of the resources that are changing", + "example": { + "currency": "Necessitatibus et quia dolorem repellat atque rem.", + "diff": { + "Facere deleniti cumque dolores.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + }, + "Magnam ut voluptates a accusantium.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Ducimus sequi recusandae.", + "past_total_monthly_cost": "Exercitationem minus.", + "percentage_change_total_monthly_cost": 7641979694826349000, + "stage_execution_id": "Iusto similique et rem harum.", + "stage_id": "Blanditiis nesciunt.", + "total_monthly_cost": "Odio velit dignissimos molestias quia aut.", + "workspace_id": "Cupiditate laudantium molestiae quae qui alias." + }, + "required": [ + "currency", + "diff", + "total_monthly_cost", + "past_total_monthly_cost", + "diff_total_monthly_cost", + "percentage_change_total_monthly_cost", + "stage_id", + "stage_execution_id", + "workspace_id" + ] + }, + "HarnessIacmChangedOutput": { + "type": "object", + "properties": { + "change": { + "type": "string", + "description": "Change made to this resource.", + "example": "added", + "enum": [ + "added", + "changed", + "deleted", + "unchanged" + ] + }, + "name": { + "type": "string", + "description": "Name associated with the output.", + "example": "instance_public_ip" + }, + "new": { + "type": "string", + "description": "Updated value", + "example": "new value" + }, + "old": { + "type": "string", + "description": "Previous value.", + "example": "old value" + }, + "sensitive": { + "type": "boolean", + "description": "Indicates whether this value is sensitive", + "example": true + } + }, + "description": "Represents an individual output variable.", + "example": { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + "required": [ + "change", + "name", + "value", + "sensitive" + ] + }, + "HarnessIacmChangedResource": { + "type": "object", + "properties": { + "change": { + "type": "string", + "description": "Change made to this resource.", + "example": "added", + "enum": [ + "added", + "changed", + "deleted", + "unchanged", + "imported", + "removed" + ] + }, + "change_count": { + "type": "integer", + "description": "Count of changes made to this resource.", + "example": 10, + "format": "int64" + }, + "changes": { + "type": "object", + "description": "New values for this resource", + "example": { + "Consectetur consequuntur.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/ValueChange" + } + }, + "drift": { + "type": "boolean", + "description": "Indicates whether this resource is experiencing drift", + "example": true + }, + "module": { + "type": "string", + "description": "Module associated with the resource.", + "example": "full_stack" + }, + "name": { + "type": "string", + "description": "Name associated with the resource.", + "example": "app_server" + }, + "provider": { + "type": "string", + "description": "Cloud provider associated with the resource.", + "example": "AWS" + }, + "type": { + "type": "string", + "description": "Type of the provisioned resource.", + "example": "S3 Bucket" + } + }, + "description": "Represents a change to an individual provisioned resource.", + "example": { + "change": "added", + "change_count": 10, + "changes": { + "Tenetur et numquam illum aperiam.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + "required": [ + "provider", + "type", + "name", + "module", + "drift", + "change", + "change_count", + "changes", + "attributes", + "drift_status", + "drift_attributes", + "sensitive_attributes" + ] + }, + "HarnessIacmChangedResources": { + "type": "object", + "properties": { + "data_sources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "drift_changes": { + "$ref": "#/components/schemas/ChangedResourceCollection" + }, + "outputs": { + "$ref": "#/components/schemas/OutputCollection2" + }, + "pipeline_execution": { + "type": "string", + "description": "the identifier of the pipeline execution changes were made from.", + "example": "Rerum sit." + }, + "pipeline_stage": { + "type": "string", + "description": "the identifier of the pipeline stage execution changes were made from.", + "example": "Doloremque facilis quae occaecati incidunt aperiam amet." + }, + "planned_changes": { + "$ref": "#/components/schemas/ChangedResourceCollection" + }, + "resources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "stage_id": { + "type": "string", + "description": "The stage ID", + "example": "Itaque architecto." + }, + "workspace_id": { + "type": "string", + "description": "identifier of the workspace associated with the data", + "example": "Explicabo sit vitae impedit ut." + } + }, + "description": "Contains changed resources and outputs.", + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Id sit ut consequatur.", + "pipeline_stage": "Ut eius beatae.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Error dicta.", + "workspace_id": "Nesciunt in consequatur omnis voluptatibus." + }, + "required": [ + "pipeline_execution", + "drift_changes", + "planned_changes", + "resources", + "data_sources", + "outputs", + "workspace_id", + "stage_id" + ] + }, + "HarnessIacmCostResource": { + "type": "object", + "properties": { + "current_monthly_cost": { + "type": "string", + "example": "In debitis saepe est voluptatem." + }, + "diff_monthly_cost": { + "type": "string", + "example": "Qui adipisci sit amet." + }, + "name": { + "type": "string", + "example": "Deserunt asperiores nam quas ad fugiat doloremque." + }, + "percentage_change_monthly_cost": { + "type": "integer", + "example": 820645806596375400, + "format": "int64" + }, + "previous_monthly_cost": { + "type": "string", + "example": "Asperiores a modi." + }, + "subresources": { + "type": "object", + "description": "List of subresources for a resource", + "example": { + "Veniam in dolore et accusantium.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/HarnessIacmCostSubresource" + } + } + }, + "description": "Cost of the given resource", + "example": { + "current_monthly_cost": "Ut rerum autem excepturi molestiae voluptas.", + "diff_monthly_cost": "Minima eos voluptatem quia.", + "name": "Rerum quia et.", + "percentage_change_monthly_cost": 9025160137483723000, + "previous_monthly_cost": "Porro vel et eveniet sit.", + "subresources": { + "Magni id.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + "required": [ + "name", + "current_monthly_cost", + "previous_monthly_cost", + "diff_monthly_cost", + "percentage_change_monthly_cost" + ] + }, + "HarnessIacmCostResourcesByType": { + "type": "object", + "properties": { + "current_monthly_cost": { + "type": "string", + "example": "Enim enim illo et hic dolor autem." + }, + "diff": { + "$ref": "#/components/schemas/CostResourcesCollection" + }, + "diff_monthly_cost": { + "type": "string", + "example": "Officiis aut voluptatum quasi rerum id." + }, + "percentage_change_monthly_cost": { + "type": "integer", + "example": 5826106895248164000, + "format": "int64" + }, + "previous_monthly_cost": { + "type": "string", + "example": "Neque in placeat." + } + }, + "example": { + "current_monthly_cost": "Consequuntur molestias rerum impedit distinctio.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "A provident.", + "percentage_change_monthly_cost": 3074870851565043000, + "previous_monthly_cost": "Ut animi iste." + }, + "required": [ + "diff", + "current_monthly_cost", + "previous_monthly_cost", + "diff_monthly_cost", + "percentage_change_monthly_cost" + ] + }, + "HarnessIacmCostSubresource": { + "type": "object", + "properties": { + "current_monthly_cost": { + "type": "string", + "example": "Doloremque sint vero." + }, + "diff_monthly_cost": { + "type": "string", + "example": "Vel sit eveniet enim." + }, + "percentage_change_monthly_cost": { + "type": "integer", + "example": 8774423883694878000, + "format": "int64" + }, + "previous_monthly_cost": { + "type": "string", + "example": "Ducimus nihil." + } + }, + "description": "Cost of the given subresource", + "example": { + "current_monthly_cost": "Maiores ratione velit.", + "diff_monthly_cost": "Nihil sunt.", + "percentage_change_monthly_cost": 5274210783805149000, + "previous_monthly_cost": "Tempore inventore rerum ut." + }, + "required": [ + "current_monthly_cost", + "previous_monthly_cost", + "diff_monthly_cost", + "percentage_change_monthly_cost" + ] + }, + "HarnessIacmCostsresources": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "0", + "minLength": 1, + "maxLength": 128 + }, + "cost": { + "type": "string", + "description": "The cost associated to the execution metadata", + "example": "12.13" + }, + "created": { + "type": "integer", + "description": "The epoch time for the cost", + "example": 1672531200, + "format": "int64" + }, + "currency": { + "type": "string", + "description": "The currency for the cost", + "example": "USD" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "zu", + "minLength": 1, + "maxLength": 128 + }, + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Quis dolor soluta reprehenderit culpa." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Quod quia quibusdam voluptatibus molestias." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Necessitatibus in magnam quod." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "6b0", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Quia consectetur omnis sint quaerat minima." + } + }, + "description": "CostResource is the representation for a single workspace of the cost and metadata that ties the cost to an execution.", + "example": { + "account": "l0", + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "org": "4v", + "pipeline": "Ipsa provident iure cum minima.", + "pipeline_execution_id": "Nisi dignissimos suscipit eius.", + "pipeline_stage_id": "Libero et hic et.", + "project": "2s", + "workspace": "Rem ex sint cumque." + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace", + "pipeline", + "workspace_id", + "workspace_name", + "currency", + "cost", + "created" + ] + }, + "HarnessIacmDefaultpipeline": { + "type": "object", + "properties": { + "account": { + "type": "string", + "example": "Odit nostrum cupiditate est." + }, + "operation": { + "type": "string", + "description": "The default pipeline is associated with this operation", + "example": "plan", + "enum": [ + "plan", + "apply", + "destroy", + "drift" + ] + }, + "org": { + "type": "string", + "example": "Cumque quos adipisci esse dignissimos." + }, + "pipeline": { + "type": "string", + "description": "The default pipeline associated with the provisioner operation", + "example": "testpipeline" + }, + "project": { + "type": "string", + "example": "Soluta vitae eos quasi ipsa perspiciatis." + }, + "provisioner": { + "type": "string", + "description": "The default pipeline is associated with this provisioner", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "updated": { + "type": "integer", + "description": "Time the default pipeline was last updated", + "example": 1636669297674, + "format": "int64" + }, + "workspace": { + "type": "string", + "description": "The default pipeline is associated with this workspace if specified", + "default": "", + "example": "plan" + } + }, + "example": { + "account": "Ex sapiente.", + "operation": "plan", + "org": "Laboriosam aperiam illo temporibus.", + "pipeline": "testpipeline", + "project": "Cum ipsum neque mollitia velit rerum.", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + }, + "required": [ + "account", + "org", + "project", + "provisioner", + "operation", + "pipeline", + "updated" + ] + }, + "HarnessIacmDisablepush": { + "type": "object", + "properties": { + "disabled": { + "type": "boolean", + "description": "Indicates if the data is allowed to be pushed", + "example": true + } + }, + "example": { + "disabled": true + }, + "required": [ + "disabled" + ] + }, + "HarnessIacmExecution": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "8g", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 8805488641332415000, + "format": "int64" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "pqg", + "minLength": 1, + "maxLength": 128 + }, + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Beatae beatae et." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Praesentium et." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Vel id voluptatem ut." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "18", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "The overall status of the execution", + "example": "failure", + "enum": [ + "none", + "success", + "failure" + ] + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Impedit rem dolor dolorem." + } + }, + "description": "ExecutionResource is the representation for a single workflow execution.", + "example": { + "account": "x", + "created": 9110396058000592000, + "org": "jhq", + "pipeline": "Laudantium nobis nemo possimus.", + "pipeline_execution_id": "Rem omnis incidunt voluptate aut.", + "pipeline_stage_id": "Est quasi culpa ab ex consequatur quaerat.", + "project": "dq", + "status": "none", + "workspace": "Sequi et." + }, + "required": [ + "status", + "created", + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace", + "pipeline" + ] + }, + "HarnessIacmInventory": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "rqz", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "data": { + "type": "string", + "description": "The data representing the inventory", + "example": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "piz", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "nz", + "minLength": 1, + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Type indicates what kind of inventory this is", + "example": "dynamic", + "enum": [ + "manual", + "dynamic" + ] + }, + "updated": { + "type": "integer", + "description": "Timestamp when the resource was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "om3", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "x26", + "project": "9j", + "type": "manual", + "updated": 1627686800 + }, + "required": [ + "created", + "updated", + "account", + "org", + "project", + "identifier", + "name", + "type", + "data" + ] + }, + "HarnessIacmLockinfo": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "6y", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Time that the lock was taken.", + "example": "2023-07-03T20:16:18.382839Z", + "format": "int64" + }, + "id": { + "type": "string", + "description": "Unique ID for the lock. Generated by the terraform cli.", + "example": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "minLength": 1 + }, + "info": { + "type": "string", + "description": "Extra information to store with the lock.", + "default": "", + "example": "production workspace lock" + }, + "operation": { + "type": "string", + "description": "Terraform operation.", + "example": "OperationTypePlan" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "yft", + "minLength": 1, + "maxLength": 128 + }, + "path": { + "type": "string", + "description": "Path to the state file when applicable.", + "default": "", + "example": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c" + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "lws", + "minLength": 1, + "maxLength": 128 + }, + "version": { + "type": "string", + "description": "Terraform version.", + "example": "1.0.0" + }, + "who": { + "type": "string", + "description": "The machine user who is performing the operation.", + "default": "", + "example": "user1" + }, + "workspace": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + } + }, + "description": "Terraform lock information resource.", + "example": { + "account": "ya3", + "created": "2023-07-03T20:16:18.382839Z", + "id": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "info": "production workspace lock", + "operation": "OperationTypePlan", + "org": "9hb", + "path": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c", + "project": "awl", + "version": "1.0.0", + "who": "user1", + "workspace": "workspace123" + }, + "required": [ + "account", + "org", + "project", + "workspace", + "id", + "operation", + "version", + "created" + ] + }, + "HarnessIacmModuleRegistryCreateModule": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 6110393483764945000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Est quos porro quidem." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Ducimus facilis." + }, + "id": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "name": { + "type": "string", + "description": "module name", + "example": "m1n", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Animi ratione provident dicta sint dolores possimus." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Et quidem similique rerum odio." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "047", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Doloribus magnam." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 4234739297748057000, + "format": "int64" + } + }, + "example": { + "account": "3o0", + "created": 7777444293436157000, + "description": "Modi occaecati eaque distinctio rem qui repudiandae.", + "git_tag_style": "Molestias est ut est.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "name": "9h", + "repository": "Ab a aut odio nisi eum nobis.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Tenetur voluptatem officiis qui nam sed.", + "repository_path": "", + "system": "1oa", + "tags": "Facere rem aut dolores minus.", + "updated": 7190326994436431000 + }, + "required": [ + "account", + "name", + "system", + "id", + "created", + "updated" + ] + }, + "HarnessIacmModuleRegistryDownload": { + "type": "object", + "properties": { + "url": { + "type": "string", + "description": "url of the module for a given version", + "example": "Vitae accusamus quia quia odit laudantium." + } + }, + "description": "DownloadModule returns the url of the module for a given version", + "example": { + "url": "Nemo ducimus sint sapiente aliquam id." + }, + "required": [ + "url" + ] + }, + "HarnessIacmModuleRegistryListVersions": { + "type": "object", + "properties": { + "modules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmModuleRegistryVersions" + }, + "description": "list of versions for a given module", + "example": [ + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + } + ] + } + }, + "description": "ListVersions returns the list of versions for a given module", + "example": { + "modules": [ + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + } + ] + }, + "required": [ + "modules" + ] + }, + "HarnessIacmModuleRegistryModule": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "r7", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 1694585460133966000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Amet distinctio beatae qui." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Asperiores accusamus recusandae ut omnis fugit." + }, + "id": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "name": { + "type": "string", + "description": "module name", + "example": "mt", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Dolor autem facere." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Eligendi consequatur repellat aut." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "4ih", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Deserunt sunt incidunt eum provident." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 6449760013524897000, + "format": "int64" + } + }, + "description": "Type that describes the attributes stored in the iac-server related with a specific module", + "example": { + "account": "i7z", + "created": 7979735106465220000, + "description": "Velit laborum libero quos eos sunt.", + "git_tag_style": "Veniam illo.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "name": "c", + "repository": "Dicta voluptas harum odit est aut.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Labore aut tenetur iste reiciendis.", + "repository_path": "", + "system": "zxu", + "tags": "Cum ut nulla.", + "updated": 6477996249285231000 + }, + "required": [ + "account", + "name", + "system", + "id", + "created", + "updated" + ] + }, + "HarnessIacmModuleRegistryModuleList": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "f8", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 4809024332832173000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Aut excepturi dicta qui." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "In necessitatibus dolore vel." + }, + "id": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "module_error": { + "type": "string", + "description": "error while retrieving the module", + "example": "Ut nemo maiores id." + }, + "name": { + "type": "string", + "description": "module name", + "example": "2a0", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "org that owns the module", + "example": "nm", + "minLength": 1, + "maxLength": 1024 + }, + "project": { + "type": "string", + "description": "project that owns the module", + "example": "e", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Quia cumque ea." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Quibusdam vero cumque voluptatem." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_url": { + "type": "string", + "description": "Repository url.", + "example": "Dignissimos soluta alias officiis nam vel aut." + }, + "synced": { + "type": "integer", + "description": "Synced is the unix timestamp at which the resource was synced for the last time in milliseconds.", + "example": 5883998476140800000, + "format": "int64" + }, + "system": { + "type": "string", + "description": "system name", + "example": "du6", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Dolor quis non." + }, + "testing_enabled": { + "type": "boolean", + "description": "testing enabled", + "example": false + }, + "testing_metadata": { + "$ref": "#/components/schemas/HarnessIacmModuleRegistryModuleTestingMetadata" + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 5986240425655448000, + "format": "int64" + }, + "versions": { + "type": "array", + "items": { + "type": "string", + "example": "Odit non est ut vel et dolores." + }, + "description": "versions", + "example": [ + "Et eligendi dolores mollitia quia earum.", + "Aspernatur temporibus vel a non.", + "Velit qui rem." + ] + } + }, + "example": { + "account": "8", + "created": 5129773018903307000, + "description": "Nam at eveniet dolore.", + "git_tag_style": "Vel fuga et ut et et perspiciatis.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Dolor itaque sint praesentium est impedit molestias.", + "name": "qmc", + "org": "fgi", + "project": "g1", + "repository": "Repellat non a at fuga odio.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Asperiores quo delectus voluptatem animi.", + "repository_path": "", + "repository_url": "Recusandae quas.", + "synced": 4334899026220344300, + "system": "580", + "tags": "Consequatur quia placeat iusto quas.", + "testing_enabled": false, + "testing_metadata": { + "account": "s", + "org": "4", + "pipelines": [ + "Autem beatae sit ratione odio.", + "Provident voluptatem iure ratione.", + "Cumque eos quaerat quos est.", + "In qui non unde aperiam amet in." + ], + "project": "q0o", + "provider_connector": "Pariatur sunt nulla.", + "provisioner_type": "Est quisquam autem.", + "provisioner_version": "Nemo voluptatem sapiente nisi quae vitae facilis.", + "release_pipeline": "Ipsa perspiciatis est." + }, + "updated": 7305573953599650000, + "versions": [ + "Fugiat quisquam perferendis.", + "Voluptate quibusdam quibusdam quia omnis." + ] + }, + "required": [ + "account", + "name", + "system", + "id", + "created", + "updated", + "synced" + ] + }, + "HarnessIacmModuleRegistryModuleMetadata": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account name", + "example": "Ut corporis et libero." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DependenciesMetadata" + }, + "description": "Dependencies of the module", + "example": [ + { + "dependency_name": "Sequi et at assumenda.", + "dependency_source": "Aut possimus et vitae aliquam omnis delectus.", + "dependency_version": "Porro id sit." + }, + { + "dependency_name": "Sequi et at assumenda.", + "dependency_source": "Aut possimus et vitae aliquam omnis delectus.", + "dependency_version": "Porro id sit." + }, + { + "dependency_name": "Sequi et at assumenda.", + "dependency_source": "Aut possimus et vitae aliquam omnis delectus.", + "dependency_version": "Porro id sit." + } + ] + }, + "metadata_error": { + "type": "string", + "description": "error while retrieving the module", + "example": "Ipsa et." + }, + "module_version": { + "type": "string", + "description": "module version", + "example": "Itaque dolorum." + }, + "name": { + "type": "string", + "description": "module name", + "example": "Iste id fugit quia." + }, + "outputs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OutputMetadata" + }, + "description": "Outputs of the module", + "example": [ + { + "output_description": "Ratione corrupti.", + "output_name": "Enim similique.", + "output_sensitive": true + }, + { + "output_description": "Ratione corrupti.", + "output_name": "Enim similique.", + "output_sensitive": true + }, + { + "output_description": "Ratione corrupti.", + "output_name": "Enim similique.", + "output_sensitive": true + } + ] + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProviderMetadata" + }, + "description": "Providers of the module", + "example": [ + { + "provider_name": "Pariatur nulla quam explicabo non consequuntur fugit.", + "provider_source": "Voluptatibus blanditiis non ut.", + "provider_version": "Reiciendis et quis." + }, + { + "provider_name": "Pariatur nulla quam explicabo non consequuntur fugit.", + "provider_source": "Voluptatibus blanditiis non ut.", + "provider_version": "Reiciendis et quis." + } + ] + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceMetadata" + }, + "description": "Resources of the module", + "example": [ + { + "resource_name": "Reiciendis natus.", + "resource_type": "Consequatur beatae et accusantium commodi laudantium." + }, + { + "resource_name": "Reiciendis natus.", + "resource_type": "Consequatur beatae et accusantium commodi laudantium." + }, + { + "resource_name": "Reiciendis natus.", + "resource_type": "Consequatur beatae et accusantium commodi laudantium." + }, + { + "resource_name": "Reiciendis natus.", + "resource_type": "Consequatur beatae et accusantium commodi laudantium." + } + ] + }, + "submodule": { + "type": "array", + "items": { + "type": "string", + "example": "Officia veniam vel." + }, + "description": "Submodules of the module", + "example": [ + "Repudiandae possimus veritatis iure est laboriosam eum.", + "Dolorem et.", + "Recusandae beatae recusandae.", + "Dolorem animi earum nihil exercitationem." + ] + }, + "system": { + "type": "string", + "description": "system name", + "example": "Aut libero." + }, + "variables": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableMetadata" + }, + "description": "Variables of the module", + "example": [ + { + "variable_default": "Quibusdam aut tempora consectetur dolor maxime.", + "variable_description": "Quibusdam ut.", + "variable_name": "Eos cumque illum aliquid.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Libero harum velit quod in." + }, + { + "variable_default": "Quibusdam aut tempora consectetur dolor maxime.", + "variable_description": "Quibusdam ut.", + "variable_name": "Eos cumque illum aliquid.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Libero harum velit quod in." + }, + { + "variable_default": "Quibusdam aut tempora consectetur dolor maxime.", + "variable_description": "Quibusdam ut.", + "variable_name": "Eos cumque illum aliquid.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Libero harum velit quod in." + }, + { + "variable_default": "Quibusdam aut tempora consectetur dolor maxime.", + "variable_description": "Quibusdam ut.", + "variable_name": "Eos cumque illum aliquid.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Libero harum velit quod in." + } + ] + } + }, + "description": "Type that describes the metadata stored in the iac-server related with a specific module and version", + "example": { + "account": "Qui ut placeat est vitae.", + "dependencies": [ + { + "dependency_name": "Sequi et at assumenda.", + "dependency_source": "Aut possimus et vitae aliquam omnis delectus.", + "dependency_version": "Porro id sit." + }, + { + "dependency_name": "Sequi et at assumenda.", + "dependency_source": "Aut possimus et vitae aliquam omnis delectus.", + "dependency_version": "Porro id sit." + }, + { + "dependency_name": "Sequi et at assumenda.", + "dependency_source": "Aut possimus et vitae aliquam omnis delectus.", + "dependency_version": "Porro id sit." + }, + { + "dependency_name": "Sequi et at assumenda.", + "dependency_source": "Aut possimus et vitae aliquam omnis delectus.", + "dependency_version": "Porro id sit." + } + ], + "metadata_error": "Deleniti laborum nulla odio omnis cum.", + "module_version": "Asperiores cupiditate et dolorum maxime est.", + "name": "Quam repudiandae.", + "outputs": [ + { + "output_description": "Ratione corrupti.", + "output_name": "Enim similique.", + "output_sensitive": true + }, + { + "output_description": "Ratione corrupti.", + "output_name": "Enim similique.", + "output_sensitive": true + } + ], + "providers": [ + { + "provider_name": "Pariatur nulla quam explicabo non consequuntur fugit.", + "provider_source": "Voluptatibus blanditiis non ut.", + "provider_version": "Reiciendis et quis." + }, + { + "provider_name": "Pariatur nulla quam explicabo non consequuntur fugit.", + "provider_source": "Voluptatibus blanditiis non ut.", + "provider_version": "Reiciendis et quis." + }, + { + "provider_name": "Pariatur nulla quam explicabo non consequuntur fugit.", + "provider_source": "Voluptatibus blanditiis non ut.", + "provider_version": "Reiciendis et quis." + } + ], + "resources": [ + { + "resource_name": "Reiciendis natus.", + "resource_type": "Consequatur beatae et accusantium commodi laudantium." + }, + { + "resource_name": "Reiciendis natus.", + "resource_type": "Consequatur beatae et accusantium commodi laudantium." + } + ], + "submodule": [ + "Ut quaerat quas enim deserunt eum vero.", + "Vel voluptatibus ea.", + "Tempore error." + ], + "system": "Blanditiis voluptatem.", + "variables": [ + { + "variable_default": "Quibusdam aut tempora consectetur dolor maxime.", + "variable_description": "Quibusdam ut.", + "variable_name": "Eos cumque illum aliquid.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Libero harum velit quod in." + }, + { + "variable_default": "Quibusdam aut tempora consectetur dolor maxime.", + "variable_description": "Quibusdam ut.", + "variable_name": "Eos cumque illum aliquid.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Libero harum velit quod in." + }, + { + "variable_default": "Quibusdam aut tempora consectetur dolor maxime.", + "variable_description": "Quibusdam ut.", + "variable_name": "Eos cumque illum aliquid.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Libero harum velit quod in." + } + ] + }, + "required": [ + "account", + "name", + "system", + "module_version", + "outputs", + "providers", + "resources", + "variables" + ] + }, + "HarnessIacmModuleRegistryModuleTestingMetadata": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "m", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "s", + "minLength": 1, + "maxLength": 128 + }, + "pipelines": { + "type": "array", + "items": { + "type": "string", + "example": "Placeat dolorem dolor ipsum quo magnam quia." + }, + "description": "pipelines where the testing is enabled", + "example": [ + "Laudantium cupiditate laborum accusamus vel voluptatem.", + "Officia consectetur." + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "q", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "provider connector for testing purposes", + "example": "Reiciendis quis vitae." + }, + "provisioner_type": { + "type": "string", + "description": "provisioner type for testing purposes", + "example": "Illum est quod eos ut ipsum nulla." + }, + "provisioner_version": { + "type": "string", + "description": "provisioner version for testing purposes", + "example": "Saepe ut velit sunt dignissimos beatae vel." + }, + "release_pipeline": { + "type": "string", + "description": "release pipeline", + "example": "Possimus cupiditate." + } + }, + "example": { + "account": "3p7", + "org": "l", + "pipelines": [ + "Optio tempore id.", + "Saepe non nulla qui consequuntur dolor.", + "Aspernatur officiis." + ], + "project": "f", + "provider_connector": "Et tenetur itaque.", + "provisioner_type": "Velit rerum rerum.", + "provisioner_version": "Beatae sed excepturi dolorum autem odio omnis.", + "release_pipeline": "Non assumenda." + }, + "required": [ + "account", + "org", + "project", + "provisioner_type", + "provisioner_version", + "provider_connector", + "pipelines" + ] + }, + "HarnessIacmModuleRegistryServiceDiscovery": { + "type": "object", + "properties": { + "modules.v1": { + "type": "string", + "description": "url for the module registry", + "example": "Nam aliquid voluptatem ratione consequatur nobis." + }, + "providers.v1": { + "type": "string", + "description": "url for the provider registry", + "example": "Amet a voluptatem." + } + }, + "description": "DiscoveryResponse returns the actions that the service provides", + "example": { + "modules.v1": "Fugiat delectus nam velit quo rerum.", + "providers.v1": "Consequuntur optio mollitia voluptatum." + }, + "required": [ + "modules.v1", + "providers.v1" + ] + }, + "HarnessIacmModuleRegistryVersionTypes": { + "type": "object", + "properties": { + "git_version": { + "type": "string", + "description": "git version", + "example": "Dolores delectus atque iusto nulla." + }, + "module_version": { + "type": "string", + "description": "module version", + "example": "Repellendus illo voluptas unde qui sequi aliquid." + } + }, + "description": "Returns the module_version and git_version for a specific module", + "example": { + "git_version": "Totam distinctio reiciendis.", + "module_version": "Harum rerum voluptates velit eos quia." + }, + "required": [ + "module_version", + "git_version" + ] + }, + "HarnessIacmModuleRegistryVersions": { + "type": "object", + "properties": { + "versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmModuleRegistryVersionTypes" + }, + "description": "list of versions for a given module", + "example": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + } + }, + "description": "Versions returns the list of versions for a given module", + "example": { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + "required": [ + "versions" + ] + }, + "HarnessIacmModuleexecutionresource": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ti", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 2424245090571730400, + "format": "int64" + }, + "metadata": { + "$ref": "#/components/schemas/ModuleExecutionMetadata" + }, + "moduleId": { + "type": "string", + "description": "The unique identifier for the associated module", + "example": "Aut occaecati iste aperiam et suscipit." + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "3", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "kjm", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "The overall status of the execution", + "example": "Harum culpa corporis." + } + }, + "description": "ModuleExecutionResource is the representation for a single module execution.", + "example": { + "account": "n", + "created": 696340263458044300, + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "Voluptatem fuga quas.", + "org": "1a", + "project": "3", + "status": "Qui voluptatem tenetur." + }, + "required": [ + "status", + "created", + "account", + "org", + "project", + "pipelineExecutionId", + "pipelineStageId", + "moduleId", + "pipeline" + ] + }, + "HarnessIacmMonthlycost": { + "type": "object", + "properties": { + "cost": { + "type": "string", + "description": "The cost associated to the execution metadata", + "example": "12.13" + }, + "created": { + "type": "integer", + "description": "The epoch time for the cost", + "example": 1672531200, + "format": "int64" + }, + "currency": { + "type": "string", + "description": "The currency for the cost", + "example": "USD" + }, + "workspace_id": { + "type": "string", + "example": "Et ut tempore voluptate dolor sequi quidem." + }, + "workspace_name": { + "type": "string", + "example": "In animi praesentium ad iure." + } + }, + "description": "MonthlyCost is the cost of a workspace per month", + "example": { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eius soluta.", + "workspace_name": "Officiis aliquam quaerat." + }, + "required": [ + "workspace_id", + "workspace_name", + "currency", + "cost", + "created" + ] + }, + "HarnessIacmOutput": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name associated with the output.", + "example": "instance_public_ip" + }, + "sensitive": { + "type": "boolean", + "description": "Indicates whether this value is sensitive", + "example": true + }, + "value": { + "type": "string", + "description": "Value associated with the output.", + "example": "Qui distinctio provident inventore vero." + } + }, + "description": "Represents an individual output variable.", + "example": { + "name": "instance_public_ip", + "sensitive": true, + "value": "Quod placeat animi corrupti consequuntur." + }, + "required": [ + "name", + "value", + "sensitive" + ] + }, + "HarnessIacmPlaybook": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "n9j", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "In eligendi sed." + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test playbook", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "006", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the playbook should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the playbook should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this playbook.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the playbook resides.", + "default": "", + "example": "playbooks/" + }, + "updated": { + "type": "integer", + "description": "Timestamp when the resource was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "6lx", + "created": 1627590400, + "identifier": "Quia ipsum quis aut ut.", + "name": "test playbook", + "org": "7", + "project": "9n3", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + }, + "required": [ + "created", + "updated", + "account", + "org", + "project", + "identifier", + "name", + "repository_path" + ] + }, + "HarnessIacmPluginversion": { + "type": "object", + "properties": { + "commit": { + "type": "string", + "description": "Build identifier", + "example": "96381692bf3a2bd7904769c6886e832435768b57" + }, + "version": { + "type": "string", + "description": "Version number", + "example": "0.2.0" + } + }, + "description": "Plugin version", + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "version": "0.2.0" + } + }, + "HarnessIacmProviderRegistryGpgPublicKey": { + "type": "object", + "properties": { + "ascii_armor": { + "type": "string", + "description": "ASCII-armored GPG public key", + "example": "Consequatur repellendus beatae animi deserunt quae alias." + }, + "key_id": { + "type": "string", + "description": "GPG key ID", + "example": "Corporis optio ipsum." + } + }, + "description": "GPGPublicKey contains a GPG public key for provider verification", + "example": { + "ascii_armor": "Suscipit voluptatibus ipsum qui sint ea.", + "key_id": "Ipsam tempore perspiciatis in." + }, + "required": [ + "key_id", + "ascii_armor" + ] + }, + "HarnessIacmProviderRegistryPlatform": { + "type": "object", + "properties": { + "arch": { + "type": "string", + "description": "Architecture", + "example": "Quos reprehenderit." + }, + "os": { + "type": "string", + "description": "Operating system", + "example": "Totam sunt et qui ut fuga." + } + }, + "description": "Platform defines an operating system and architecture combination", + "example": { + "arch": "Dolores aut.", + "os": "Qui et distinctio ut facere ea." + }, + "required": [ + "os", + "arch" + ] + }, + "HarnessIacmProviderRegistryProvider": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account that owns the provider", + "example": "Eligendi delectus eos mollitia expedita qui dolorum." + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 6043267393883116000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of the provider", + "example": "Qui error a incidunt corrupti veniam repudiandae." + }, + "id": { + "type": "string", + "description": "Provider ID", + "example": "Culpa quam in saepe fugit voluptates." + }, + "type": { + "type": "string", + "description": "Provider type", + "example": "Assumenda unde quaerat aliquam fugiat unde officiis." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 5729729749366936000, + "format": "int64" + }, + "versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistryProviderVersionMetadata" + }, + "description": "Provider versions", + "example": [ + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + } + ] + } + }, + "description": "Provider contains information about a Terraform provider", + "example": { + "account": "Velit sunt impedit fugiat commodi et dolorem.", + "created": 6632475338792734000, + "description": "Quod in culpa quis.", + "id": "Repudiandae dolor dolor qui.", + "type": "Quam distinctio maxime quia.", + "updated": 3027808261391896600, + "versions": [ + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + }, + { + "files": [ + "Incidunt ut cumque error voluptatem quis.", + "Reiciendis ipsum ipsum non." + ], + "synced": true, + "version": "Consequatur quo." + } + ] + }, + "required": [ + "id", + "account", + "type", + "description", + "versions", + "created", + "updated" + ] + }, + "HarnessIacmProviderRegistryProviderDownload": { + "type": "object", + "properties": { + "arch": { + "type": "string", + "description": "Architecture", + "example": "Aliquid provident." + }, + "download_url": { + "type": "string", + "description": "URL to download the provider binary", + "example": "Sed quo." + }, + "filename": { + "type": "string", + "description": "Provider binary filename", + "example": "Consequatur quo commodi adipisci enim." + }, + "os": { + "type": "string", + "description": "Operating system", + "example": "Autem cupiditate." + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "example": "Corporis numquam odio." + }, + "description": "Supported Terraform protocol versions", + "example": [ + "Praesentium eum delectus voluptas esse eum.", + "Dolores perspiciatis minus dicta error." + ] + }, + "shasum": { + "type": "string", + "description": "SHA256 checksum of the provider binary", + "example": "Facilis laudantium eius." + }, + "shasums_signature_url": { + "type": "string", + "description": "URL to download the checksums signature", + "example": "Ut non architecto." + }, + "shasums_url": { + "type": "string", + "description": "URL to download the checksums file", + "example": "Dolores at." + }, + "signing_keys": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistrySigningKeys" + } + }, + "description": "ProviderDownloadResponse contains information for downloading a provider", + "example": { + "arch": "Aperiam ratione eligendi mollitia optio aut maiores.", + "download_url": "Eum in.", + "filename": "Harum dolor.", + "os": "Voluptas et minima distinctio magni ipsa.", + "protocols": [ + "Eligendi voluptatibus earum.", + "Error est quasi autem.", + "Consequatur praesentium magni quia.", + "Est dolorem aut laborum unde." + ], + "shasum": "Fugit quae dicta vel id.", + "shasums_signature_url": "Eos esse.", + "shasums_url": "Repellendus quia.", + "signing_keys": { + "gpg_public_keys": [ + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + } + ] + } + }, + "required": [ + "protocols", + "os", + "arch", + "filename", + "download_url", + "shasums_url", + "shasums_signature_url", + "shasum", + "signing_keys" + ] + }, + "HarnessIacmProviderRegistryProviderVersion": { + "type": "object", + "properties": { + "platforms": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistryPlatform" + }, + "description": "Supported platforms", + "example": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ] + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "example": "Ipsum sint in nisi quis aspernatur." + }, + "description": "Supported Terraform protocol versions", + "example": [ + "Nihil praesentium unde consequatur dolore voluptas.", + "Eius nesciunt dolorem qui." + ] + }, + "version": { + "type": "string", + "description": "Provider version", + "example": "Libero quo est." + } + }, + "description": "ProviderVersion contains information about a specific provider version", + "example": { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Ut quaerat.", + "Distinctio incidunt libero sed quo." + ], + "version": "Ad sunt rerum voluptate esse voluptatibus." + }, + "required": [ + "version", + "protocols", + "platforms" + ] + }, + "HarnessIacmProviderRegistryProviderVersionMetadata": { + "type": "object", + "properties": { + "files": { + "type": "array", + "items": { + "type": "string", + "example": "Velit architecto tenetur." + }, + "description": "Uploaded provider files", + "example": [ + "Voluptatem eos quos magni.", + "Quo aut." + ] + }, + "synced": { + "type": "boolean", + "description": "Provider version synced", + "example": true + }, + "version": { + "type": "string", + "description": "Provider version", + "example": "Quis consequuntur ea tenetur sunt." + } + }, + "description": "ProviderVersionMetadata contains metadata about a specific provider version", + "example": { + "files": [ + "Quas laudantium impedit.", + "Consectetur est nesciunt." + ], + "synced": false, + "version": "Asperiores doloribus error numquam quos ea ipsa." + }, + "required": [ + "version", + "synced", + "files" + ] + }, + "HarnessIacmProviderRegistryProviderVersions": { + "type": "object", + "properties": { + "versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistryProviderVersion" + }, + "description": "List of available provider versions", + "example": [ + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + } + ] + } + }, + "description": "ProviderVersionsResponse returns the list of available versions for a provider", + "example": { + "versions": [ + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + } + ] + }, + "required": [ + "versions" + ] + }, + "HarnessIacmProviderRegistrySigningKeys": { + "type": "object", + "properties": { + "gpg_public_keys": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistryGpgPublicKey" + }, + "description": "GPG public keys", + "example": [ + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + } + ] + } + }, + "description": "SigningKeys contains GPG public keys used for provider verification", + "example": { + "gpg_public_keys": [ + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + }, + { + "ascii_armor": "Sint consequatur doloribus.", + "key_id": "Autem et maiores qui." + } + ] + }, + "required": [ + "gpg_public_keys" + ] + }, + "HarnessIacmProviderRegistrySigningKeysNames": { + "type": "object", + "properties": { + "gpg_key_names": { + "type": "object", + "description": "GPG key names", + "example": { + "Eius ullam consequatur debitis.": "Quos dolor dolore quod est aspernatur.", + "Quia laborum reprehenderit quidem similique sit accusamus.": "Delectus perspiciatis aliquid praesentium vero totam." + }, + "additionalProperties": { + "type": "string", + "example": "Praesentium est." + } + } + }, + "description": "SigningKeysNames contains GPG key names used for provider verification", + "example": { + "gpg_key_names": { + "Numquam dolorum et dolor laudantium.": "Eaque doloribus molestias magni cupiditate." + } + }, + "required": [ + "gpg_key_names" + ] + }, + "HarnessIacmResource": { + "type": "object", + "properties": { + "attributes": { + "type": "object", + "description": "A map of values related to the resource", + "example": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "additionalProperties": true + }, + "drift_attributes": { + "type": "object", + "description": "A map of values related to the resource", + "example": { + "instance_type": "t2.nano" + }, + "additionalProperties": true + }, + "drift_status": { + "type": "string", + "description": "Indicates if this resource is experiencing drift.", + "example": "changed", + "enum": [ + "changed", + "deleted", + "unchanged" + ] + }, + "module": { + "type": "string", + "description": "Module associated with the resource.", + "example": "full_stack" + }, + "name": { + "type": "string", + "description": "Name associated with the resource.", + "example": "app_server" + }, + "provider": { + "type": "string", + "description": "Cloud provider associated with the resource.", + "example": "AWS" + }, + "sensitive_attributes": { + "type": "array", + "items": { + "example": "Quia quos recusandae id quo." + }, + "description": "A list of the sensitive attribute keys ", + "example": [ + "instance_type" + ] + }, + "type": { + "type": "string", + "description": "Type of the provisioned resource.", + "example": "S3 Bucket" + } + }, + "description": "Represents an individual provisioned resource.", + "example": { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + "required": [ + "provider", + "type", + "name", + "module", + "attributes", + "drift_status", + "drift_attributes", + "sensitive_attributes" + ] + }, + "HarnessIacmResources": { + "type": "object", + "properties": { + "data_sources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "outputs": { + "$ref": "#/components/schemas/OutputCollection" + }, + "resources": { + "$ref": "#/components/schemas/ResourceCollection" + } + }, + "description": "Contains provisioned resources and outputs.", + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ] + }, + "required": [ + "resources", + "data_sources", + "outputs" + ] + }, + "HarnessIacmVariableSet": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "u", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "env_vars_count": { + "type": "integer", + "description": "Number of environment variables defined in Variable Set.", + "example": 7838350104138847000, + "format": "int64" + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Nihil voluptatem assumenda ut ut.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 2033159452945927000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "eun", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "8v", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ue", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Deleniti sunt accusantium.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Enim saepe ut corporis vero facilis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Omnis provident.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "tf_vars_count": { + "type": "integer", + "description": "Number of TF variables defined in Variable Set.", + "example": 3126304570199065000, + "format": "int64" + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + }, + "var_files_count": { + "type": "integer", + "description": "Number of variable files defined in Variable Set.", + "example": 2543780403855622000, + "format": "int64" + } + }, + "description": "VariableSetResource is the representation for a variable-set association.", + "example": { + "account": "pk9", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 512277541884917800, + "environment_variables": { + "Tempore eligendi deleniti in mollitia.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 4440611422329415700, + "identifier": "60", + "name": "resource name", + "org": "2", + "project": "ek", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Eum est eaque doloremque et sequi in.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Occaecati cumque.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 1841545906269775600, + "updated": 1627686800, + "var_files_count": 8635721387591828000 + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "env_vars_count", + "tf_vars_count", + "var_files_count" + ] + }, + "HarnessIacmVariableSetList": { + "type": "object", + "properties": { + "items": { + "$ref": "#/components/schemas/VariableSetResourceCollection" + } + }, + "example": { + "items": [ + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + } + ] + } + }, + "HarnessIacmVariableSetSaveresult": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Sapiente sunt inventore reiciendis iste itaque.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 2248760948085381000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "9n", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "f", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "f0q", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Nihil consequatur quibusdam explicabo consequatur.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "r", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Perspiciatis ratione culpa aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Ut sit officiis suscipit aspernatur.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 2315493468023398400, + "identifier": "fwu", + "name": "resource name", + "org": "uhm", + "project": "qsu", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Aut laboriosam eligendi consequatur sed dolores delectus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Consequuntur autem consectetur.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Fugiat quis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name" + ] + }, + "HarnessIacmWorkspace": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "4e", + "minLength": 1, + "maxLength": 128 + }, + "associated_template": { + "$ref": "#/components/schemas/AssociatedTemplate" + }, + "backend_locked": { + "type": "boolean", + "description": "Defines if the remote backend is locked or not", + "default": false, + "example": false + }, + "budget": { + "type": "number", + "description": "define the budget for a specific workspace", + "example": 0.23927976, + "format": "float" + }, + "cost_breakdown_json": { + "type": "string", + "description": "cost_breakdown_json is the identifier to the breakdown cost file from the current execution that was applied successfully", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_diff_json": { + "type": "string", + "description": "cost_diff_json is the identifier to the diff cost file between the previous and current successful executions", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_estimation_enabled": { + "type": "boolean", + "description": "define if cost estimation operations will be performed in this workspace", + "default": false, + "example": true + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 7377729063121358000, + "format": "int64" + }, + "default_pipelines": { + "type": "object", + "description": "List of default pipelines associated with this workspace and any per-workspace overrides.", + "example": { + "Et minima et culpa voluptas.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Quia quaerat.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Repellendus velit dolorem voluptatem corporis sed.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/DefaultPipelineOverride" + } + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "list of environment variables configured on the workspace.", + "example": { + "A repudiandae et quam cum.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Autem adipisci sapiente sit facilis aliquid sapiente.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableResource" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 6677335868446256000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "modules_json": { + "type": "string", + "description": "modules_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "f54", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "w6z", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "Provider Connector is the reference to the connector for the infrastructure provider.", + "example": "Quam eveniet praesentium." + }, + "provider_connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceProviderConnector" + }, + "description": "define an array of provider connectors that belong to Workspace", + "example": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ] + }, + "providers_json": { + "type": "string", + "description": "providers_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "provisioner": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "provisioner_data": { + "type": "string", + "example": "Optio est nam dicta." + }, + "provisioner_version": { + "type": "string", + "description": "Provisioner Version defines the tool version to use.", + "default": "latest", + "example": "Impedit sunt dolores aut." + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Maiores ullam sit rem doloribus ut cum." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Id et nihil." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_submodules": { + "type": "string", + "description": "repository_submodules is the instruction about whether to clone submodules in the pipeline step", + "default": "false", + "example": "recursive", + "enum": [ + "false", + "true", + "recursive" + ] + }, + "sparse_checkout": { + "type": "string", + "description": "List of patterens that will be used for sparse checkout option of git clone", + "example": "Expedita dolore velit." + }, + "state_checksum": { + "type": "string", + "description": "state_checksum is the sha-256 checksum of terraform state file", + "example": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f" + }, + "status": { + "type": "string", + "description": "The status of the workspace", + "example": "failed", + "enum": [ + "active", + "inactive", + "provisioning", + "destroying", + "failed", + "unknown" + ] + }, + "tags": { + "type": "string", + "description": "Tags associated with the workspace.", + "example": { + "foo": "bar" + } + }, + "terraform_plan_json": { + "type": "string", + "description": "terraform_plan_json is the identifier to the current state file only in JSON format.", + "example": "f9e21473daaa2674d862b67a1339f4570e86de17" + }, + "terraform_state": { + "type": "string", + "description": "terraform_state is the identifier to the plan file used to create the latest state.", + "example": "fc1200c7a7aa52109d762a9f005b149abef01479" + }, + "terraform_state_json": { + "type": "string", + "description": "terraform_state_json is the identifier to the plan file used to create the latest state only in JSON format.", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceTerraformVariableFiles" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "list of terraform variables configured on the workspace.", + "example": { + "Nihil quasi sit dolorum sit.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableResource" + } + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 3277235509973249500, + "format": "int64" + }, + "variable_sets": { + "type": "array", + "items": { + "type": "string", + "example": "Doloribus quidem in perferendis repudiandae." + }, + "description": "Attached Variable Sets references", + "example": [ + "Molestiae voluptate iure omnis autem laborum.", + "Aut accusamus iste facilis quia ut labore.", + "Perspiciatis laborum.", + "Qui est quas voluptates voluptas accusamus." + ] + } + }, + "description": "WorkspaceResource is the representation for a single workspace definition.", + "example": { + "account": "ed", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": false, + "budget": 0.50629663, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 6165992430150329000, + "default_pipelines": { + "Aspernatur tempore.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Temporibus architecto ipsum earum debitis delectus et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Dolor esse dicta ex repellendus sunt.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Dolorem illo.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Ex pariatur.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 4852000691805273000, + "identifier": "fcb", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "2", + "project": "tdd", + "provider_connector": "Repellat porro.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Non odio rem.", + "provisioner_version": "Doloribus laborum qui placeat deleniti sit dolorem.", + "repository": "Quas et.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Et enim in quibusdam ad omnis temporibus.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Voluptas mollitia est reiciendis.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "inactive", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Ex aliquid.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Laborum dicta vero.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Quaerat sit rem impedit qui voluptates quo.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 5813677215919616000, + "variable_sets": [ + "Aliquam qui repellat magni expedita quasi nisi.", + "Occaecati aliquid ea." + ] + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "provider_connector", + "provisioner", + "repository_connector", + "terraform_variables", + "environment_variables", + "created", + "updated", + "provisioner_data", + "status", + "tags" + ] + }, + "HarnessIacmWorkspaceCreateresult": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "mmz", + "minLength": 1, + "maxLength": 128 + }, + "associated_template": { + "$ref": "#/components/schemas/AssociatedTemplate" + }, + "backend_locked": { + "type": "boolean", + "description": "Defines if the remote backend is locked or not", + "default": false, + "example": true + }, + "budget": { + "type": "number", + "description": "define the budget for a specific workspace", + "example": 0.34315962, + "format": "float" + }, + "cost_breakdown_json": { + "type": "string", + "description": "cost_breakdown_json is the identifier to the breakdown cost file from the current execution that was applied successfully", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_diff_json": { + "type": "string", + "description": "cost_diff_json is the identifier to the diff cost file between the previous and current successful executions", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_estimation_enabled": { + "type": "boolean", + "description": "define if cost estimation operations will be performed in this workspace", + "default": false, + "example": true + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 309642005656075970, + "format": "int64" + }, + "default_pipelines": { + "type": "object", + "description": "List of default pipelines associated with this workspace and any per-workspace overrides.", + "example": { + "Dicta aut.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Exercitationem nulla qui.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Ut quisquam quisquam eveniet perferendis quo.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/DefaultPipelineOverride" + } + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "list of environment variables configured on the workspace.", + "example": { + "Explicabo accusamus fuga eum cupiditate eos.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableResource" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 6524217239180464000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "eb", + "minLength": 1, + "maxLength": 128 + }, + "modules_json": { + "type": "string", + "description": "modules_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "4n", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "Provider Connector is the reference to the connector for the infrastructure provider.", + "example": "Nesciunt delectus qui." + }, + "provider_connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceProviderConnector" + }, + "description": "define an array of provider connectors that belong to Workspace", + "example": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ] + }, + "providers_json": { + "type": "string", + "description": "providers_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "provisioner": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "terraform", + "enum": [ + "terraform", + "opentofu" + ] + }, + "provisioner_data": { + "type": "string", + "example": "Consectetur omnis laborum." + }, + "provisioner_version": { + "type": "string", + "description": "Provisioner Version defines the tool version to use.", + "default": "latest", + "example": "Consequatur reprehenderit ratione nulla molestiae omnis voluptas." + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Aut eos." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Illo autem velit molestiae nihil natus ullam." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_submodules": { + "type": "string", + "description": "repository_submodules is the instruction about whether to clone submodules in the pipeline step", + "default": "false", + "example": "recursive", + "enum": [ + "false", + "true", + "recursive" + ] + }, + "sparse_checkout": { + "type": "string", + "description": "List of patterens that will be used for sparse checkout option of git clone", + "example": "Omnis voluptatem alias ratione recusandae itaque saepe." + }, + "state_checksum": { + "type": "string", + "description": "state_checksum is the sha-256 checksum of terraform state file", + "example": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f" + }, + "status": { + "type": "string", + "description": "The status of the workspace", + "example": "active", + "enum": [ + "active", + "inactive", + "provisioning", + "destroying", + "failed", + "unknown" + ] + }, + "tags": { + "type": "string", + "description": "Tags associated with the workspace.", + "example": { + "foo": "bar" + } + }, + "terraform_plan_json": { + "type": "string", + "description": "terraform_plan_json is the identifier to the current state file only in JSON format.", + "example": "f9e21473daaa2674d862b67a1339f4570e86de17" + }, + "terraform_state": { + "type": "string", + "description": "terraform_state is the identifier to the plan file used to create the latest state.", + "example": "fc1200c7a7aa52109d762a9f005b149abef01479" + }, + "terraform_state_json": { + "type": "string", + "description": "terraform_state_json is the identifier to the plan file used to create the latest state only in JSON format.", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceTerraformVariableFiles" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "list of terraform variables configured on the workspace.", + "example": { + "Aliquid aut optio impedit.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Asperiores quia.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Esse est quae non hic.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableResource" + } + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 1013475611058176600, + "format": "int64" + }, + "variable_sets": { + "type": "array", + "items": { + "type": "string", + "example": "Ea suscipit itaque cupiditate numquam." + }, + "description": "Attached Variable Sets references", + "example": [ + "Voluptatem enim sapiente quaerat id.", + "Laboriosam placeat ut debitis.", + "At ab eius non cum omnis.", + "Quo rerum itaque quisquam maiores quas quia." + ] + } + }, + "example": { + "account": "lcj", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.113021426, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 3132776709441008000, + "default_pipelines": { + "Ut laboriosam excepturi necessitatibus est assumenda nisi.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Ut quaerat temporibus.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 3109770053123829000, + "identifier": "dab", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "de8", + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + "project": "19", + "provider_connector": "Dolorum eum sit nihil natus.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Tempora aut ut minus aut.", + "provisioner_version": "Porro et nulla aut culpa reprehenderit.", + "repository": "Provident molestiae quo quibusdam.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Vel officia et error.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Aut recusandae culpa.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "failed", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "At qui aut.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "In qui exercitationem.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + }, + "Rerum explicabo blanditiis aut.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 9176457085894098000, + "variable_sets": [ + "Quis neque dolore.", + "Consequatur a inventore." + ] + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "provider_connector", + "provisioner", + "repository_connector", + "terraform_variables", + "environment_variables", + "created", + "updated", + "provisioner_data", + "status", + "tags" + ] + }, + "HarnessIacmWorkspaceList": { + "type": "object", + "properties": { + "items": { + "$ref": "#/components/schemas/WorkspaceResourceCollection" + } + }, + "example": { + "items": [ + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + } + ] + } + }, + "HarnessIacmWorkspaceProvisionerRatio": { + "type": "object", + "properties": { + "provisioner": { + "type": "object", + "description": "Provisioner name", + "example": { + "Dolor non.": 0.5309068943865445, + "Exercitationem tenetur.": 0.24313890745253544 + }, + "additionalProperties": { + "type": "number", + "example": 0.5425502011368796, + "format": "double" + } + }, + "total": { + "type": "number", + "description": "Total number of workspaces", + "example": 0.4869451936461563, + "format": "double" + } + }, + "description": "Represents the ratio of providers used by workspaces.", + "example": { + "provisioner": { + "Aliquam temporibus aut.": 0.6485672592088875, + "Consequatur officia facilis.": 0.4593776329095159, + "Quo et omnis dolorum porro unde.": 0.10182667313601189 + }, + "total": 0.9888742794110067 + }, + "required": [ + "provisioner", + "total" + ] + }, + "HarnessIacmWorkspaceTemplate": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account identifier.", + "example": "vwn", + "minLength": 1, + "maxLength": 128 + }, + "created_at": { + "type": "integer", + "description": "Timestamp when the workspace-template association was created.", + "example": 1627590400, + "format": "int64" + }, + "org": { + "type": "string", + "description": "Organization identifier.", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project identifier.", + "example": "4o", + "minLength": 1, + "maxLength": 128 + }, + "template_id": { + "type": "string", + "description": "Template identifier.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "updated_at": { + "type": "integer", + "description": "Timestamp when the workspace-template association was last updated.", + "example": 1627686800, + "format": "int64" + }, + "version": { + "type": "string", + "description": "Template version associated with the workspace.", + "example": "dn", + "minLength": 1, + "maxLength": 32 + }, + "workspace_id": { + "type": "string", + "description": "Workspace identifier.", + "example": "g4g", + "minLength": 1, + "maxLength": 128 + } + }, + "description": "WorkspaceTemplateResource is the representation for a workspace-template association.", + "example": { + "account": "pb", + "created_at": 1627590400, + "org": "j", + "project": "m", + "template_id": "xn", + "updated_at": 1627686800, + "version": "df8", + "workspace_id": "1" + }, + "required": [ + "workspace_id", + "template_id", + "version", + "created_at", + "updated_at", + "account", + "project", + "org" + ] + }, + "HarnessIacmWorkspaceTemplateReconciliationDiff": { + "type": "object", + "properties": { + "currentWorkspaceYaml": { + "type": "string", + "description": "Current workspace YAML", + "example": "Iusto reiciendis fugiat inventore et." + }, + "reconcilableWorkspaceYaml": { + "type": "string", + "description": "Workspace YAML after applying changes from the template", + "example": "In voluptate animi voluptas eos." + }, + "requiresReconciliation": { + "type": "boolean", + "description": "Indicates if the workspace needs template-based reconciliation", + "example": true + } + }, + "description": "Shows the current and reconciled YAML for a workspace, plus whether reconciliation is needed.", + "example": { + "currentWorkspaceYaml": "Esse est.", + "reconcilableWorkspaceYaml": "Mollitia nemo et optio.", + "requiresReconciliation": false + }, + "required": [ + "currentWorkspaceYaml", + "reconcilableWorkspaceYaml", + "requiresReconciliation" + ] + }, + "HarnessIacmWorkspacedata": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "vq8", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 2486849285992298000, + "format": "int64" + }, + "data_type": { + "type": "string", + "description": "Type of data stored", + "example": "cost_breakdown", + "enum": [ + "plan_human", + "state_raw", + "state_human", + "cost_breakdown", + "cost_diff", + "modules", + "providers" + ] + }, + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ad", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Dolor minus quisquam." + }, + "pipeline_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Sequi dolorum ad iure." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Quae ullam." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7dn", + "minLength": 1, + "maxLength": 128 + }, + "provisioner_type": { + "type": "string", + "description": "Type of provisioner that created the data", + "example": "tf", + "enum": [ + "tf" + ] + }, + "stage_id": { + "type": "string", + "description": "The unique identifier for a stage", + "example": "Sequi quo omnis est fugit." + }, + "workspace": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + } + }, + "description": "WorkspaceDataResource is the representation for a single item of data associated with a workspace.", + "example": { + "account": "4", + "created": 6034928403156190000, + "data_type": "state_human", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "7e", + "pipeline_execution_id": "Cumque nam quas error.", + "pipeline_id": "Explicabo sit.", + "pipeline_stage_id": "Vero eaque omnis vero asperiores.", + "project": "4gn", + "provisioner_type": "tf", + "stage_id": "Laudantium rerum architecto.", + "workspace": "workspace123" + }, + "required": [ + "account", + "org", + "project", + "workspace", + "created", + "id", + "pipeline_id", + "stage_id", + "pipeline_execution_id", + "pipeline_stage_id", + "provisioner_type", + "data_type" + ] + }, + "HarnessIacmWorkspacemodule": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Module key", + "example": "ec2-instance_test" + }, + "source": { + "type": "string", + "description": "Module source", + "example": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete" + }, + "version": { + "type": "string", + "description": "Module version", + "example": "5.0.0" + } + }, + "description": "Represents an individual OpenTofu or Terraform module.", + "example": { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + }, + "required": [ + "key", + "source", + "version" + ] + }, + "HarnessIacmWorkspacevariable": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "856", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 4484985032022438000, + "format": "int64" + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "d", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "kind": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "env", + "enum": [ + "env", + "tf" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "9", + "minLength": 1, + "maxLength": 128 + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 448454300059109570, + "format": "int64" + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Minus earum qui et rerum praesentium." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "secret", + "enum": [ + "string", + "secret" + ] + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Quia non." + } + }, + "description": "WorkspaceVariableResource is the representation for a single environment variable associated with a workspace.", + "example": { + "account": "8y", + "created": 5430482000392355000, + "key": "g1", + "kind": "tf", + "org": "0", + "project": "4", + "updated": 3923136383803276000, + "value": "Et possimus.", + "value_type": "string", + "workspace": "Velit non pariatur odio in doloremque non." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "key", + "value", + "value_type", + "kind", + "created", + "updated" + ] + }, + "HarnessIacmWorkspacevariableCreateresult": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "wu", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 3738373799872919600, + "format": "int64" + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "ei", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "kind": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "tf", + "enum": [ + "env", + "tf" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "zrb", + "minLength": 1, + "maxLength": 128 + }, + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "5v", + "minLength": 1, + "maxLength": 128 + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 659982753261093400, + "format": "int64" + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Quis architecto necessitatibus atque magnam." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "secret", + "enum": [ + "string", + "secret" + ] + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Harum tempore quam et." + } + }, + "example": { + "account": "7w", + "created": 2547467307180914700, + "key": "om0", + "kind": "tf", + "org": "m9", + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + "project": "9v9", + "updated": 508511461049619100, + "value": "Blanditiis repellat illo quo.", + "value_type": "string", + "workspace": "Dolor adipisci qui ut sunt sunt." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "key", + "value", + "value_type", + "kind", + "created", + "updated" + ] + }, + "IACMUnifiedStepWrapper": { + "type": "object", + "properties": { + "dynamic_fields": { + "type": "object", + "description": "Map of dynamic fields for the step", + "example": { + "Atque sequi ut.": "Officia ipsa accusamus molestiae officiis assumenda.", + "Aut quo saepe ea.": "Excepturi et ab natus placeat.", + "Quae aut recusandae consequuntur.": "Modi ipsum." + }, + "additionalProperties": { + "type": "string", + "example": "Quo sit exercitationem optio." + } + }, + "id": { + "type": "string", + "description": "Unique identifier for the step", + "example": "Cumque sit." + }, + "name": { + "type": "string", + "description": "Name of the step", + "example": "Qui aut qui aliquam deleniti." + }, + "yaml": { + "type": "string", + "description": "YAML definition of the step", + "example": "Voluptatem voluptatum facilis dolorem atque quos nam." + } + }, + "description": "Wrapper for unified step data", + "example": { + "dynamic_fields": { + "Aliquam unde.": "Suscipit ab et.", + "Quia minus et earum.": "Eum fugit deleniti quod tempore fuga voluptatem." + }, + "id": "Placeat delectus.", + "name": "Aperiam ut vero ad aspernatur ut voluptate.", + "yaml": "Hic itaque." + }, + "required": [ + "id", + "name", + "yaml" + ] + }, + "IdentifierAccountScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ksl", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "p1v", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "aye", + "identifier": "2" + }, + "required": [ + "account", + "identifier" + ] + }, + "IdentifierOrgScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "30", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "me8", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "pk7", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "uq", + "identifier": "5au", + "org": "cxr" + }, + "required": [ + "account", + "org", + "identifier" + ] + }, + "IdentifierProjScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "o6m", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "xv0", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "mwr", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "pgb", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "gl", + "identifier": "rr", + "org": "g8c", + "project": "6h" + }, + "required": [ + "account", + "org", + "project", + "identifier" + ] + }, + "Inventory": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "z7", + "minLength": 1, + "maxLength": 128 + }, + "data": { + "type": "string", + "description": "The data representing the inventory", + "example": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ge", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "kz", + "minLength": 1, + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Type indicates what kind of inventory this is", + "example": "manual", + "enum": [ + "manual", + "dynamic" + ] + } + }, + "example": { + "account": "hpi", + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "6", + "project": "20", + "type": "dynamic" + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "type", + "data" + ] + }, + "InventoryResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmInventory" + }, + "example": [ + { + "account": "ya", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "ckm", + "project": "0", + "type": "dynamic", + "updated": 1627686800 + }, + { + "account": "ya", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "ckm", + "project": "0", + "type": "dynamic", + "updated": 1627686800 + } + ] + }, + "InventoryUpdate": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "c", + "minLength": 1, + "maxLength": 128 + }, + "data": { + "type": "string", + "description": "The data representing the inventory", + "example": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "se", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ak", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "n", + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "k5u", + "project": "q" + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "type", + "data" + ] + }, + "LicenceResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account identifier", + "example": "x", + "minLength": 1, + "maxLength": 128 + }, + "isLicenced": { + "type": "boolean", + "description": "True when this account is currently licenced to execute apply operations", + "example": false + }, + "isPaid": { + "type": "boolean", + "description": "True when this account is a paid account", + "example": true + }, + "reason": { + "type": "string", + "description": "If the account is not licenced, this is the reason why", + "example": "Non sit earum." + }, + "startTime": { + "type": "integer", + "description": "The unix timestamp of the current period over which usage was calculated", + "example": 1779513636593673200, + "format": "int64" + }, + "total": { + "type": "integer", + "description": "The total number of successful apply operations this account is licenced to perform", + "example": 3490785906481783000, + "format": "int64" + }, + "used": { + "type": "integer", + "description": "The count of successful apply operations already performed", + "example": 6125927302043209000, + "format": "int64" + } + }, + "example": { + "account": "pw", + "isLicenced": true, + "isPaid": true, + "reason": "Deserunt dolores corrupti ex modi.", + "startTime": 4992897461378341000, + "total": 4860873311282487000, + "used": 2379690057880098000 + }, + "required": [ + "account", + "used", + "total", + "startTime", + "isPaid", + "isLicenced" + ] + }, + "ListActivityResourceChangesResponse": { + "type": "object", + "properties": { + "data_sources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "drift_changes": { + "$ref": "#/components/schemas/ChangedResourceCollection" + }, + "outputs": { + "$ref": "#/components/schemas/OutputCollection2" + }, + "pipeline_execution": { + "type": "string", + "description": "the identifier of the pipeline execution changes were made from.", + "example": "Eos dolores aut molestiae omnis voluptas." + }, + "pipeline_stage": { + "type": "string", + "description": "the identifier of the pipeline stage execution changes were made from.", + "example": "Aspernatur quae accusantium est veritatis." + }, + "planned_changes": { + "$ref": "#/components/schemas/ChangedResourceCollection" + }, + "resources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "stage_id": { + "type": "string", + "description": "The stage ID", + "example": "Repellat repudiandae vero tempora voluptas omnis." + }, + "workspace_id": { + "type": "string", + "description": "identifier of the workspace associated with the data", + "example": "Minus dolorum." + } + }, + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Laboriosam sed.", + "pipeline_stage": "Illum numquam impedit.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Dignissimos temporibus vitae et.", + "workspace_id": "Qui libero est quod." + }, + "required": [ + "pipeline_execution", + "drift_changes", + "planned_changes", + "resources", + "data_sources", + "outputs", + "workspace_id", + "stage_id" + ] + }, + "ListCostChangesResponse": { + "type": "object", + "properties": { + "currency": { + "type": "string", + "description": "Currency of the costs", + "example": "Facere id fugiat ducimus." + }, + "diff": { + "type": "object", + "description": "Map of the type of resources and their costs.", + "example": { + "Perspiciatis nam esse voluptatem.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/HarnessIacmCostResourcesByType" + } + }, + "diff_total_monthly_cost": { + "type": "string", + "description": "Difference of cost between workspaces per month", + "example": "Officiis consequuntur ipsum ipsam quibusdam repellat corporis." + }, + "past_total_monthly_cost": { + "type": "string", + "description": "Total cost of the resources per month for the last workspace", + "example": "Dolores velit odit impedit blanditiis." + }, + "percentage_change_total_monthly_cost": { + "type": "integer", + "description": "The change between the costs per month represented as a percentage", + "example": 8160963420764020000, + "format": "int64" + }, + "stage_execution_id": { + "type": "string", + "description": "The stage execution ID", + "example": "Tempore aut modi similique cupiditate omnis." + }, + "stage_id": { + "type": "string", + "description": "The stage ID", + "example": "Ipsa illum tenetur illum." + }, + "total_monthly_cost": { + "type": "string", + "description": "Total cost of the resources per month", + "example": "Dolor quia corporis quam soluta repudiandae aut." + }, + "workspace_id": { + "type": "string", + "description": "The workspace identifier", + "example": "Cumque et sapiente laboriosam qui ea." + } + }, + "example": { + "currency": "Autem consequatur laborum aliquam dignissimos.", + "diff": { + "Voluptatem velit rerum tenetur in assumenda.": { + "current_monthly_cost": "Velit aspernatur sunt modi saepe voluptates quia.", + "diff": [ + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + }, + { + "current_monthly_cost": "Ex facere ducimus accusantium.", + "diff_monthly_cost": "Mollitia saepe.", + "name": "Rerum quos ut ab ullam sit aut.", + "percentage_change_monthly_cost": 3137488374904249000, + "previous_monthly_cost": "Tempore et cupiditate sit.", + "subresources": { + "Doloremque blanditiis quam exercitationem dolore nihil eaque.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Et repellendus id quasi.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + }, + "Ut velit alias quia et dolores ea.": { + "current_monthly_cost": "Modi et.", + "diff_monthly_cost": "Fugiat quidem voluptas enim omnis.", + "percentage_change_monthly_cost": 5342810530471208000, + "previous_monthly_cost": "Quasi saepe earum dolores ea culpa odio." + } + } + } + ], + "diff_monthly_cost": "Beatae praesentium totam sit rerum.", + "percentage_change_monthly_cost": 7483551640382068000, + "previous_monthly_cost": "Aut molestiae maiores repellat tenetur hic." + } + }, + "diff_total_monthly_cost": "Excepturi sit veritatis a unde esse voluptatem.", + "past_total_monthly_cost": "Doloribus et expedita laborum est iure non.", + "percentage_change_total_monthly_cost": 1285818273483066400, + "stage_execution_id": "Harum quo.", + "stage_id": "Dolorem iusto placeat cum tempore quibusdam.", + "total_monthly_cost": "Deleniti veritatis laborum reprehenderit sint voluptatem eveniet.", + "workspace_id": "Et aut illum ad corrupti illum." + }, + "required": [ + "currency", + "diff", + "total_monthly_cost", + "past_total_monthly_cost", + "diff_total_monthly_cost", + "percentage_change_total_monthly_cost", + "stage_id", + "stage_execution_id", + "workspace_id" + ] + }, + "ListCostsResponse": { + "type": "object", + "properties": { + "pageSize": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "totalItems": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "totalPages": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + }, + "workspaces": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmMonthlycost" + }, + "description": "Representation of all the workspaces, and cost information", + "example": [ + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + } + ] + } + }, + "example": { + "pageSize": 50, + "totalItems": 1800, + "totalPages": 36, + "workspaces": [ + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + }, + { + "cost": "12.13", + "created": 1672531200, + "currency": "USD", + "workspace_id": "Eum autem et asperiores saepe.", + "workspace_name": "Aut ut et distinctio porro architecto asperiores." + } + ] + }, + "required": [ + "totalItems", + "totalPages", + "pageSize" + ] + }, + "ListFilterAccountScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ypk", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "5x" + }, + "required": [ + "account" + ] + }, + "ListFilterOrgScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "q", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "a", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "027", + "org": "re" + }, + "required": [ + "account", + "org" + ] + }, + "ListFilterProjScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ul", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "cq", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "5k", + "org": "9e", + "project": "jad" + }, + "required": [ + "account", + "org", + "project" + ] + }, + "ListModuleByIDResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "bs3", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 7735522275708653000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Nulla amet voluptas molestiae nesciunt quis sunt." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Facere qui et nulla voluptatem pariatur voluptatem." + }, + "id": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "module_error": { + "type": "string", + "description": "error while retrieving the module", + "example": "Dolorem rerum." + }, + "name": { + "type": "string", + "description": "module name", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "org that owns the module", + "example": "yfh", + "minLength": 1, + "maxLength": 1024 + }, + "project": { + "type": "string", + "description": "project that owns the module", + "example": "r", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Sed soluta aliquid qui iure." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Molestiae veniam consectetur perferendis magnam excepturi eum." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_url": { + "type": "string", + "description": "Repository url.", + "example": "Qui sit quasi." + }, + "synced": { + "type": "integer", + "description": "Synced is the unix timestamp at which the resource was synced for the last time in milliseconds.", + "example": 8464423547958666000, + "format": "int64" + }, + "system": { + "type": "string", + "description": "system name", + "example": "2nt", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Autem aut ea provident dolor repellat." + }, + "testing_enabled": { + "type": "boolean", + "description": "testing enabled", + "example": true + }, + "testing_metadata": { + "$ref": "#/components/schemas/HarnessIacmModuleRegistryModuleTestingMetadata" + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 6440563463654133000, + "format": "int64" + }, + "versions": { + "type": "array", + "items": { + "type": "string", + "example": "Suscipit recusandae cum." + }, + "description": "versions", + "example": [ + "Iusto maiores et amet aut sed.", + "Impedit sed sunt distinctio.", + "Et eum id." + ] + } + }, + "example": { + "account": "i", + "created": 1226625991908317400, + "description": "Excepturi pariatur similique ut.", + "git_tag_style": "Quidem dolor et architecto.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Omnis natus.", + "name": "66", + "org": "g", + "project": "f6", + "repository": "Et qui quisquam qui.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsum numquam quas maxime voluptatum repellendus et.", + "repository_path": "", + "repository_url": "Explicabo odio et consequuntur enim et ea.", + "synced": 3544482738455839000, + "system": "upw", + "tags": "Quae laborum iure.", + "testing_enabled": false, + "testing_metadata": { + "account": "s", + "org": "4", + "pipelines": [ + "Autem beatae sit ratione odio.", + "Provident voluptatem iure ratione.", + "Cumque eos quaerat quos est.", + "In qui non unde aperiam amet in." + ], + "project": "q0o", + "provider_connector": "Pariatur sunt nulla.", + "provisioner_type": "Est quisquam autem.", + "provisioner_version": "Nemo voluptatem sapiente nisi quae vitae facilis.", + "release_pipeline": "Ipsa perspiciatis est." + }, + "updated": 741396166580921600, + "versions": [ + "Facere voluptas sint cupiditate iusto sed.", + "Dolorum ratione ut.", + "Libero et error consequatur.", + "Distinctio ex excepturi." + ] + }, + "required": [ + "account", + "name", + "system", + "id", + "created", + "updated", + "synced" + ] + }, + "ListModuleMetadataResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account name", + "example": "Nihil sed saepe placeat." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DependenciesMetadata" + }, + "description": "Dependencies of the module", + "example": [ + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + }, + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + }, + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + } + ] + }, + "metadata_error": { + "type": "string", + "description": "error while retrieving the module", + "example": "Cumque deserunt earum vel." + }, + "module_version": { + "type": "string", + "description": "module version", + "example": "Sit ratione." + }, + "name": { + "type": "string", + "description": "module name", + "example": "Blanditiis eum eaque rerum." + }, + "outputs": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OutputMetadata" + }, + "description": "Outputs of the module", + "example": [ + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + } + ] + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProviderMetadata" + }, + "description": "Providers of the module", + "example": [ + { + "provider_name": "Aut doloribus fuga quasi dolores iure.", + "provider_source": "Neque asperiores quo aliquid.", + "provider_version": "Quod assumenda molestias aut." + }, + { + "provider_name": "Aut doloribus fuga quasi dolores iure.", + "provider_source": "Neque asperiores quo aliquid.", + "provider_version": "Quod assumenda molestias aut." + } + ] + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceMetadata" + }, + "description": "Resources of the module", + "example": [ + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + }, + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + }, + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + }, + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + } + ] + }, + "submodule": { + "type": "array", + "items": { + "type": "string", + "example": "Illum aut quis voluptas." + }, + "description": "Submodules of the module", + "example": [ + "Temporibus saepe aliquid occaecati labore consequuntur.", + "Magni officia quaerat.", + "Dolorum aliquam sed quia sed." + ] + }, + "system": { + "type": "string", + "description": "system name", + "example": "Quo consectetur." + }, + "variables": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableMetadata" + }, + "description": "Variables of the module", + "example": [ + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + }, + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + } + ] + } + }, + "example": { + "account": "Minima dolor labore.", + "dependencies": [ + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + }, + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + }, + { + "dependency_name": "Consequuntur ipsam.", + "dependency_source": "Aliquam doloremque ea quasi a.", + "dependency_version": "Voluptatem aliquam est nobis laudantium id." + } + ], + "metadata_error": "Pariatur assumenda nihil voluptatem.", + "module_version": "Minus animi dolorem praesentium consequuntur.", + "name": "Sit dolore quas minus.", + "outputs": [ + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + }, + { + "output_description": "Consequatur et ipsa reprehenderit dolorem sit.", + "output_name": "Fugit perferendis asperiores architecto a quidem debitis.", + "output_sensitive": true + } + ], + "providers": [ + { + "provider_name": "Aut doloribus fuga quasi dolores iure.", + "provider_source": "Neque asperiores quo aliquid.", + "provider_version": "Quod assumenda molestias aut." + }, + { + "provider_name": "Aut doloribus fuga quasi dolores iure.", + "provider_source": "Neque asperiores quo aliquid.", + "provider_version": "Quod assumenda molestias aut." + }, + { + "provider_name": "Aut doloribus fuga quasi dolores iure.", + "provider_source": "Neque asperiores quo aliquid.", + "provider_version": "Quod assumenda molestias aut." + } + ], + "resources": [ + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + }, + { + "resource_name": "Aut eum.", + "resource_type": "Ipsum voluptates quia sed qui optio." + } + ], + "submodule": [ + "Quis ut quidem earum saepe.", + "Sequi iusto.", + "Tempore voluptatem.", + "Qui delectus libero qui quasi voluptatum." + ], + "system": "Doloribus ipsam veritatis quas nihil.", + "variables": [ + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + }, + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + }, + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + }, + { + "variable_default": "Nihil rerum debitis vel iure adipisci similique.", + "variable_description": "Voluptatibus ullam aut iusto.", + "variable_name": "Sit et temporibus autem voluptatibus eveniet.", + "variable_required": false, + "variable_sensitive": true, + "variable_type": "Facere cupiditate." + } + ] + }, + "required": [ + "account", + "name", + "system", + "module_version", + "outputs", + "providers", + "resources", + "variables" + ] + }, + "ListModuleVersionsResponse": { + "type": "object", + "properties": { + "modules": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmModuleRegistryVersions" + }, + "description": "list of versions for a given module", + "example": [ + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + } + ] + } + }, + "example": { + "modules": [ + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + }, + { + "versions": [ + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + }, + { + "git_version": "Aperiam quidem exercitationem inventore voluptas aut officia.", + "module_version": "Voluptatem libero quam quis maiores." + } + ] + } + ] + }, + "required": [ + "modules" + ] + }, + "ListPipelinesResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "n1", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "nc", + "minLength": 1, + "maxLength": 128 + }, + "pipelines": { + "type": "array", + "items": { + "type": "string", + "example": "Illum voluptatem et." + }, + "description": "Array of pipelines that belong to a specific workspace", + "example": [ + "Culpa officia soluta omnis veritatis at rerum.", + "Nemo nisi.", + "Labore quia.", + "Sit iure fugit doloribus voluptatem eum." + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "2", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "ox", + "org": "l32", + "pipelines": [ + "Est sit vitae dolor quaerat illo.", + "Quis et veniam blanditiis." + ], + "project": "e7y" + }, + "required": [ + "account", + "org", + "project" + ] + }, + "ListProviderVersionsResponse": { + "type": "object", + "properties": { + "versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmProviderRegistryProviderVersion" + }, + "description": "List of available provider versions", + "example": [ + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + } + ] + } + }, + "description": "List of provider versions", + "example": { + "versions": [ + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + }, + { + "platforms": [ + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + }, + { + "arch": "Fugiat aut et.", + "os": "Quo nulla sit consequatur." + } + ], + "protocols": [ + "Est quas ipsam.", + "Nam eveniet.", + "Mollitia libero.", + "Veniam vel a pariatur vero." + ], + "version": "Dolorem et et quidem eos cumque." + } + ] + }, + "required": [ + "versions" + ] + }, + "ListProvisionersRatioResponse": { + "type": "object", + "properties": { + "provisioner": { + "type": "object", + "description": "Provisioner name", + "example": { + "Officiis quidem.": 0.25293087861273533 + }, + "additionalProperties": { + "type": "number", + "example": 0.8296073711114896, + "format": "double" + } + }, + "total": { + "type": "number", + "description": "Total number of workspaces", + "example": 0.23637948902747707, + "format": "double" + } + }, + "description": "List of provisioners ratio", + "example": { + "provisioner": { + "Ab officiis nam quod magnam.": 0.6107344248635979, + "Nobis et harum quidem sequi tempora.": 0.9929536873599855 + }, + "total": 0.0896700244519035 + }, + "required": [ + "provisioner", + "total" + ] + }, + "ListResourceChangesResponse": { + "type": "object", + "properties": { + "data_sources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "drift_changes": { + "$ref": "#/components/schemas/ChangedResourceCollection" + }, + "outputs": { + "$ref": "#/components/schemas/OutputCollection2" + }, + "pipeline_execution": { + "type": "string", + "description": "the identifier of the pipeline execution changes were made from.", + "example": "Consequuntur aliquam natus." + }, + "pipeline_stage": { + "type": "string", + "description": "the identifier of the pipeline stage execution changes were made from.", + "example": "Dolor beatae rerum soluta in porro." + }, + "planned_changes": { + "$ref": "#/components/schemas/ChangedResourceCollection" + }, + "resources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "stage_id": { + "type": "string", + "description": "The stage ID", + "example": "Laudantium velit cumque id qui facilis et." + }, + "workspace_id": { + "type": "string", + "description": "identifier of the workspace associated with the data", + "example": "In est." + } + }, + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "drift_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ], + "pipeline_execution": "Iste minima ut dolor.", + "pipeline_stage": "Atque et quis explicabo est.", + "planned_changes": [ + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + }, + { + "change": "added", + "change_count": 10, + "changes": { + "Hic ut deleniti autem animi.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "Repellendus magni sunt pariatur nihil in quia.": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + } + }, + "drift": false, + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "type": "S3 Bucket" + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "stage_id": "Ut saepe temporibus vero accusantium rem provident.", + "workspace_id": "Aspernatur iusto." + }, + "required": [ + "pipeline_execution", + "drift_changes", + "planned_changes", + "resources", + "data_sources", + "outputs", + "workspace_id", + "stage_id" + ] + }, + "ListResourcesResponse": { + "type": "object", + "properties": { + "data_sources": { + "$ref": "#/components/schemas/ResourceCollection" + }, + "outputs": { + "$ref": "#/components/schemas/OutputCollection" + }, + "resources": { + "$ref": "#/components/schemas/ResourceCollection" + } + }, + "example": { + "data_sources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ], + "outputs": [ + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + } + ], + "resources": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ] + }, + "required": [ + "resources", + "data_sources", + "outputs" + ] + }, + "LockInfo": { + "type": "object", + "properties": { + "created": { + "type": "string", + "description": "Time that the lock was taken.", + "example": "2023-07-03T20:16:18.382839Z" + }, + "id": { + "type": "string", + "description": "Unique ID for the lock. Generated by the terraform cli.", + "example": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "minLength": 1 + }, + "info": { + "type": "string", + "description": "Extra information to store with the lock.", + "default": "", + "example": "production workspace lock" + }, + "operation": { + "type": "string", + "description": "Terraform operation.", + "example": "OperationTypePlan" + }, + "path": { + "type": "string", + "description": "Path to the state file when applicable.", + "default": "", + "example": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c" + }, + "version": { + "type": "string", + "description": "Terraform version.", + "example": "1.0.0" + }, + "who": { + "type": "string", + "description": "The machine user who is performing the operation.", + "default": "", + "example": "user1" + } + }, + "description": "Terraform lock information.", + "example": { + "created": "2023-07-03T20:16:18.382839Z", + "id": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "info": "production workspace lock", + "operation": "OperationTypePlan", + "path": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c", + "version": "1.0.0", + "who": "user1" + }, + "required": [ + "id", + "operation", + "version", + "created" + ] + }, + "LockWorkspaceRequest": { + "type": "object", + "properties": { + "created": { + "type": "string", + "description": "Time that the lock was taken.", + "example": "2023-07-03T20:16:18.382839Z" + }, + "id": { + "type": "string", + "description": "Unique ID for the lock. Generated by the terraform cli.", + "example": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "minLength": 1 + }, + "info": { + "type": "string", + "description": "Extra information to store with the lock.", + "default": "", + "example": "production workspace lock" + }, + "operation": { + "type": "string", + "description": "Terraform operation.", + "example": "OperationTypePlan" + }, + "path": { + "type": "string", + "description": "Path to the state file when applicable.", + "default": "", + "example": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c" + }, + "version": { + "type": "string", + "description": "Terraform version.", + "example": "1.0.0" + }, + "who": { + "type": "string", + "description": "The machine user who is performing the operation.", + "default": "", + "example": "user1" + } + }, + "example": { + "created": "2023-07-03T20:16:18.382839Z", + "id": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "info": "production workspace lock", + "operation": "OperationTypePlan", + "path": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c", + "version": "1.0.0", + "who": "user1" + }, + "required": [ + "id", + "operation", + "version", + "created" + ] + }, + "ManualInventory": { + "type": "object", + "properties": { + "hosts": { + "type": "object", + "description": "The hosts in the inventory", + "example": { + "host1.example.com": null, + "host2.example.com": null + }, + "additionalProperties": true + }, + "vars": { + "type": "object", + "description": "The vars in the inventory", + "example": { + "704b228e-728d-4857-afca-b036c27abdd8": { + "key": "Var1", + "value": "value1", + "value_type": "string" + }, + "a213b035-1c48-42ed-b914-7056ca4ba73c": { + "file_name": "Var2", + "key": "Var2", + "value": "account.MySecret", + "value_type": "secret" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/AnsibleVariable" + } + } + }, + "example": { + "hosts": { + "host1.example.com": null, + "host2.example.com": null + }, + "vars": { + "704b228e-728d-4857-afca-b036c27abdd8": { + "key": "Var1", + "value": "value1", + "value_type": "string" + }, + "a213b035-1c48-42ed-b914-7056ca4ba73c": { + "file_name": "Var2", + "key": "Var2", + "value": "account.MySecret", + "value_type": "secret" + } + } + }, + "required": [ + "hosts" + ] + }, + "ManualInventoryResource": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "zb3", + "minLength": 1, + "maxLength": 128 + }, + "data": { + "$ref": "#/components/schemas/ManualInventory" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "an", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "1xn", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "j", + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "a", + "project": "6as" + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "data", + "type" + ] + }, + "Module": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "l", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Sint consequatur tempore dolorem fugit doloribus." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Nulla consequatur quasi quo repellendus ea dignissimos." + }, + "name": { + "type": "string", + "description": "module name", + "example": "y6s", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "org that owns the module", + "example": "2", + "minLength": 1, + "maxLength": 1024 + }, + "project": { + "type": "string", + "description": "project that owns the module", + "example": "ko", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Itaque sed omnis." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Exercitationem non unde." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "v7", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Totam unde debitis quam." + } + }, + "description": "Describes the attributes of a Module in the module registry", + "example": { + "account": "7", + "description": "Rerum tempore.", + "git_tag_style": "Ut qui.", + "name": "3t1", + "org": "n9", + "project": "5wo", + "repository": "Reprehenderit et nihil est ipsa error.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Eum asperiores architecto vero.", + "repository_path": "", + "system": "c", + "tags": "In possimus." + } + }, + "ModuleData": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account name", + "example": "Occaecati cupiditate magnam voluptatem sit deleniti sunt." + }, + "download_url": { + "type": "string", + "description": "download url of the module", + "example": "Voluptatum doloremque omnis fuga nesciunt dolorem dignissimos." + }, + "error": { + "type": "object", + "description": "error from the tag operation", + "example": { + "Et est veritatis non reprehenderit a.": "Occaecati laboriosam doloribus nisi quo consequatur ratione.", + "Sit iure iure nihil provident.": "Incidunt velit est voluptatum voluptas quisquam." + }, + "additionalProperties": { + "type": "string", + "example": "Voluptatum eveniet iure." + } + }, + "examples_paths": { + "type": "array", + "items": { + "type": "string", + "example": "Sed nihil reiciendis omnis quis rerum aut." + }, + "description": "path of the examples relative to the module", + "example": [ + "Debitis soluta nesciunt quia voluptas.", + "Quis libero praesentium earum.", + "Illo repellendus aut occaecati nesciunt nisi ut.", + "Ex modi assumenda qui vero quis fugit." + ] + }, + "git_tag": { + "type": "string", + "description": "git tag of the module", + "example": "Quia ea." + }, + "metadata": { + "type": "string", + "description": "metadata to be parsed", + "example": "Exercitationem laudantium consequuntur esse esse." + }, + "name": { + "type": "string", + "description": "module name", + "example": "Quod maiores est ut sint." + }, + "repo_url": { + "type": "string", + "description": "url pointing to the repo", + "example": "Ullam exercitationem animi enim occaecati qui enim." + }, + "submodule_name": { + "type": "string", + "description": "name of the submodule been processed", + "example": "Aut placeat deleniti veritatis." + }, + "submodule_paths": { + "type": "array", + "items": { + "type": "string", + "example": "Est ipsa commodi enim adipisci doloribus sunt." + }, + "description": "path of the submodules relative to the module", + "example": [ + "Consequatur ut nulla.", + "Temporibus iste.", + "Et debitis non molestias qui dolor dolor." + ] + }, + "system": { + "type": "string", + "description": "system name", + "example": "Atque corrupti." + }, + "version": { + "type": "string", + "description": "version of the module", + "example": "Qui sed itaque." + } + }, + "description": "Type used to create an entry in the module metadata table related with a module and a specific version", + "example": { + "account": "Repellendus quidem corporis aut.", + "download_url": "Repellat voluptate quos qui consequatur eum unde.", + "error": { + "Quibusdam optio et officia quis.": "Vel tempore libero enim quasi aliquam." + }, + "examples_paths": [ + "Officia facere ratione sit omnis quasi.", + "Voluptatem id exercitationem omnis voluptas sit." + ], + "git_tag": "Enim expedita non iste.", + "metadata": "Quam optio necessitatibus aut.", + "name": "Eaque ea perferendis exercitationem.", + "repo_url": "Culpa dolores natus consectetur iste.", + "submodule_name": "Soluta est non ea.", + "submodule_paths": [ + "Adipisci repellendus.", + "Ipsum voluptatem.", + "Temporibus qui laborum incidunt accusamus." + ], + "system": "Corrupti deserunt a amet.", + "version": "Et iusto autem ipsam." + }, + "required": [ + "account", + "name", + "system", + "version", + "metadata", + "download_url", + "git_tag" + ] + }, + "ModuleEvent": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "53", + "minLength": 1, + "maxLength": 128 + }, + "eventType": { + "type": "string", + "description": "The type of event that occurred", + "example": "Ducimus non nisi." + }, + "metadata": { + "$ref": "#/components/schemas/ModuleExecutionMetadata" + }, + "moduleId": { + "type": "string", + "description": "module id associated with this event", + "example": "2e", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ur", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7b", + "minLength": 1, + "maxLength": 128 + } + }, + "description": "ModuleEvent defines an individual module event", + "example": { + "account": "g", + "eventType": "Delectus sit tenetur.", + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "6", + "org": "j", + "project": "e" + }, + "required": [ + "account", + "org", + "project", + "moduleId", + "eventType" + ] + }, + "ModuleExecution": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "1hz", + "minLength": 1, + "maxLength": 128 + }, + "moduleId": { + "type": "string", + "description": "The unique identifier for the associated module", + "example": "Consequatur occaecati saepe." + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "3", + "minLength": 1, + "maxLength": 128 + }, + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Voluptatem temporibus ea ipsum consequatur." + }, + "pipelineExecutionId": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Itaque sunt." + }, + "pipelineStageId": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Facere quia qui quibusdam." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "wus", + "minLength": 1, + "maxLength": 128 + } + }, + "description": "ModuleExecution defines an individual execution of a module pipeline", + "example": { + "account": "rh", + "moduleId": "In eligendi ratione commodi.", + "org": "zq", + "pipeline": "Nam ullam veniam et.", + "pipelineExecutionId": "Accusantium quo eum velit.", + "pipelineStageId": "Illo et ea dolores officiis rerum rerum.", + "project": "y8" + }, + "required": [ + "account", + "org", + "project", + "pipelineExecutionId", + "pipelineStageId", + "moduleId", + "pipeline" + ] + }, + "ModuleExecutionMetadata": { + "type": "object", + "properties": { + "pipeline": { + "type": "string", + "description": "The unique identifier of any associated pipeline", + "example": "Reiciendis reprehenderit impedit non quam." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for any associated pipeline execution", + "example": "Consequuntur voluptatem temporibus fugiat voluptatibus." + }, + "pipeline_execution_number": { + "type": "string", + "description": "The unique number for any associated pipeline execution", + "example": "Doloremque et sit." + }, + "pipeline_name": { + "type": "string", + "description": "The name of any associated pipeline", + "example": "Laudantium earum cupiditate dolorum sunt architecto voluptatem." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Perspiciatis eum aut autem." + }, + "trigger": { + "type": "object", + "description": "Trigger info for any associated pipeline execution", + "example": { + "Ad accusantium.": "Eius eos quia quaerat.", + "Voluptatum facere omnis sed.": "Non aut tempore voluptas voluptatum cum ipsum." + }, + "additionalProperties": true + } + }, + "example": { + "pipeline": "Voluptatem placeat autem.", + "pipeline_execution_id": "Voluptatem quis expedita atque rerum.", + "pipeline_execution_number": "Nemo laborum accusantium dolorum sequi.", + "pipeline_name": "Necessitatibus provident laboriosam qui.", + "pipeline_stage_id": "Hic enim autem eius explicabo.", + "trigger": { + "Non necessitatibus quo quidem.": "Maxime provident." + } + } + }, + "ModuleExecutionResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmModuleexecutionresource" + }, + "example": [ + { + "account": "p", + "created": 7292717116780788000, + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "Modi atque cum a.", + "org": "5q", + "project": "ax2", + "status": "Qui numquam." + }, + { + "account": "p", + "created": 7292717116780788000, + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "Modi atque cum a.", + "org": "5q", + "project": "ax2", + "status": "Qui numquam." + }, + { + "account": "p", + "created": 7292717116780788000, + "metadata": { + "pipeline": "Fuga aut.", + "pipeline_execution_id": "Quasi voluptate.", + "pipeline_execution_number": "Quidem est impedit alias aut eaque.", + "pipeline_name": "Corrupti dignissimos magnam rerum.", + "pipeline_stage_id": "Quos eum sunt eum.", + "trigger": { + "Dolores tempora maxime.": "Quo voluptas.", + "Perspiciatis neque.": "Totam quae iste ab." + } + }, + "moduleId": "Modi atque cum a.", + "org": "5q", + "project": "ax2", + "status": "Qui numquam." + } + ] + }, + "ModuleMetadataRequest": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account name", + "example": "Temporibus architecto ut." + }, + "module_id": { + "type": "string", + "description": "module id", + "example": "Consequatur impedit consequuntur non voluptates iusto architecto." + }, + "submodule": { + "type": "string", + "description": "submodule name", + "example": "Beatae deserunt." + }, + "version": { + "type": "string", + "description": "version of the module", + "example": "Sed ratione doloribus enim." + } + }, + "description": "Type to retrieve the metadata related to a specific version of a module", + "example": { + "account": "Qui dolorum.", + "module_id": "Repellendus autem magnam facilis et voluptatum ut.", + "submodule": "Eius beatae ut id temporibus.", + "version": "Exercitationem accusamus enim enim." + }, + "required": [ + "module_id", + "account", + "version" + ] + }, + "ModuleRegistryCreateModuleResponseBody": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "tl", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 4369087607271678500, + "format": "int64" + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Minus rerum qui." + }, + "id": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "name": { + "type": "string", + "description": "module name", + "example": "jig", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Eos itaque." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Cupiditate nemo facilis commodi." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "bv", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Rerum sit occaecati." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 7333091296739964000, + "format": "int64" + } + }, + "description": "Create-ModuleResponseBody result type (default view)", + "example": { + "account": "k54", + "created": 2583867649838060500, + "description": "Saepe libero harum tenetur esse odit.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "name": "tuc", + "repository": "Eum quia consequatur ducimus.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ab officiis dolor quia dolore fugit.", + "repository_path": "", + "system": "h8w", + "tags": "Similique et dolores aut reprehenderit.", + "updated": 5136111867106284000 + }, + "required": [ + "account", + "name", + "system", + "id", + "created", + "updated" + ] + }, + "ModuleRequest": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "a", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Quidem dolores eaque omnis est." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Inventore voluptate illo." + }, + "name": { + "type": "string", + "description": "module name", + "example": "die", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "org that owns the module", + "example": "idu", + "minLength": 1, + "maxLength": 1024 + }, + "project": { + "type": "string", + "description": "project that owns the module", + "example": "i", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Laudantium qui omnis commodi velit amet sunt." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Sint maiores qui." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "5", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Suscipit molestiae velit magni rerum minus." + } + }, + "description": "Type used to create a module from a request", + "example": { + "account": "23", + "description": "Et voluptas itaque molestiae consequuntur laborum non.", + "git_tag_style": "Consectetur odit delectus.", + "name": "uzd", + "org": "x", + "project": "2", + "repository": "Repellendus itaque iusto soluta ut error.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Omnis ut sed dolores officia modi eveniet.", + "repository_path": "", + "system": "pni", + "tags": "Unde sed molestias dolores iusto temporibus quo." + }, + "required": [ + "account", + "name", + "system" + ] + }, + "ModuleResource": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "yg", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 5371621013403215000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Nisi quia animi quo eaque facilis qui." + }, + "id": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "module_error": { + "type": "string", + "description": "error while retrieving the module", + "example": "Aspernatur unde voluptatibus." + }, + "name": { + "type": "string", + "description": "module name", + "example": "6h", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Atque cum esse ipsa." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Praesentium ut minima." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_url": { + "type": "string", + "description": "Repository url.", + "example": "Perspiciatis sunt quo." + }, + "synced": { + "type": "integer", + "description": "Synced is the unix timestamp at which the resource was synced for the last time in milliseconds.", + "example": 7608094889781982000, + "format": "int64" + }, + "system": { + "type": "string", + "description": "system name", + "example": "oc", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Inventore non." + }, + "testing_enabled": { + "type": "boolean", + "description": "testing enabled", + "example": true + }, + "testing_metadata": { + "$ref": "#/components/schemas/ModuleTestingMetadata" + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 4084132086015602700, + "format": "int64" + }, + "versions": { + "type": "array", + "items": { + "type": "string", + "example": "Libero id deserunt et fugit et dolor." + }, + "description": "versions", + "example": [ + "Delectus et qui consequuntur.", + "Eum ea et." + ] + } + }, + "description": "ModuleResource result type (default view)", + "example": { + "account": "c", + "created": 4695352233410495000, + "description": "Odio iste veritatis.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Ex non sunt ut voluptas quisquam.", + "name": "or", + "repository": "Quia aut aut qui quos aut voluptates.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Fugit et ex quibusdam officia.", + "repository_path": "", + "repository_url": "In repellat.", + "synced": 1225421115241457000, + "system": "2", + "tags": "Magni qui enim fuga tempora ut nihil.", + "testing_enabled": true, + "testing_metadata": { + "account": "r", + "org": "x", + "pipelines": [ + "Quia iste nobis dolor eligendi mollitia.", + "Odio ipsam laborum.", + "Aspernatur quia corrupti vel accusantium eos voluptas.", + "Quia quae blanditiis nisi." + ], + "project": "qv", + "provider_connector": "Et qui fugiat.", + "provisioner_type": "Tempore illo saepe voluptas.", + "provisioner_version": "Aut alias qui consectetur.", + "release_pipeline": "Dolores nam consequatur cum totam." + }, + "updated": 360395357808697000, + "versions": [ + "Voluptatem eligendi ut eum est atque.", + "Dolorem expedita voluptas." + ] + }, + "required": [ + "account", + "name", + "system", + "id", + "created", + "updated", + "synced" + ] + }, + "ModuleResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ModuleResource" + }, + "description": "ModuleResourceCollection is the result type for an array of ModuleResource (default view)", + "example": [ + { + "account": "grs", + "created": 2771718328132106000, + "description": "Sunt vel est.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Qui esse qui omnis.", + "name": "ljs", + "repository": "Rem deleniti repellat atque enim voluptas earum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Saepe molestias.", + "repository_path": "", + "repository_url": "Non omnis iusto perspiciatis occaecati iste.", + "synced": 4758614571764785000, + "system": "mf", + "tags": "Nihil aut.", + "testing_enabled": true, + "testing_metadata": { + "account": "r", + "org": "x", + "pipelines": [ + "Quia iste nobis dolor eligendi mollitia.", + "Odio ipsam laborum.", + "Aspernatur quia corrupti vel accusantium eos voluptas.", + "Quia quae blanditiis nisi." + ], + "project": "qv", + "provider_connector": "Et qui fugiat.", + "provisioner_type": "Tempore illo saepe voluptas.", + "provisioner_version": "Aut alias qui consectetur.", + "release_pipeline": "Dolores nam consequatur cum totam." + }, + "updated": 1501293329391327200, + "versions": [ + "Qui sed quibusdam id nostrum.", + "Est deleniti.", + "Aut quibusdam omnis ullam quod eaque.", + "Incidunt eum qui odio eligendi hic dolores." + ] + }, + { + "account": "grs", + "created": 2771718328132106000, + "description": "Sunt vel est.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "module_error": "Qui esse qui omnis.", + "name": "ljs", + "repository": "Rem deleniti repellat atque enim voluptas earum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Saepe molestias.", + "repository_path": "", + "repository_url": "Non omnis iusto perspiciatis occaecati iste.", + "synced": 4758614571764785000, + "system": "mf", + "tags": "Nihil aut.", + "testing_enabled": true, + "testing_metadata": { + "account": "r", + "org": "x", + "pipelines": [ + "Quia iste nobis dolor eligendi mollitia.", + "Odio ipsam laborum.", + "Aspernatur quia corrupti vel accusantium eos voluptas.", + "Quia quae blanditiis nisi." + ], + "project": "qv", + "provider_connector": "Et qui fugiat.", + "provisioner_type": "Tempore illo saepe voluptas.", + "provisioner_version": "Aut alias qui consectetur.", + "release_pipeline": "Dolores nam consequatur cum totam." + }, + "updated": 1501293329391327200, + "versions": [ + "Qui sed quibusdam id nostrum.", + "Est deleniti.", + "Aut quibusdam omnis ullam quod eaque.", + "Incidunt eum qui odio eligendi hic dolores." + ] + } + ] + }, + "ModuleTagRequest": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "vi3", + "minLength": 1, + "maxLength": 128 + }, + "error": { + "type": "object", + "description": "error from the tag operation", + "example": { + "Harum repellendus consequatur.": "Nobis non ea.", + "Inventore officia.": "Non omnis reprehenderit voluptatem inventore aspernatur.", + "Quia est non et quod vitae doloremque.": "Eos fugit ratione debitis rerum." + }, + "additionalProperties": { + "type": "string", + "example": "Qui similique perferendis voluptates id quia." + } + }, + "name": { + "type": "string", + "description": "module name", + "example": "vum", + "minLength": 1, + "maxLength": 128 + }, + "system": { + "type": "string", + "description": "system name", + "example": "b2c", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "array", + "items": { + "type": "string", + "example": "Provident nulla consequuntur eveniet hic dolore sed." + }, + "description": "tags defining the module", + "example": [ + "Sed nostrum et aut.", + "Asperiores impedit harum tempora dolor laborum.", + "Quasi ea porro commodi velit esse.", + "Saepe qui iure ea est accusamus." + ] + } + }, + "description": "Type used to create a request to post data in relation to the tags of a module", + "example": { + "account": "p", + "error": { + "Aperiam provident veniam explicabo maxime quia reiciendis.": "Alias temporibus voluptates itaque nisi recusandae dicta.", + "Blanditiis necessitatibus numquam voluptatem porro.": "Excepturi ea vel.", + "Et porro est qui consequuntur.": "Quidem laudantium modi dolores tenetur aut facilis." + }, + "name": "wx", + "system": "8", + "tags": [ + "Perspiciatis necessitatibus et.", + "Itaque officiis unde molestiae a iure.", + "Dolorem aut recusandae est eius quibusdam." + ] + }, + "required": [ + "account", + "name", + "system" + ] + }, + "ModuleTestingMetadata": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "y", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "9", + "minLength": 1, + "maxLength": 128 + }, + "pipelines": { + "type": "array", + "items": { + "type": "string", + "example": "Et dolore nesciunt debitis." + }, + "description": "pipelines where the testing is enabled", + "example": [ + "Aut quia odit quia.", + "Est sit alias debitis omnis quo.", + "Sequi voluptatem omnis veritatis." + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "fy", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "provider connector for testing purposes", + "example": "Et eligendi provident placeat maxime quasi." + }, + "provisioner_type": { + "type": "string", + "description": "provisioner type for testing purposes", + "example": "Ut nisi ea." + }, + "provisioner_version": { + "type": "string", + "description": "provisioner version for testing purposes", + "example": "Qui id sit perspiciatis deserunt." + }, + "release_pipeline": { + "type": "string", + "description": "release pipeline", + "example": "Aut quae suscipit." + } + }, + "description": "ModuleTestingMetadata result type (default view)", + "example": { + "account": "nfu", + "org": "l", + "pipelines": [ + "Culpa quo aut odio necessitatibus.", + "Quaerat dolorem provident ratione autem vitae nisi.", + "Ut consequuntur atque." + ], + "project": "t", + "provider_connector": "Assumenda ut tempora.", + "provisioner_type": "Architecto facere qui sed adipisci ut ratione.", + "provisioner_version": "Ipsa est expedita in molestiae.", + "release_pipeline": "Et nemo dolor molestiae perferendis voluptates rem." + }, + "required": [ + "account", + "org", + "project", + "provisioner_type", + "provisioner_version", + "provider_connector", + "pipelines" + ] + }, + "ModuleUpdate": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "account that owns the module", + "example": "mn", + "minLength": 1, + "maxLength": 128 + }, + "description": { + "type": "string", + "description": "description of the module", + "example": "Placeat qui laboriosam et porro dolorum." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Et quaerat vero sit libero saepe atque." + }, + "id": { + "type": "string", + "description": "module id", + "example": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff" + }, + "name": { + "type": "string", + "description": "module name", + "example": "lmy", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "org that owns the module", + "example": "fk", + "minLength": 1, + "maxLength": 1024 + }, + "project": { + "type": "string", + "description": "project that owns the module", + "example": "5", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Voluptatem earum qui voluptate necessitatibus." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Quo sunt delectus." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "l", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Omnis accusamus saepe provident optio cum." + } + }, + "description": "ModuleUpdate defines the field of a module that can be updated in the module registry", + "example": { + "account": "e", + "description": "Vero sit dolores et.", + "git_tag_style": "In qui.", + "id": "aaaaaaaa-bbbb-cccc-eeee-ffffffffffff", + "name": "0l", + "org": "xj1", + "project": "th", + "repository": "Quae reiciendis voluptatum consectetur et.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Quia eaque aut in ab explicabo et.", + "repository_path": "", + "system": "uja", + "tags": "Blanditiis nemo." + }, + "required": [ + "id", + "account", + "name", + "system" + ] + }, + "OutputCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmOutput" + }, + "example": [ + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + }, + { + "name": "instance_public_ip", + "sensitive": true, + "value": "Aut voluptas." + } + ] + }, + "OutputCollection2": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmChangedOutput" + }, + "example": [ + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + }, + { + "change": "added", + "name": "instance_public_ip", + "new": "new value", + "old": "old value", + "sensitive": true + } + ] + }, + "OutputMetadata": { + "type": "object", + "properties": { + "output_description": { + "type": "string", + "description": "Output description", + "example": "Odio culpa tenetur doloremque." + }, + "output_name": { + "type": "string", + "description": "Output name", + "example": "Expedita velit in dolor illo." + }, + "output_sensitive": { + "type": "boolean", + "description": "Output sensitivity", + "example": false + } + }, + "example": { + "output_description": "Consequuntur velit.", + "output_name": "Minima rerum.", + "output_sensitive": false + } + }, + "Playbook": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "x", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Exercitationem suscipit labore." + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test playbook", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "wm", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "x", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the playbook should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the playbook should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this playbook.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the playbook resides.", + "default": "", + "example": "playbooks/" + } + }, + "example": { + "account": "6qv", + "identifier": "Est hic.", + "name": "test playbook", + "org": "uhk", + "project": "hx", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/" + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "repository_path" + ] + }, + "PlaybookResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmPlaybook" + }, + "example": [ + { + "account": "e", + "created": 1627590400, + "identifier": "Mollitia sed minus culpa.", + "name": "test playbook", + "org": "vz", + "project": "m", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + }, + { + "account": "e", + "created": 1627590400, + "identifier": "Mollitia sed minus culpa.", + "name": "test playbook", + "org": "vz", + "project": "m", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + }, + { + "account": "e", + "created": 1627590400, + "identifier": "Mollitia sed minus culpa.", + "name": "test playbook", + "org": "vz", + "project": "m", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + } + ] + }, + "PlaybookUpdate": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "8n5", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Odio voluptatem reiciendis." + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test playbook", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "v", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "sv", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the playbook should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the playbook should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this playbook.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the playbook resides.", + "default": "", + "example": "playbooks/" + } + }, + "example": { + "account": "ew", + "identifier": "Ea corrupti est nihil ducimus soluta vel.", + "name": "test playbook", + "org": "b2b", + "project": "6xe", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/" + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "repository_path" + ] + }, + "PluginReportedVersion": { + "type": "object", + "properties": { + "commit": { + "type": "string", + "description": "Build identifier", + "example": "96381692bf3a2bd7904769c6886e832435768b57" + }, + "version": { + "type": "string", + "description": "Version number", + "example": "v0.123.0" + } + }, + "description": "Plugin Reported Version", + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "version": "v0.123.0" + }, + "required": [ + "version", + "commit" + ] + }, + "IaCMPolicy": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Harness account ID associated with this policy", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "created": { + "type": "integer", + "description": "Time the policy was created", + "example": 1636669297674, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "identifier of the policy", + "example": "policy-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy", + "example": "Pipeline Approval", + "minLength": 1 + }, + "org_id": { + "type": "string", + "description": "Harness organization ID associated with this policy", + "default": "", + "example": "test-org" + }, + "project_id": { + "type": "string", + "description": "Harness project ID associated with this policy", + "default": "", + "example": "test-project" + }, + "rego": { + "type": "string", + "description": "Rego that defines the policy", + "example": "", + "minLength": 1 + }, + "updated": { + "type": "integer", + "description": "Time the policy was last updated", + "example": 1636669297674, + "format": "int64" + } + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "required": [ + "identifier", + "name", + "rego", + "created", + "updated", + "account_id", + "org_id", + "project_id" + ] + }, + "IaCMPolicySet": { + "type": "object", + "properties": { + "account_id": { + "type": "string", + "description": "Harness account ID associated with this policy set", + "default": "", + "example": "eBqAoNchMLKigC_qZ5EdC" + }, + "action": { + "type": "string", + "description": "Action that triggers the policy set", + "example": "onrun", + "minLength": 1 + }, + "created": { + "type": "integer", + "description": "Time the policy set was created", + "example": 1636669297674, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of the policy set", + "example": "Captures critical production policies" + }, + "enabled": { + "type": "boolean", + "description": "Only enabled policy sets are evaluated when evaluating by type/action", + "example": true + }, + "identifier": { + "type": "string", + "description": "Identifier of the policy set", + "example": "policyset-1", + "minLength": 1 + }, + "name": { + "type": "string", + "description": "Name of the policy set", + "example": "Production Policies", + "minLength": 1 + }, + "org_id": { + "type": "string", + "description": "Harness organization ID associated with this policy set", + "default": "", + "example": "test-org" + }, + "policies": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LinkedPolicy" + }, + "description": "Policies linked to this policy set", + "example": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ] + }, + "project_id": { + "type": "string", + "description": "Harness project ID associated with this policy set", + "default": "", + "example": "test-project" + }, + "type": { + "type": "string", + "description": "Type of input suitable for the policy set", + "example": "pipeline", + "minLength": 1 + }, + "updated": { + "type": "integer", + "description": "Time the policy set was last updated", + "example": 1636669297674, + "format": "int64" + } + }, + "example": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "policies": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "severity": "warning", + "updated": 1636669297674 + } + ], + "project_id": "test-project", + "type": "pipeline", + "updated": 1636669297674 + }, + "required": [ + "identifier", + "name", + "action", + "type", + "enabled", + "created", + "updated", + "account_id", + "org_id", + "project_id", + "entity_selector" + ] + }, + "PolicyViolationError": { + "type": "object", + "properties": { + "fault": { + "type": "boolean", + "description": "Is the error a server-side fault?", + "example": false + }, + "id": { + "type": "string", + "description": "ID is a unique identifier for this particular occurrence of the problem.", + "example": "123abc" + }, + "message": { + "type": "string", + "description": "Message is a human-readable explanation specific to this occurrence of the problem.", + "example": "parameter 'p' must be an integer" + }, + "name": { + "type": "string", + "description": "Name is the name of this class of errors.", + "example": "bad_request" + }, + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + }, + "temporary": { + "type": "boolean", + "description": "Is the error temporary?", + "example": true + }, + "timeout": { + "type": "boolean", + "description": "Is the error a timeout?", + "example": true + } + }, + "example": { + "fault": false, + "id": "123abc", + "message": "parameter 'p' must be an integer", + "name": "bad_request", + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + }, + "temporary": false, + "timeout": false + }, + "required": [ + "name", + "id", + "message", + "temporary", + "timeout", + "fault" + ] + }, + "PostFilesResponseBody": { + "type": "object", + "properties": { + "synced": { + "type": "boolean", + "description": "Indicates if the provider version is synced", + "example": false + } + }, + "example": { + "synced": true + } + }, + "Provider": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account that owns the provider", + "example": "Aliquam dolore architecto et et sit officia." + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 531492198828269060, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of the provider", + "example": "Nulla commodi labore commodi." + }, + "id": { + "type": "string", + "description": "Provider ID", + "example": "Fugit nulla consequatur beatae quas." + }, + "type": { + "type": "string", + "description": "Provider type", + "example": "Voluptas et dolores tenetur sed." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 4861283840685571000, + "format": "int64" + }, + "versions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProviderVersionMetadata" + }, + "description": "Provider versions", + "example": [ + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + }, + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + } + ] + } + }, + "description": "Provider contains information about a Terraform provider (default view)", + "example": { + "account": "Quas et eos ut ullam ducimus quos.", + "created": 3161181041455072000, + "description": "Eius sed est sapiente.", + "id": "Aut quaerat distinctio porro.", + "type": "Minima ut voluptate id dolor.", + "updated": 2574397938247893500, + "versions": [ + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + }, + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + }, + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + } + ] + }, + "required": [ + "id", + "account", + "type", + "description", + "versions", + "created", + "updated" + ] + }, + "ProviderBinary": { + "type": "object", + "properties": { + "arch": { + "type": "string", + "description": "Architecture", + "example": "Qui inventore qui et recusandae." + }, + "binary": { + "type": "string", + "description": "Provider binary file", + "example": [ + 79, + 102, + 102, + 105, + 99, + 105, + 105, + 115, + 32, + 111, + 109, + 110, + 105, + 115, + 32, + 118, + 101, + 110, + 105, + 97, + 109, + 46 + ], + "format": "binary" + }, + "filename": { + "type": "string", + "description": "Provider binary filename", + "example": "Et repellendus hic quo est." + }, + "os": { + "type": "string", + "description": "Operating system", + "example": "Velit repellendus deserunt." + } + }, + "description": "Provider binary for a specific platform", + "example": { + "arch": "Veniam commodi eum et.", + "binary": [ + 78, + 101, + 109, + 111, + 32, + 101, + 108, + 105, + 103, + 101, + 110, + 100, + 105, + 46 + ], + "filename": "Enim dolorum repellendus unde sed rerum dolor.", + "os": "Non et." + }, + "required": [ + "os", + "arch", + "binary", + "filename" + ] + }, + "ProviderCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Provider" + }, + "description": "ProviderCollection is the result type for an array of Provider (default view)", + "example": [ + { + "account": "Repellat autem nam modi magni distinctio.", + "created": 9140171291973327000, + "description": "Soluta maiores et ipsum necessitatibus.", + "id": "Omnis est dolore delectus qui consequatur veniam.", + "type": "Magnam commodi.", + "updated": 211033580760198270, + "versions": [ + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + }, + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + } + ] + }, + { + "account": "Repellat autem nam modi magni distinctio.", + "created": 9140171291973327000, + "description": "Soluta maiores et ipsum necessitatibus.", + "id": "Omnis est dolore delectus qui consequatur veniam.", + "type": "Magnam commodi.", + "updated": 211033580760198270, + "versions": [ + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + }, + { + "files": [ + "Incidunt error rem consequuntur saepe non temporibus.", + "Maxime aut incidunt saepe.", + "Quo at molestiae omnis aut natus et." + ], + "synced": false, + "version": "Atque eveniet et laboriosam." + } + ] + } + ] + }, + "ProviderMetadata": { + "type": "object", + "properties": { + "provider_name": { + "type": "string", + "description": "Provider name", + "example": "Recusandae ipsa ratione voluptas et pariatur." + }, + "provider_source": { + "type": "string", + "description": "Provider source", + "example": "Quasi corrupti officia dolor." + }, + "provider_version": { + "type": "string", + "description": "Provider version", + "example": "Maiores ex aperiam sit quas." + } + }, + "example": { + "provider_name": "Voluptas ipsa.", + "provider_source": "Aperiam sapiente odit exercitationem.", + "provider_version": "Ea et magnam sunt error." + } + }, + "ProviderRequest": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account that owns the provider", + "example": "Omnis qui ducimus." + }, + "binaries": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProviderBinary" + }, + "description": "Provider binary files for different platforms", + "example": [ + { + "arch": "Aliquid atque.", + "binary": [ + 65, + 115, + 112, + 101, + 114, + 110, + 97, + 116, + 117, + 114, + 32, + 115, + 101, + 100, + 32, + 117, + 110, + 100, + 101, + 32, + 118, + 101, + 108, + 105, + 116, + 32, + 116, + 101, + 110, + 101, + 116, + 117, + 114, + 46 + ], + "filename": "Quae culpa accusantium.", + "os": "Placeat enim rerum ut animi." + }, + { + "arch": "Aliquid atque.", + "binary": [ + 65, + 115, + 112, + 101, + 114, + 110, + 97, + 116, + 117, + 114, + 32, + 115, + 101, + 100, + 32, + 117, + 110, + 100, + 101, + 32, + 118, + 101, + 108, + 105, + 116, + 32, + 116, + 101, + 110, + 101, + 116, + 117, + 114, + 46 + ], + "filename": "Quae culpa accusantium.", + "os": "Placeat enim rerum ut animi." + } + ] + }, + "checksums_file": { + "type": "string", + "description": "SHA256SUMS file containing checksums for all binaries", + "example": [ + 82, + 97, + 116, + 105, + 111, + 110, + 101, + 32, + 104, + 105, + 99, + 32, + 101, + 116, + 46 + ], + "format": "binary" + }, + "description": { + "type": "string", + "description": "Description of the provider", + "example": "Animi dolores." + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "example": "Laboriosam eos est eaque et maxime." + }, + "description": "Supported Terraform protocol versions", + "example": [ + "Possimus quia voluptatem eveniet sunt id.", + "Maiores impedit." + ] + }, + "signature_file": { + "type": "string", + "description": "Detached signature for the SHA256SUMS file", + "example": [ + 67, + 111, + 110, + 115, + 101, + 113, + 117, + 97, + 116, + 117, + 114, + 32, + 118, + 111, + 108, + 117, + 112, + 116, + 97, + 116, + 101, + 109, + 32, + 100, + 111, + 108, + 111, + 114, + 105, + 98, + 117, + 115, + 32, + 104, + 105, + 99, + 32, + 101, + 120, + 112, + 101, + 100, + 105, + 116, + 97, + 32, + 118, + 111, + 108, + 117, + 112, + 116, + 97, + 116, + 105, + 98, + 117, + 115, + 32, + 100, + 111, + 108, + 111, + 114, + 46 + ], + "format": "binary" + }, + "signing_key": { + "$ref": "#/components/schemas/GPGKey" + }, + "type": { + "type": "string", + "description": "Provider type", + "example": "Minima maxime molestiae minus." + } + }, + "description": "ProviderRequest defines the fields of a provider creation request", + "example": { + "account": "Ipsa ut.", + "binaries": [ + { + "arch": "Aliquid atque.", + "binary": [ + 65, + 115, + 112, + 101, + 114, + 110, + 97, + 116, + 117, + 114, + 32, + 115, + 101, + 100, + 32, + 117, + 110, + 100, + 101, + 32, + 118, + 101, + 108, + 105, + 116, + 32, + 116, + 101, + 110, + 101, + 116, + 117, + 114, + 46 + ], + "filename": "Quae culpa accusantium.", + "os": "Placeat enim rerum ut animi." + }, + { + "arch": "Aliquid atque.", + "binary": [ + 65, + 115, + 112, + 101, + 114, + 110, + 97, + 116, + 117, + 114, + 32, + 115, + 101, + 100, + 32, + 117, + 110, + 100, + 101, + 32, + 118, + 101, + 108, + 105, + 116, + 32, + 116, + 101, + 110, + 101, + 116, + 117, + 114, + 46 + ], + "filename": "Quae culpa accusantium.", + "os": "Placeat enim rerum ut animi." + }, + { + "arch": "Aliquid atque.", + "binary": [ + 65, + 115, + 112, + 101, + 114, + 110, + 97, + 116, + 117, + 114, + 32, + 115, + 101, + 100, + 32, + 117, + 110, + 100, + 101, + 32, + 118, + 101, + 108, + 105, + 116, + 32, + 116, + 101, + 110, + 101, + 116, + 117, + 114, + 46 + ], + "filename": "Quae culpa accusantium.", + "os": "Placeat enim rerum ut animi." + } + ], + "checksums_file": [ + 78, + 111, + 110, + 32, + 113, + 117, + 105, + 97, + 32, + 97, + 116, + 32, + 99, + 111, + 110, + 115, + 101, + 113, + 117, + 97, + 116, + 117, + 114, + 32, + 99, + 111, + 109, + 109, + 111, + 100, + 105, + 32, + 118, + 111, + 108, + 117, + 112, + 116, + 97, + 116, + 101, + 115, + 32, + 100, + 101, + 115, + 101, + 114, + 117, + 110, + 116, + 46 + ], + "description": "Tempora quia quia esse beatae placeat tenetur.", + "protocols": [ + "Voluptate praesentium autem ut facilis dolor.", + "Vel repellendus amet earum autem pariatur.", + "Voluptate voluptate incidunt minus nihil ducimus molestiae." + ], + "signature_file": [ + 73, + 110, + 99, + 105, + 100, + 117, + 110, + 116, + 32, + 118, + 111, + 108, + 117, + 112, + 116, + 97, + 116, + 101, + 109, + 32, + 118, + 111, + 108, + 117, + 112, + 116, + 97, + 116, + 101, + 109, + 32, + 116, + 101, + 109, + 112, + 111, + 114, + 97, + 32, + 101, + 115, + 116, + 46 + ], + "signing_key": { + "ascii_armor": "Unde iusto aut aut sequi.", + "key_id": "Dicta minima sit sed." + }, + "type": "Ut suscipit laborum saepe rerum delectus." + }, + "required": [ + "account", + "type", + "signing_key", + "protocols", + "binaries", + "checksums_file", + "signature_file", + "id", + "description", + "versions", + "created", + "updated" + ] + }, + "ProviderVersionMetadata": { + "type": "object", + "properties": { + "files": { + "type": "array", + "items": { + "type": "string", + "example": "Tempore voluptas." + }, + "description": "Uploaded provider files", + "example": [ + "Voluptatem delectus.", + "Aut nam nesciunt qui sed voluptatum." + ] + }, + "synced": { + "type": "boolean", + "description": "Provider version synced", + "example": false + }, + "version": { + "type": "string", + "description": "Provider version", + "example": "Reiciendis et aspernatur odit minima." + } + }, + "description": "ProviderVersionMetadata contains metadata about a specific provider version (default view)", + "example": { + "files": [ + "Dolores earum qui.", + "Aut vel." + ], + "synced": true, + "version": "Numquam et est." + }, + "required": [ + "version", + "synced", + "files" + ] + }, + "RemoteExecution": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "m", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 3727861040086301000, + "format": "int64" + }, + "custom_arguments": { + "type": "object", + "description": "The arguments supplied to the plan.", + "example": { + "Autem fugit nemo.": [ + "Modi at totam ea doloribus.", + "Aliquam dolor est magnam labore.", + "Ipsam possimus et blanditiis sed.", + "Possimus omnis maiores repellat." + ] + }, + "additionalProperties": { + "type": "array", + "items": { + "type": "string", + "example": "Aperiam esse cumque et nihil eveniet." + }, + "example": [ + "Maxime ut beatae modi accusamus.", + "Animi eum." + ] + } + }, + "executed": { + "type": "boolean", + "description": "The boolean value indicating if the remote execution has been executed.", + "example": false + }, + "id": { + "type": "string", + "description": "The ID of the remote execution.", + "example": "5f965b8f-ab9f-4cea-95b7-98b6b349baec", + "format": "uuid" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "k9", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The pipeline execution ID of the pipeline executing the remote execution", + "example": "Qui rerum beatae mollitia quia." + }, + "pipeline_execution_url": { + "type": "string", + "description": "The pipeline execution URL of the pipeline executing the remote execution", + "example": "Qui facere." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "sha256_checksum": { + "type": "string", + "description": "The checksum of the patch file of changes that the remote execution will run against.", + "example": "Quia quia." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 4078148260945153500, + "format": "int64" + }, + "workspace": { + "type": "string", + "description": "The workspace associated with the remote execution.", + "example": "Mollitia et." + } + }, + "description": "remote execution details for a specific workspace.", + "example": { + "account": "59s", + "created": 7999328913463746000, + "custom_arguments": { + "Harum nisi iure sapiente qui nesciunt possimus.": [ + "Eveniet debitis possimus est fugiat ad accusamus.", + "Voluptatem voluptate officiis eaque magni.", + "Rerum magnam est voluptatem voluptas." + ], + "Omnis quidem nesciunt eius qui enim non.": [ + "Nam odit suscipit architecto dolorem et.", + "Suscipit pariatur." + ], + "Velit assumenda voluptatum perferendis et omnis voluptatibus.": [ + "Voluptas rerum culpa.", + "Eum sit.", + "Qui animi possimus minima.", + "Consectetur facilis dolor sed voluptatem." + ] + }, + "executed": false, + "id": "66c3db11-a51e-4e50-9820-f2d433c53a98", + "org": "l5r", + "pipeline_execution_id": "Nesciunt sint facilis.", + "pipeline_execution_url": "Laudantium laudantium nesciunt voluptates.", + "project": "1w", + "sha256_checksum": "Aut exercitationem molestiae sequi.", + "updated": 827231405281657300, + "workspace": "Consequatur sit asperiores quo." + }, + "required": [ + "account", + "org", + "project", + "id", + "workspace", + "pipeline_execution_id", + "pipeline_execution_url", + "created", + "updated", + "executed", + "sha256_checksum" + ] + }, + "ResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmResource" + }, + "example": [ + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + }, + { + "attributes": { + "ami": "ami-830c94ec", + "instance_type": "t2.micro" + }, + "drift_attributes": { + "instance_type": "t2.nano" + }, + "drift_status": "changed", + "module": "full_stack", + "name": "app_server", + "provider": "AWS", + "sensitive_attributes": [ + "instance_type" + ], + "type": "S3 Bucket" + } + ] + }, + "ResourceMetadata": { + "type": "object", + "properties": { + "resource_name": { + "type": "string", + "description": "Resource name", + "example": "Laborum eaque aut dolorum." + }, + "resource_type": { + "type": "string", + "description": "Resource type", + "example": "Distinctio nisi culpa ea perspiciatis sed." + } + }, + "example": { + "resource_name": "Pariatur et quas ipsam quod dicta autem.", + "resource_type": "Aut ea cupiditate sit temporibus dolorum." + } + }, + "ScopedAnsibleActivityID": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "c8", + "minLength": 1, + "maxLength": 128 + }, + "id": { + "type": "string", + "description": "The unique ID for this activity", + "example": "Eum consequuntur eos quos provident veniam dignissimos." + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "rk", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "f8", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "ddn", + "id": "Earum libero voluptatem excepturi consequatur recusandae quam.", + "org": "h2", + "project": "ar" + }, + "required": [ + "account", + "org", + "project", + "id" + ] + }, + "ScopedAnsibleDataIdentifier": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "l", + "minLength": 1, + "maxLength": 128 + }, + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "hn", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "1ei", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "mv0", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "z", + "project": "u4" + }, + "required": [ + "account", + "org", + "project", + "id" + ] + }, + "ScopedExecutionID": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "c", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "mf", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "Pipeline execution ID", + "example": "a8", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_stage_id": { + "type": "string", + "description": "Pipeline execution stage ID", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "x", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "l", + "org": "xcv", + "pipeline_execution_id": "p", + "pipeline_stage_id": "43", + "project": "yta" + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id" + ] + }, + "ScopedIdentifier": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "7xg", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "Identifier is the project identifier.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "wrq", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "6", + "identifier": "s", + "org": "gm", + "project": "s" + }, + "required": [ + "account", + "org", + "project", + "identifier" + ] + }, + "ScopedInventoryID": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "m", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "Veniam asperiores recusandae deleniti magnam itaque." + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "5i", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "7i", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "qtn", + "identifier": "Autem mollitia explicabo magni.", + "org": "o", + "project": "07" + }, + "required": [ + "account", + "org", + "project", + "identifier" + ] + }, + "ScopedKey": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "lwr", + "minLength": 1, + "maxLength": 128 + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "y", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "kind": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "tf", + "enum": [ + "env", + "tf" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "um", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Aliquid debitis eos et dolor aut ut." + } + }, + "example": { + "account": "s8i", + "key": "4q", + "kind": "env", + "org": "ou", + "project": "bb", + "workspace": "Ut voluptas quia qui amet." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "kind", + "key" + ] + }, + "ScopedPipelineID": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "rs", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "4", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "Pipeline execution ID", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "a", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "p", + "org": "t", + "pipeline_execution_id": "f", + "project": "w" + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id" + ] + }, + "ScopedPipelines": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "rk", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "yv", + "minLength": 1, + "maxLength": 128 + }, + "pageSize": { + "type": "integer", + "description": "Current page size", + "example": 50, + "format": "int64" + }, + "pipelines": { + "type": "array", + "items": { + "type": "string", + "example": "Corporis illo temporibus dicta sint ipsa temporibus." + }, + "description": "Array of pipelines that belong to a specific workspace", + "example": [ + "Culpa aliquam aperiam est qui ut.", + "Ut non.", + "Praesentium corrupti inventore veniam.", + "Totam alias sint temporibus." + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "ep", + "minLength": 1, + "maxLength": 128 + }, + "totalItems": { + "type": "integer", + "description": "Total items available", + "example": 1800, + "format": "int64" + }, + "totalPages": { + "type": "integer", + "description": "Total pages available", + "example": 36, + "format": "int64" + } + }, + "example": { + "account": "t3", + "org": "50", + "pageSize": 50, + "pipelines": [ + "Ipsam culpa eaque magni laboriosam illum.", + "Eaque et ut.", + "Blanditiis et aut explicabo ipsam ea." + ], + "project": "wbd", + "totalItems": 1800, + "totalPages": 36 + }, + "required": [ + "account", + "org", + "project", + "totalItems", + "totalPages", + "pageSize" + ] + }, + "ScopedPlaybookID": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "54h", + "minLength": 1, + "maxLength": 128 + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Accusamus incidunt voluptatibus et officiis." + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "e", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "f", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "l", + "identifier": "Veritatis minus autem dolore est velit.", + "org": "r", + "project": "l" + }, + "required": [ + "account", + "org", + "project", + "identifier" + ] + }, + "ScopedRemoteExecutionIdentifier": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "wl", + "minLength": 1, + "maxLength": 128 + }, + "id": { + "type": "string", + "description": "The ID of the remote execution", + "example": "5ec127b4-579e-4846-99dc-e7e071f938c2", + "format": "uuid" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "1l", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "j", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Cupiditate eligendi non nam mollitia quia rerum." + } + }, + "example": { + "account": "g", + "id": "9b2a1569-2281-4e40-8061-804703c57bdd", + "org": "gu3", + "project": "zo", + "workspace": "Consectetur voluptatem." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "id" + ] + }, + "ScopedWorkspaceDataIdentifier": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "6y", + "minLength": 1, + "maxLength": 128 + }, + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "rti", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Ut blanditiis voluptatem iusto quasi." + } + }, + "example": { + "account": "7", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "a1s", + "project": "i", + "workspace": "Ut qui aperiam enim." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "id" + ] + }, + "SendAnsibleEventRequest": { + "type": "object", + "properties": { + "event_type": { + "type": "string", + "description": "The type of event that occurred", + "example": "activity-execution", + "enum": [ + "activity-execution", + "activity-dry-run-execution" + ] + }, + "inventories": { + "type": "string", + "description": "Inventories associated with this event", + "example": [ + "webservers_europe" + ] + }, + "metadata": { + "$ref": "#/components/schemas/AnsibleActivityMetadata" + }, + "playbooks": { + "type": "string", + "description": "Playbooks associated with this event", + "example": [ + "init_webservers" + ] + } + }, + "example": { + "event_type": "activity-execution", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "failure", + "git_branch": "Perspiciatis possimus minus quaerat quaerat.", + "git_commit_message": "Maxime doloribus.", + "git_commit_sha": "Sit natus quam tempora est rerum.", + "git_repo": "Voluptatem impedit commodi.", + "pipeline": "Ullam minima optio eveniet iusto quia dolor.", + "pipeline_execution_id": "Nulla voluptatem.", + "pipeline_execution_number": "Nihil omnis cumque rerum fuga.", + "pipeline_name": "Adipisci iure dolorem voluptatibus quia quasi.", + "pipeline_stage_id": "Incidunt accusamus hic.", + "results_uuid": "Cupiditate eos eaque fugit.", + "trigger": { + "Occaecati aspernatur.": "Iste praesentium earum." + } + }, + "playbooks": [ + "init_webservers" + ] + }, + "required": [ + "inventories", + "playbooks", + "event_type" + ] + }, + "SendEventRequest": { + "type": "object", + "properties": { + "data": { + "type": "object", + "example": { + "Iusto totam delectus eius et.": "Nisi quisquam consequatur consequatur.", + "Voluptas cum laboriosam veniam.": "Eum autem maiores." + }, + "additionalProperties": { + "type": "string", + "example": "Suscipit et omnis dolores." + } + }, + "event_type": { + "type": "string", + "description": "The type of event that occurred", + "example": "provisioning", + "enum": [ + "plan", + "drifted", + "provisioning", + "destroying", + "active", + "inactive", + "apply_needed", + "failed", + "stage-complete" + ] + }, + "metadata": { + "$ref": "#/components/schemas/ActivityMetadata" + }, + "pipeline_execution_id": { + "type": "string", + "description": "Deprecated: use metadata instead", + "default": "", + "example": "Et ducimus perferendis." + }, + "pipeline_stage_id": { + "type": "string", + "description": "Deprecated: use metadata instead", + "default": "", + "example": "Pariatur cupiditate officia odio perspiciatis aspernatur tempora." + } + }, + "example": { + "data": { + "Amet ratione sunt consequatur soluta sint.": "Praesentium veniam placeat.", + "Expedita provident a ea dignissimos odio aspernatur.": "Deserunt molestiae nisi vero voluptatem ut voluptas.", + "Quia perspiciatis.": "Dolores voluptate voluptatem." + }, + "event_type": "provisioning", + "metadata": { + "PlannedChangesCount": 522045215243244740, + "activity_status": "success", + "activity_type": "import", + "cost_breakdown_uuid": "Veniam et quia praesentium.", + "cost_currency": "Quasi sint culpa eos facere sapiente expedita.", + "cost_diff_total_monthly": "Dolorem atque voluptatem saepe.", + "cost_diff_uuid": "Facilis quis molestiae.", + "cost_past_total_monthly": "Id soluta.", + "cost_total_monthly": "Aut qui eum natus veritatis sint quidem.", + "cost_total_monthly_percentage_change": "Ipsam qui.", + "drift_counts": { + "added": 4826534834240538000, + "changed": 998748052933761500, + "deleted": 5828262319716160000, + "imported": 7422438375973692000, + "removed": 6036723523323130000, + "unchanged": 4760789219313462000 + }, + "enable_solutions_factory": true, + "git_branch": "Consequatur quis dignissimos.", + "git_commit_message": "Nemo odio ipsum aspernatur dicta.", + "git_commit_sha": "Et qui corrupti adipisci.", + "git_repo": "Qui et commodi deleniti quisquam distinctio vel.", + "modules_uuid": "Tenetur dolorum id.", + "output_counts": { + "added": 4826534834240538000, + "changed": 998748052933761500, + "deleted": 5828262319716160000, + "imported": 7422438375973692000, + "removed": 6036723523323130000, + "unchanged": 4760789219313462000 + }, + "pipeline": "Debitis quas facere.", + "pipeline_execution_id": "Fugiat omnis aut laborum est porro ullam.", + "pipeline_execution_number": "Id iure adipisci.", + "pipeline_name": "Consequuntur voluptatem ratione.", + "pipeline_stage_id": "Voluptate a fugit ut quidem explicabo.", + "plan_uuid": "Sunt repudiandae totam.", + "providers_uuid": "Rem aut eos.", + "provisioner": "Voluptatem dolor soluta quaerat ea nemo.", + "provisioner_version": "Voluptas facilis error.", + "resource_counts": { + "added": 4826534834240538000, + "changed": 998748052933761500, + "deleted": 5828262319716160000, + "imported": 7422438375973692000, + "removed": 6036723523323130000, + "unchanged": 4760789219313462000 + }, + "state_checksum": "Totam explicabo nihil rerum.", + "state_uuid": "Consectetur nostrum at pariatur ut.", + "trigger": { + "Id quam sit.": "Minima voluptate veniam modi reprehenderit perferendis.", + "Nihil et molestiae atque exercitationem voluptatum.": "Aut nihil et placeat quasi ab debitis." + } + }, + "pipeline_execution_id": "Suscipit ipsam ducimus voluptatem debitis eos.", + "pipeline_stage_id": "Nulla magnam expedita." + }, + "required": [ + "event_type" + ] + }, + "SendModuleEventRequest": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "b", + "minLength": 1, + "maxLength": 128 + }, + "eventType": { + "type": "string", + "description": "The type of event that occurred", + "example": "Dicta sit tempore sequi." + }, + "metadata": { + "$ref": "#/components/schemas/ModuleExecutionMetadata" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "g3", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "cv", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "z", + "eventType": "Deleniti non.", + "metadata": { + "pipeline": "Eius nemo tempora quo.", + "pipeline_execution_id": "Recusandae atque eum repellat consequatur accusamus deleniti.", + "pipeline_execution_number": "Atque earum voluptatum.", + "pipeline_name": "Magni excepturi eos quo provident.", + "pipeline_stage_id": "Cumque laudantium et ea aut.", + "trigger": { + "Illum vel optio sit id.": "Et nemo in.", + "Ut et.": "Fuga in et sit ut id." + } + }, + "org": "5", + "project": "6fh" + }, + "required": [ + "account", + "org", + "project", + "eventType" + ] + }, + "IaCMServiceVersion": { + "type": "object", + "properties": { + "commit": { + "type": "string", + "description": "Build identifier", + "example": "96381692bf3a2bd7904769c6886e832435768b57" + }, + "deployment_mode": { + "type": "string", + "description": "Determines if the service is running on saas or smp", + "example": "saas", + "enum": [ + "saas", + "smp" + ] + }, + "version": { + "type": "string", + "description": "Version number", + "example": "v0.123.0" + } + }, + "description": "Service version", + "example": { + "commit": "96381692bf3a2bd7904769c6886e832435768b57", + "deployment_mode": "saas", + "version": "v0.123.0" + }, + "required": [ + "version", + "commit", + "deployment_mode" + ] + }, + "ShowAnsibleActivityResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "event_type": { + "type": "string", + "description": "The type of event that occurred", + "example": "activity-execution", + "enum": [ + "activity-execution", + "activity-dry-run-execution" + ] + }, + "id": { + "type": "string", + "description": "The unique identifier for this activity", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "inventories": { + "type": "string", + "description": "Inventories associated with this event", + "example": [ + "webservers_europe" + ] + }, + "metadata": { + "$ref": "#/components/schemas/AnsibleActivityMetadata" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "y", + "minLength": 1, + "maxLength": 128 + }, + "playbooks": { + "type": "string", + "description": "Playbooks associated with this event", + "example": [ + "init_webservers" + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "9ea", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "g", + "created": 1627590400, + "event_type": "activity-execution", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "inventories": [ + "webservers_europe" + ], + "metadata": { + "activity_status": "failure", + "git_branch": "Quos harum quisquam aut ea.", + "git_commit_message": "Eius veritatis nihil.", + "git_commit_sha": "Labore asperiores eum impedit.", + "git_repo": "Sapiente sed optio.", + "pipeline": "Voluptate unde.", + "pipeline_execution_id": "Ut cumque aut quia praesentium.", + "pipeline_execution_number": "Sint laboriosam iste iusto totam id nostrum.", + "pipeline_name": "Veniam quo quas hic dolorum.", + "pipeline_stage_id": "Accusantium aperiam est et aut temporibus.", + "results_uuid": "Dolor et qui autem consequuntur.", + "trigger": { + "Cum quisquam ut quo alias similique.": "Alias perspiciatis odit eligendi quidem." + } + }, + "org": "tt", + "playbooks": [ + "init_webservers" + ], + "project": "ad8" + }, + "required": [ + "account", + "org", + "project", + "inventories", + "playbooks", + "id", + "metadata", + "created", + "event_type" + ] + }, + "ShowExecutionResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "gv", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 1576048158754507300, + "format": "int64" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ds", + "minLength": 1, + "maxLength": 128 + }, + "pipeline": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Aut veritatis dolorem." + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Eum aliquid." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Odit excepturi aliquam rerum provident est voluptatem." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "q", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "The overall status of the execution", + "example": "none", + "enum": [ + "none", + "success", + "failure" + ] + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Ratione eos rerum ab." + } + }, + "example": { + "account": "ie", + "created": 5788561827241756000, + "org": "1oc", + "pipeline": "Pariatur incidunt quaerat et.", + "pipeline_execution_id": "Sunt saepe sit qui.", + "pipeline_stage_id": "Quia nulla similique nobis quia.", + "project": "l", + "status": "none", + "workspace": "Aut dolore molestiae enim ut et." + }, + "required": [ + "status", + "created", + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace", + "pipeline" + ] + }, + "ShowInventoryResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "91e", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "data": { + "type": "string", + "description": "The data representing the inventory", + "example": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this inventory", + "example": "test_inventory" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "6i", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Type indicates what kind of inventory this is", + "example": "dynamic", + "enum": [ + "manual", + "dynamic" + ] + }, + "updated": { + "type": "integer", + "description": "Timestamp when the resource was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "yt", + "created": 1627590400, + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "identifier": "test_inventory", + "name": "test inventory", + "org": "c1", + "project": "34", + "type": "dynamic", + "updated": 1627686800 + }, + "required": [ + "created", + "updated", + "account", + "org", + "project", + "identifier", + "name", + "type", + "data" + ] + }, + "ShowLicenceResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account identifier", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "isLicenced": { + "type": "boolean", + "description": "True when this account is currently licenced to execute apply operations", + "example": true + }, + "isPaid": { + "type": "boolean", + "description": "True when this account is a paid account", + "example": true + }, + "reason": { + "type": "string", + "description": "If the account is not licenced, this is the reason why", + "example": "Est aut omnis reiciendis odit." + }, + "startTime": { + "type": "integer", + "description": "The unix timestamp of the current period over which usage was calculated", + "example": 3864563738622458400, + "format": "int64" + }, + "total": { + "type": "integer", + "description": "The total number of successful apply operations this account is licenced to perform", + "example": 7837119711256833000, + "format": "int64" + }, + "used": { + "type": "integer", + "description": "The count of successful apply operations already performed", + "example": 8165931354236740000, + "format": "int64" + } + }, + "example": { + "account": "u", + "isLicenced": true, + "isPaid": false, + "reason": "Sed omnis nam.", + "startTime": 3680848132327661000, + "total": 7235710932598764000, + "used": 8958739900909882000 + }, + "required": [ + "account", + "used", + "total", + "startTime", + "isPaid", + "isLicenced" + ] + }, + "ShowPlaybookResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "bcv", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the resource was created.", + "example": 1627590400, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "The unique identifier for this playbook", + "example": "Numquam fugiat voluptas et." + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test playbook", + "minLength": 1, + "maxLength": 1024 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "4", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "w", + "minLength": 1, + "maxLength": 128 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the playbook should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the playbook should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this playbook.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the playbook resides.", + "default": "", + "example": "playbooks/" + }, + "updated": { + "type": "integer", + "description": "Timestamp when the resource was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "account": "07", + "created": 1627590400, + "identifier": "Voluptatum at dolorem voluptatem consequuntur voluptatem at.", + "name": "test playbook", + "org": "9o3", + "project": "hax", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/", + "updated": 1627686800 + }, + "required": [ + "created", + "updated", + "account", + "org", + "project", + "identifier", + "name", + "repository_path" + ] + }, + "ShowRemoteExecutionResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "x4", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 8133634895875480000, + "format": "int64" + }, + "custom_arguments": { + "type": "object", + "description": "The arguments supplied to the plan.", + "example": { + "Praesentium eveniet explicabo eos laudantium reprehenderit aperiam.": [ + "Commodi autem pariatur quos odio.", + "Dolor eius.", + "Nesciunt eos alias perferendis." + ] + }, + "additionalProperties": { + "type": "array", + "items": { + "type": "string", + "example": "Consequatur nam ex." + }, + "example": [ + "Ut animi et.", + "Explicabo officiis vel.", + "Eum quod officia distinctio maiores sapiente." + ] + } + }, + "executed": { + "type": "boolean", + "description": "The boolean value indicating if the remote execution has been executed.", + "example": true + }, + "id": { + "type": "string", + "description": "The ID of the remote execution.", + "example": "f3b5c539-6771-4f1f-89d0-ba35870cb374", + "format": "uuid" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "t", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The pipeline execution ID of the pipeline executing the remote execution", + "example": "Suscipit possimus aut et unde itaque." + }, + "pipeline_execution_url": { + "type": "string", + "description": "The pipeline execution URL of the pipeline executing the remote execution", + "example": "Iste cupiditate voluptatibus neque voluptates iste velit." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "k", + "minLength": 1, + "maxLength": 128 + }, + "sha256_checksum": { + "type": "string", + "description": "The checksum of the patch file of changes that the remote execution will run against.", + "example": "Id rerum natus eaque." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 6676042034154661000, + "format": "int64" + }, + "workspace": { + "type": "string", + "description": "The workspace associated with the remote execution.", + "example": "Eum laboriosam fugit." + } + }, + "example": { + "account": "w5", + "created": 7913378411528412000, + "custom_arguments": { + "Laborum at porro rem.": [ + "Nostrum aut autem velit qui qui.", + "At porro asperiores impedit et enim in.", + "Nihil cum unde necessitatibus aliquid quia." + ] + }, + "executed": true, + "id": "e7d2565a-9d4d-4e74-a875-cc360fd464c2", + "org": "hd", + "pipeline_execution_id": "Sint nisi rerum tempore.", + "pipeline_execution_url": "Voluptate iusto sit sunt natus.", + "project": "tu3", + "sha256_checksum": "Blanditiis soluta velit quod dolor sed.", + "updated": 4329415830695931000, + "workspace": "Voluptatem in corrupti odio." + }, + "required": [ + "account", + "org", + "project", + "id", + "workspace", + "pipeline_execution_id", + "pipeline_execution_url", + "created", + "updated", + "executed", + "sha256_checksum" + ] + }, + "ShowUsageResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/UsageData" + }, + "status": { + "type": "string", + "example": "Unde ex modi suscipit dolore dolorem." + } + }, + "example": { + "data": { + "count": 5169585703414810000 + }, + "status": "Iste porro blanditiis ipsa." + }, + "required": [ + "status", + "data" + ] + }, + "ShowWorkspaceMetricsRequest": { + "type": "object", + "properties": { + "status_counts": { + "type": "object", + "description": "Counts by status", + "example": { + "Aut id sit.": 6421497944751150000, + "Error nostrum ut.": 381281036924715000, + "Ut omnis saepe ea eius.": 1264014508607457300 + }, + "additionalProperties": { + "type": "integer", + "example": 5848832658311294000, + "format": "int64" + } + } + }, + "example": { + "status_counts": { + "Sunt molestiae excepturi illo ullam iste.": 7638122851306840000, + "Voluptas dolores sed pariatur iure.": 2897352929842246000 + } + } + }, + "ShowWorkspaceVariableResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "rkx", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 22465697625952096, + "format": "int64" + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "uz0", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "kind": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "env", + "enum": [ + "env", + "tf" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "tz6", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "y", + "minLength": 1, + "maxLength": 128 + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 7081624887988048000, + "format": "int64" + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Et itaque in provident et aspernatur." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "secret", + "enum": [ + "string", + "secret" + ] + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Enim ratione ea vitae inventore mollitia." + } + }, + "example": { + "account": "d0l", + "created": 8886760790992723000, + "key": "eqj", + "kind": "tf", + "org": "n", + "project": "d4", + "updated": 2955078717359237600, + "value": "Neque et qui at rerum ipsum qui.", + "value_type": "string", + "workspace": "Sed omnis laborum non et quia ut." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "key", + "value", + "value_type", + "kind", + "created", + "updated" + ] + }, + "UnifiedExecutionRequest": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "1", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "6", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Accusamus laboriosam voluptatem voluptatem vel et fugiat." + }, + "pipeline_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Qui minus quam possimus." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Excepturi omnis dicta." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "gg", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Aut illo dolores." + } + }, + "description": "UnifiedExecutionRequest defines an individual execution of unified execution", + "example": { + "account": "4", + "org": "wb", + "pipeline_execution_id": "Non dolorem aut sequi voluptas.", + "pipeline_id": "Iusto dolores perspiciatis.", + "pipeline_stage_id": "Quia sint.", + "project": "y8d", + "workspace": "Est nobis adipisci ut." + }, + "required": [ + "account", + "org", + "project", + "pipeline_execution_id", + "pipeline_stage_id", + "pipeline_id" + ] + }, + "UnifiedExecutionRequest2": { + "type": "object", + "properties": { + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Sed iusto cum." + }, + "pipeline_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Nobis dolor autem nobis magni eum." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline stage", + "example": "Repudiandae ut non vitae omnis et." + }, + "workspace": { + "type": "string", + "description": "The unique identifier for the associated workspace", + "example": "Minus nostrum dolor magni sapiente distinctio aut." + } + }, + "example": { + "pipeline_execution_id": "Tenetur exercitationem amet similique.", + "pipeline_id": "Dolorum commodi eum et provident et aut.", + "pipeline_stage_id": "Dicta et et voluptatum.", + "workspace": "Consequatur modi voluptas inventore dolores tempora." + }, + "required": [ + "pipeline_execution_id", + "pipeline_stage_id", + "pipeline_id" + ] + }, + "UnifiedExecutionResponse": { + "type": "object", + "properties": { + "env_variables": { + "type": "object", + "description": "Map of environment variables", + "example": { + "Labore explicabo aliquam et quam ipsam.": "Voluptatem et quisquam quidem culpa aut aut.", + "Nihil sed quo deleniti perferendis.": "Molestias sed qui.", + "Possimus non doloremque tempora blanditiis optio.": "Tenetur consequatur aut labore eum blanditiis saepe." + }, + "additionalProperties": { + "type": "string", + "example": "Omnis quia nihil nemo quod qui autem." + } + }, + "outputs": { + "type": "object", + "description": "Map of output key-value pairs", + "example": { + "Quos dignissimos voluptates vel nam consequuntur.": "Consequatur qui beatae.", + "Reprehenderit eos.": "Impedit laboriosam delectus dolorum.", + "Reprehenderit iure neque.": "Placeat non cupiditate possimus velit." + }, + "additionalProperties": { + "type": "string", + "example": "Aut nemo rem fuga cupiditate." + } + }, + "steps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IACMUnifiedStepWrapper" + }, + "description": "List of execution steps", + "example": [ + { + "dynamic_fields": { + "Voluptatum voluptatem tenetur aliquam facilis.": "Libero qui suscipit commodi." + }, + "id": "Quia et.", + "name": "Et sunt.", + "yaml": "Tempore dicta itaque quod sint sapiente." + }, + { + "dynamic_fields": { + "Voluptatum voluptatem tenetur aliquam facilis.": "Libero qui suscipit commodi." + }, + "id": "Quia et.", + "name": "Et sunt.", + "yaml": "Tempore dicta itaque quod sint sapiente." + }, + { + "dynamic_fields": { + "Voluptatum voluptatem tenetur aliquam facilis.": "Libero qui suscipit commodi." + }, + "id": "Quia et.", + "name": "Et sunt.", + "yaml": "Tempore dicta itaque quod sint sapiente." + }, + { + "dynamic_fields": { + "Voluptatum voluptatem tenetur aliquam facilis.": "Libero qui suscipit commodi." + }, + "id": "Quia et.", + "name": "Et sunt.", + "yaml": "Tempore dicta itaque quod sint sapiente." + } + ] + } + }, + "description": "UnifiedExecutionResponse contains all data required for unified execution", + "example": { + "env_variables": { + "Ex ipsa nemo aut aut.": "Mollitia velit vel explicabo." + }, + "outputs": { + "Deleniti ullam vel veniam aut.": "Dolores nobis sunt alias reprehenderit pariatur.", + "Ullam culpa odit.": "Architecto quos voluptatum." + }, + "steps": [ + { + "dynamic_fields": { + "Voluptatum voluptatem tenetur aliquam facilis.": "Libero qui suscipit commodi." + }, + "id": "Quia et.", + "name": "Et sunt.", + "yaml": "Tempore dicta itaque quod sint sapiente." + }, + { + "dynamic_fields": { + "Voluptatum voluptatem tenetur aliquam facilis.": "Libero qui suscipit commodi." + }, + "id": "Quia et.", + "name": "Et sunt.", + "yaml": "Tempore dicta itaque quod sint sapiente." + } + ] + }, + "required": [ + "outputs", + "env_variables" + ] + }, + "UnlockWorkspaceRequest": { + "type": "object", + "properties": { + "created": { + "type": "string", + "description": "Time that the lock was taken.", + "example": "2023-07-03T20:16:18.382839Z" + }, + "id": { + "type": "string", + "description": "Unique ID for the lock. Generated by the terraform cli.", + "example": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "minLength": 1 + }, + "info": { + "type": "string", + "description": "Extra information to store with the lock.", + "default": "", + "example": "production workspace lock" + }, + "operation": { + "type": "string", + "description": "Terraform operation.", + "example": "OperationTypePlan" + }, + "path": { + "type": "string", + "description": "Path to the state file when applicable.", + "default": "", + "example": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c" + }, + "version": { + "type": "string", + "description": "Terraform version.", + "example": "1.0.0" + }, + "who": { + "type": "string", + "description": "The machine user who is performing the operation.", + "default": "", + "example": "user1" + } + }, + "example": { + "created": "2023-07-03T20:16:18.382839Z", + "id": "1ac4b858-bf0b-8539-9d80-8c521f6423cf", + "info": "production workspace lock", + "operation": "OperationTypePlan", + "path": "/api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c", + "version": "1.0.0", + "who": "user1" + }, + "required": [ + "id", + "operation", + "version", + "created" + ] + }, + "UpdateApprovalRequest": { + "type": "object", + "properties": { + "actioned_by": { + "type": "string", + "description": "User that approved/rejected the step", + "example": "John Doe" + }, + "status": { + "type": "string", + "description": "Status update to be performed upon the Approval step", + "default": "pending", + "example": "approved", + "enum": [ + "approved", + "rejected", + "pending" + ] + } + }, + "example": { + "actioned_by": "John Doe", + "status": "approved" + }, + "required": [ + "status", + "pipeline_execution_id", + "pipeline_stage_id", + "workspace_id" + ] + }, + "UpdateExecutionRequest": { + "type": "object", + "properties": { + "audit": { + "$ref": "#/components/schemas/Audit" + } + }, + "example": { + "audit": { + "git_audit_data": { + "hash": "l", + "name": "Voluptas corporis ut nisi repellendus debitis.", + "repo_url": "3d", + "type": "branch, tag" + } + } + } + }, + "UpdateInventoryRequest": { + "type": "object", + "properties": { + "data": { + "type": "string", + "description": "The data representing the inventory", + "example": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}" + }, + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test inventory", + "minLength": 1, + "maxLength": 1024 + } + }, + "example": { + "data": "{ \"hosts\": { \"host1.example.com\": null, \"host2.example.com\": null }}", + "name": "test inventory" + }, + "required": [ + "name", + "type", + "data" + ] + }, + "UpdateModuleRequest": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "description of the module", + "example": "Ea doloremque quasi laboriosam blanditiis nam et." + }, + "git_tag_style": { + "type": "string", + "description": "Git Tag Style", + "example": "Sit doloremque." + }, + "name": { + "type": "string", + "description": "module name", + "example": "t7l", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "org that owns the module", + "example": "d", + "minLength": 1, + "maxLength": 1024 + }, + "project": { + "type": "string", + "description": "project that owns the module", + "example": "iu", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Magnam porro molestiae recusandae." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Corporis soluta quaerat." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "system": { + "type": "string", + "description": "system name", + "example": "oq", + "pattern": "^[a-z]+$", + "minLength": 1, + "maxLength": 128 + }, + "tags": { + "type": "string", + "description": "tags defining the module", + "example": "Pariatur inventore occaecati hic itaque ullam ad." + } + }, + "example": { + "description": "Quisquam repellendus reprehenderit accusantium ipsa sint qui.", + "git_tag_style": "Ullam voluptas voluptas quia.", + "name": "2n", + "org": "y", + "project": "2", + "repository": "Explicabo sit nihil doloribus necessitatibus repellendus.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem sint.", + "repository_path": "", + "system": "hn", + "tags": "Aperiam velit explicabo vel aut neque." + }, + "required": [ + "name", + "system" + ] + }, + "UpdatePlaybookRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name is the human readable name", + "example": "test playbook", + "minLength": 1, + "maxLength": 1024 + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "my-repo" + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the playbook should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the playbook should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this playbook.", + "example": "my-connector" + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the playbook resides.", + "default": "", + "example": "playbooks/" + } + }, + "example": { + "name": "test playbook", + "repository": "my-repo", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "my-connector", + "repository_path": "playbooks/" + }, + "required": [ + "name", + "repository_path" + ] + }, + "UpdateTestingRequest": { + "type": "object", + "properties": { + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "f4", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_id": { + "type": "array", + "items": { + "type": "string", + "example": "Ut quae illo nesciunt dicta." + }, + "description": "pipelines to create the webhooks to trigger the executions for testing", + "example": [ + "Voluptatem consequatur cum quidem.", + "Occaecati molestiae neque et." + ] + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "4ds", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "provider connector", + "example": "Similique omnis veritatis qui." + }, + "provisioner_type": { + "type": "string", + "description": "provisioner type", + "example": "Quae voluptatum quas." + }, + "provisioner_version": { + "type": "string", + "description": "provisioner version", + "example": "Id id voluptate expedita est est odio." + }, + "release_pipeline": { + "type": "string", + "description": "pipeline to create the webhooks for releases", + "example": "Sed occaecati molestias sit officia iusto." + } + }, + "example": { + "org": "ty", + "pipeline_id": [ + "Aspernatur dolores praesentium voluptas.", + "Ipsum itaque ab voluptatem.", + "Enim architecto nemo aperiam." + ], + "project": "9", + "provider_connector": "Harum illo.", + "provisioner_type": "Velit voluptas ut mollitia et repudiandae.", + "provisioner_version": "Aperiam harum natus placeat omnis nostrum.", + "release_pipeline": "Odio corporis aut enim commodi." + }, + "required": [ + "org", + "project", + "provider_connector", + "provisioner_type", + "provisioner_version" + ] + }, + "UpdateVariableSetRequestAccountScope": { + "type": "object", + "properties": { + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Enim quis voluptatem repellendus ea quasi libero.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Recusandae quasi molestiae aut.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Sint non.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 6016856882728688000, + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Aliquam eum qui qui pariatur corrupti.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Deserunt autem atque ducimus similique asperiores dolores.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Veniam facilis vitae iste.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Molestiae est harum.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 8316010277410654000, + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Quia natus.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Rerum exercitationem est soluta saepe.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Voluptatem alias.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "name" + ] + }, + "UpdateVariableSetRequestOrgScope": { + "type": "object", + "properties": { + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Asperiores quaerat.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Dolor consequatur cupiditate veritatis velit commodi quaerat.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 5661299570272950000, + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Fuga aut quisquam iusto.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Ipsa autem officia.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Optio dignissimos.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Rem sed.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Voluptas repellendus architecto fugit.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 7397200112869503000, + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Dicta aliquam porro enim et deleniti non.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Fugiat qui natus maxime harum.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Rerum aut qui id et molestiae.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "name" + ] + }, + "UpdateVariableSetRequestProjScope": { + "type": "object", + "properties": { + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Quae ad reprehenderit molestiae veniam.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 5808009024582833000, + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Asperiores voluptatem praesentium.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Corrupti nam qui nostrum consequatur.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Sapiente repellat ut.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "example": { + "connectors": [ + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "0j", + "created": 1627590400, + "id": 9219802728275775000, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Id beatae ut et.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + }, + "Molestiae et tempore assumenda voluptatem officia fugit.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "id": 293055739442763140, + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 5149269921833243000, + "repository": "Totam incidunt explicabo.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Nesciunt voluptate sequi beatae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Eos maiores cumque.": { + "created": 1627590400, + "id": 4748252943704325000, + "key": "d9", + "updated": 1627686800, + "value": "Sed provident blanditiis minima sint vel officia.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "name" + ] + }, + "UpdateWorkspaceRequest": { + "type": "object", + "properties": { + "budget": { + "type": "number", + "description": "define the budget for a specific workspace", + "example": 0.13122246, + "format": "float" + }, + "cost_estimation_enabled": { + "type": "boolean", + "description": "define if cost estimation operations will be performed in this workspace", + "default": false, + "example": true + }, + "default_pipelines": { + "type": "object", + "description": "List of default pipelines associated with this workspace and any per-workspace overrides.", + "example": { + "Ipsam aliquam quis repellat.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/DefaultPipelineOverride" + } + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "list of environment variables configured on the workspace.", + "example": { + "Est non voluptates commodi.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Ratione harum.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "Provider Connector is the reference to the connector for the infrastructure provider.", + "example": "Ipsam labore qui omnis eos." + }, + "provider_connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceProviderConnector" + }, + "description": "define an array of provider connectors that belong to Workspace", + "example": [ + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + } + ] + }, + "provisioner": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "provisioner_version": { + "type": "string", + "description": "Provisioner Version defines the tool version to use.", + "default": "latest", + "example": "Molestiae nisi pariatur." + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Maxime eius ut." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Accusantium sint." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_submodules": { + "type": "string", + "description": "repository_submodules is the instruction about whether to clone submodules in the pipeline step", + "default": "false", + "example": "recursive", + "enum": [ + "false", + "true", + "recursive" + ] + }, + "sparse_checkout": { + "type": "string", + "description": "List of patterens that will be used for sparse checkout option of git clone", + "example": "Ex voluptas enim eum ea eum officia." + }, + "tags": { + "type": "string", + "description": "Tags associated with the workspace.", + "example": { + "foo": "bar" + } + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceTerraformVariableFiles" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "list of terraform variables configured on the workspace.", + "example": { + "Rem sit.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "variable_sets": { + "type": "array", + "items": { + "type": "string", + "example": "Consequuntur non eum aperiam perferendis nihil." + }, + "description": "Optional Variable Sets as references", + "example": [ + "Quis ut accusamus et.", + "Temporibus id." + ] + } + }, + "example": { + "budget": 0.12393939, + "cost_estimation_enabled": true, + "default_pipelines": { + "Qui doloribus sed natus.": { + "project_pipeline": "Necessitatibus omnis occaecati enim illo porro molestias.", + "workspace_pipeline": "Ut consequatur voluptatibus." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Sit dolorem perspiciatis veritatis totam deleniti.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "name": "resource name", + "provider_connector": "Sed quia.", + "provider_connectors": [ + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + }, + { + "connector_ref": "nx", + "created": 1627590400, + "id": 1793796241943047000, + "type": "azure", + "updated": 1627686800, + "workspace_id": 7107131874281304000 + } + ], + "provisioner": "terraform", + "provisioner_version": "Eos provident.", + "repository": "Ex voluptatum et occaecati.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Pariatur fugiat rerum.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Veniam aspernatur ex rerum.", + "tags": { + "foo": "bar" + }, + "terraform_variable_files": [ + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Omnis tenetur dolores.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Aut et aliquid occaecati in.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Non dolorum dolores.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Pariatur totam iste quia.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + }, + "Sed in est ut cupiditate magnam cum.": { + "key": "hx", + "value": "Deleniti debitis perferendis et quaerat labore.", + "value_type": "string" + } + }, + "variable_sets": [ + "Non sit quia aperiam.", + "Doloribus repellat neque." + ] + }, + "required": [ + "terraform_variables", + "environment_variables", + "name", + "provider_connector", + "provisioner" + ] + }, + "UpdateWorkspaceResponse": { + "type": "object", + "properties": { + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + } + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + }, + "UpdateWorkspaceTemplateRequest": { + "type": "object", + "properties": { + "version": { + "type": "string", + "description": "New template version", + "example": "lm", + "minLength": 1, + "maxLength": 64 + } + }, + "example": { + "version": "l" + }, + "required": [ + "version" + ] + }, + "UpdateWorkspaceTemplateResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account identifier.", + "example": "sm1", + "minLength": 1, + "maxLength": 128 + }, + "created_at": { + "type": "integer", + "description": "Timestamp when the workspace-template association was created.", + "example": 1627590400, + "format": "int64" + }, + "org": { + "type": "string", + "description": "Organization identifier.", + "example": "5", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project identifier.", + "example": "xhj", + "minLength": 1, + "maxLength": 128 + }, + "template_id": { + "type": "string", + "description": "Template identifier.", + "example": "neg", + "minLength": 1, + "maxLength": 128 + }, + "updated_at": { + "type": "integer", + "description": "Timestamp when the workspace-template association was last updated.", + "example": 1627686800, + "format": "int64" + }, + "version": { + "type": "string", + "description": "Template version associated with the workspace.", + "example": "syr", + "minLength": 1, + "maxLength": 32 + }, + "workspace_id": { + "type": "string", + "description": "Workspace identifier.", + "example": "9rh", + "minLength": 1, + "maxLength": 128 + } + }, + "example": { + "account": "3vi", + "created_at": 1627590400, + "org": "0dm", + "project": "5g", + "template_id": "szf", + "updated_at": 1627686800, + "version": "jcu", + "workspace_id": "bio" + }, + "required": [ + "workspace_id", + "template_id", + "version", + "created_at", + "updated_at", + "account", + "project", + "org" + ] + }, + "UpdateWorkspaceVariableRequest": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Esse ipsa." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "secret", + "enum": [ + "string", + "secret" + ] + } + }, + "example": { + "value": "Consequatur nihil quia provident laborum repellendus facilis.", + "value_type": "secret" + }, + "required": [ + "value", + "value_type" + ] + }, + "UpdateWorkspaceVariableResponse": { + "type": "object", + "properties": { + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + } + }, + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + }, + "UploadRemoteExecutionResponse": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "zz", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 4625805145538839000, + "format": "int64" + }, + "custom_arguments": { + "type": "object", + "description": "The arguments supplied to the plan.", + "example": { + "Porro omnis.": [ + "Et in.", + "Sapiente illum eos saepe commodi.", + "Natus numquam qui qui minima iste quos.", + "Ut natus." + ], + "Reprehenderit fuga voluptates maxime illo quasi tempora.": [ + "Alias autem et excepturi aut quas.", + "Pariatur atque dolore facilis porro et quia." + ] + }, + "additionalProperties": { + "type": "array", + "items": { + "type": "string", + "example": "Est aut et perspiciatis." + }, + "example": [ + "Qui quo quae.", + "Et ipsum et molestiae cumque harum dolorem." + ] + } + }, + "executed": { + "type": "boolean", + "description": "The boolean value indicating if the remote execution has been executed.", + "example": false + }, + "id": { + "type": "string", + "description": "The ID of the remote execution.", + "example": "266d764a-85c0-4bc2-9574-d39459714c4f", + "format": "uuid" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "enr", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The pipeline execution ID of the pipeline executing the remote execution", + "example": "Itaque laudantium." + }, + "pipeline_execution_url": { + "type": "string", + "description": "The pipeline execution URL of the pipeline executing the remote execution", + "example": "Quae quos qui et voluptatem perferendis." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "i9s", + "minLength": 1, + "maxLength": 128 + }, + "sha256_checksum": { + "type": "string", + "description": "The checksum of the patch file of changes that the remote execution will run against.", + "example": "Velit non magnam odit." + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 2481350977999975400, + "format": "int64" + }, + "workspace": { + "type": "string", + "description": "The workspace associated with the remote execution.", + "example": "Vel itaque rerum praesentium molestiae corrupti velit." + } + }, + "example": { + "account": "qm", + "created": 587433700613188900, + "custom_arguments": { + "Facere mollitia amet tempora.": [ + "Voluptatem est dolor.", + "At vel sed." + ] + }, + "executed": true, + "id": "ad091e54-5a7e-4fa2-9fcc-727fae4e0ea3", + "org": "cb", + "pipeline_execution_id": "Eveniet dicta vero quia consequatur natus aliquid.", + "pipeline_execution_url": "Sapiente laboriosam doloremque fuga fugit totam nulla.", + "project": "q", + "sha256_checksum": "Maxime et dolores eligendi ut.", + "updated": 3431541944005204000, + "workspace": "Praesentium pariatur." + }, + "required": [ + "account", + "org", + "project", + "id", + "workspace", + "pipeline_execution_id", + "pipeline_execution_url", + "created", + "updated", + "executed", + "sha256_checksum" + ] + }, + "UploadSigningKeyRequest": { + "type": "object", + "properties": { + "ascii_armor": { + "type": "string", + "description": "ASCII-armored GPG public key", + "example": "Quis quia enim." + }, + "key_id": { + "type": "string", + "description": "GPG key ID", + "example": "ABCD1234" + }, + "key_name": { + "type": "string", + "description": "GPG key name", + "example": "harness" + } + }, + "example": { + "ascii_armor": "Dolores temporibus exercitationem.", + "key_id": "ABCD1234", + "key_name": "harness" + }, + "required": [ + "key_id", + "key_name", + "ascii_armor" + ] + }, + "UpsertDefaultPipelineRequest": { + "type": "object", + "properties": { + "operation": { + "type": "string", + "description": "The default pipeline is associated with this operation", + "example": "plan", + "enum": [ + "plan", + "apply", + "destroy", + "drift" + ] + }, + "pipeline": { + "type": "string", + "description": "The default pipeline associated with the provisioner operation", + "example": "testpipeline" + }, + "provisioner": { + "type": "string", + "description": "The default pipeline is associated with this provisioner", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "updated": { + "type": "integer", + "description": "Time the default pipeline was last updated", + "example": 1636669297674, + "format": "int64" + }, + "workspace": { + "type": "string", + "description": "The default pipeline is associated with this workspace if specified", + "default": "", + "example": "plan" + } + }, + "example": { + "operation": "plan", + "pipeline": "testpipeline", + "provisioner": "opentofu", + "updated": 1636669297674, + "workspace": "plan" + }, + "required": [ + "provisioner", + "operation", + "pipeline", + "updated" + ] + }, + "UsageData": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "description": "Metric value", + "example": 8125471061476690000, + "format": "int64" + } + }, + "example": { + "count": 1338649591859685600 + }, + "required": [ + "count" + ] + }, + "UsageResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/UsageData" + }, + "status": { + "type": "string", + "example": "Perspiciatis reiciendis sed sapiente." + } + }, + "example": { + "data": { + "count": 602615231732471200 + }, + "status": "Dolorem adipisci nihil laborum quo accusamus optio." + }, + "required": [ + "status", + "data" + ] + }, + "ValueChange": { + "type": "object", + "properties": { + "change": { + "type": "string", + "description": "Change made to this resource.", + "example": "added", + "enum": [ + "added", + "changed", + "deleted", + "unchanged" + ] + }, + "drift": { + "type": "boolean", + "description": "Indicates whether this attribute is experiencing drift", + "example": true + }, + "new": { + "type": "string", + "description": "Updated value", + "example": "new value" + }, + "old": { + "type": "string", + "description": "Previous value.", + "example": "old value" + }, + "sensitive": { + "type": "boolean", + "description": "Indicates whether this value is sensitive", + "example": true + } + }, + "example": { + "change": "added", + "drift": true, + "new": "new value", + "old": "old value", + "sensitive": true + }, + "required": [ + "change", + "drift", + "sensitive" + ] + }, + "IaCMVariable": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "6", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Exercitationem blanditiis." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "string", + "enum": [ + "string", + "secret" + ] + } + }, + "description": "Variable is the representation for a single variable associated with a workspace.", + "example": { + "key": "it", + "value": "Quia voluptas est et.", + "value_type": "secret" + }, + "required": [ + "key", + "value", + "value_type", + "kind" + ] + }, + "VariableMetadata": { + "type": "object", + "properties": { + "variable_default": { + "type": "string", + "description": "Variable default value", + "example": "Maiores eos est deleniti reiciendis odit cupiditate." + }, + "variable_description": { + "type": "string", + "description": "Variable description", + "example": "Culpa non quia." + }, + "variable_name": { + "type": "string", + "description": "Variable name", + "example": "Rerum deserunt dolorum." + }, + "variable_required": { + "type": "boolean", + "description": "Is variable required", + "example": true + }, + "variable_sensitive": { + "type": "boolean", + "description": "Is variable sensitive", + "example": true + }, + "variable_type": { + "type": "string", + "description": "Variable type", + "example": "Odit et." + } + }, + "example": { + "variable_default": "Deserunt sequi excepturi rerum dignissimos qui veniam.", + "variable_description": "Id accusantium dolorum.", + "variable_name": "Qui delectus ex nesciunt quisquam aspernatur.", + "variable_required": true, + "variable_sensitive": true, + "variable_type": "Et debitis officia." + } + }, + "VariableResource": { + "type": "object", + "properties": { + "created": { + "type": "integer", + "example": 5715141080767774000, + "format": "int64" + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "y", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "updated": { + "type": "integer", + "example": 4535889817581398000, + "format": "int64" + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Quas aut maiores non." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "secret", + "enum": [ + "string", + "secret" + ] + } + }, + "description": "Variable is the representation for a single variable associated with a workspace.", + "example": { + "created": 4179714640558556700, + "key": "6o", + "updated": 6422516351179653000, + "value": "Veritatis dolor magni sapiente alias.", + "value_type": "secret" + }, + "required": [ + "key", + "value", + "value_type", + "kind", + "created", + "updated" + ] + }, + "VariableSetAccScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "73g", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Consequatur reiciendis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Expedita in quas molestias dolores mollitia est.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 5590261676494021000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "1kp", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Corporis ut.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Create VariableSet at account level.", + "example": { + "account": "cm", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Vitae dicta doloribus velit sit quia.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 3727832428287002600, + "identifier": "j", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Quaerat aut in praesentium est.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "identifier", + "name" + ] + }, + "VariableSetConnector": { + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Connector reference in harness platform.", + "example": "36", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 7693845428206848000, + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type indecates the connector type.", + "example": "azure", + "enum": [ + "aws", + "azure", + "gcp" + ] + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Variable Set provider connector", + "example": { + "connector_ref": "k", + "created": 1627590400, + "id": 3801930554162669600, + "type": "gcp", + "updated": 1627686800 + }, + "required": [ + "connector_ref", + "type" + ] + }, + "VariableSetOrgScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "ml6", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "In et nesciunt repellendus omnis quis eligendi.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam non et quo.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit quasi.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 2908467460155766300, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "e0k", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "aq", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Omnis nihil amet enim mollitia provident.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Qui qui tenetur dolor ipsa necessitatibus minima.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Voluptatum repudiandae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Create VariableSet at org level.", + "example": { + "account": "0dt", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Consequatur atque blanditiis velit qui iusto ipsam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Doloremque ea eveniet doloremque in et consectetur.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Qui doloribus quia velit.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 3369628524252359700, + "identifier": "27", + "name": "resource name", + "org": "2jn", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Qui animi dolore at.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "org", + "identifier", + "name" + ] + }, + "VariableSetProjScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "sy7", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Reiciendis temporibus quo reprehenderit qui doloribus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 9218057164651880000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "ra", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "bra", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "2b", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Aliquid expedita.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Voluptate veritatis et aspernatur veniam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Voluptatum debitis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Create VariableSet at project level.", + "example": { + "account": "m", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Soluta a nihil minima ut autem fugiat.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 6988006505540492000, + "identifier": "qf1", + "name": "resource name", + "org": "m4s", + "project": "c", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Ab veritatis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Distinctio et similique aut enim in.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quos perferendis minus magnam dolores eligendi atque.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name" + ] + }, + "VariableSetResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmVariableSet" + }, + "example": [ + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + }, + { + "account": "o", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "env_vars_count": 19924380692369144, + "environment_variables": { + "Distinctio nostrum ducimus porro.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sit aut temporibus.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus enim ut labore aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 7776089277235462000, + "identifier": "a2", + "name": "resource name", + "org": "c", + "project": "zom", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Mollitia laboriosam minus assumenda.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Nam repudiandae sunt ut cum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Quod molestiae.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "tf_vars_count": 2039776840886135600, + "updated": 1627686800, + "var_files_count": 1450327235984080600 + } + ] + }, + "VariableSetUpdateAccScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "18", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Harum voluptatem.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Velit sint voluptate provident asperiores.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 4424850322946736000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "7lw", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Consequatur rerum corrupti ut.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Velit vero cum odit provident.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Update VariableSet at account level.", + "example": { + "account": "d", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Deserunt quis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Ipsa ab et enim aut repellendus voluptatum.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Omnis molestias ut accusantium eveniet et maiores.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 1856490978444756000, + "identifier": "w", + "name": "resource name", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Amet quos voluptatibus sed et.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Provident in.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "identifier", + "name" + ] + }, + "VariableSetUpdateOrgScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "cb6", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Qui architecto enim.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sint sed beatae eius.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Vel atque rerum est eum deleniti.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 3795291661146706400, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "kbz", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "m", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Atque adipisci repellat ducimus natus vel aliquam.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Minima modi vel esse soluta.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Update VariableSet at org level.", + "example": { + "account": "14u", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quae eaque autem.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Temporibus voluptate velit sit voluptatum doloremque.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 2776484738088048600, + "identifier": "uc", + "name": "resource name", + "org": "h", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Aspernatur sunt delectus maxime adipisci.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Enim quia.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "org", + "identifier", + "name" + ] + }, + "VariableSetUpdateProjScope": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "6is", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Architecto rerum fuga debitis dolor facilis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sed debitis qui ipsa doloribus labore.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + }, + "Sint amet facere.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 2357625686509351000, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "dc", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "3o", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "94q", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Autem debitis.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Update VariableSet at project level.", + "example": { + "account": "a0", + "connectors": [ + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + }, + { + "connector_ref": "xd", + "created": 1627590400, + "id": 2280343843481240800, + "type": "azure", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Voluptates sit sed similique minima.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "id": 301175373297683400, + "identifier": "voq", + "name": "resource name", + "org": "5d", + "project": "iz", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 3839312731968801300, + "repository": "Est eum.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Ipsa dolor.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Assumenda aut animi.": { + "created": 1627590400, + "id": 7544770366183849000, + "key": "w5u", + "updated": 1627686800, + "value": "Voluptas amet et.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name" + ] + }, + "VariableSetVar": { + "type": "object", + "properties": { + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 8340854171285558000, + "format": "int64" + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "b4", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Velit asperiores fuga enim hic tempora sed." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a reference to an item in the secret store", + "example": "secret", + "enum": [ + "string", + "secret" + ] + } + }, + "description": "Variable is the representation for a single variable associated with a Variable Set.", + "example": { + "created": 1627590400, + "id": 6371045006769213000, + "key": "4k4", + "updated": 1627686800, + "value": "Ipsam voluptatem animi laudantium dolorem libero.", + "value_type": "string" + }, + "required": [ + "key", + "value", + "value_type" + ] + }, + "VariableSetVarFile": { + "type": "object", + "properties": { + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 2567316804513108500, + "format": "int64" + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Et autem possimus et quae consequatur doloribus." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Iste vitae molestias et cum maiores." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "VariableSetVarFile defines a variable file that lives in another repository than the workspace files.", + "example": { + "created": 1627590400, + "id": 8347149764460790000, + "repository": "Vitae ea recusandae omnis.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Veniam ab distinctio quae.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + "required": [ + "repository" + ] + }, + "VariableSetsCreateVariableSetAccountLevelResponseBody": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "oc3", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Eum aperiam voluptatibus natus voluptatem est.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Quis sed dolor iure.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Vel id et rem.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "u6", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "xg", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "jk", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Ipsa ipsa.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Create-Variable-Set-Account-LevelResponseBody result type (default view)", + "example": { + "account": "an", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Tenetur fugiat distinctio voluptatem suscipit voluptatem praesentium.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "96", + "name": "resource name", + "org": "m4", + "project": "mc7", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Tempora numquam tempora voluptatibus voluptatibus.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name" + ] + }, + "VariableSetsGetVariableSetAccountLevelResponseBody": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "gak", + "minLength": 1, + "maxLength": 128 + }, + "connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetConnector" + }, + "description": "define an array of connectors that belong to Variable Set", + "example": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ] + }, + "created": { + "type": "integer", + "description": "Timestamp when the variable set was created.", + "example": 1627590400, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "map of environment variables configured on the Variable Set.", + "example": { + "Delectus sed.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "identifier": { + "type": "string", + "description": "Identifier is the VariableSet identifier.", + "example": "erx", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "ks", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/VariableSetVarFile" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "map of terraform variables configured on the Variable Set.", + "example": { + "Omnis in veniam quae et reprehenderit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Qui asperiores consequuntur fugit molestiae vel dolorum.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableSetVar" + } + }, + "updated": { + "type": "integer", + "description": "Timestamp when the variable set was last updated.", + "example": 1627686800, + "format": "int64" + } + }, + "description": "Get-Variable-Set-Account-LevelResponseBody result type (default view)", + "example": { + "account": "6", + "connectors": [ + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + }, + { + "connector_ref": "7b", + "created": 1627590400, + "id": 2007562740785561900, + "type": "aws", + "updated": 1627686800 + } + ], + "created": 1627590400, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Et vel qui cupiditate tempore autem.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Velit animi voluptatem commodi impedit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "identifier": "a", + "name": "resource name", + "org": "zy8", + "project": "fv", + "terraform_variable_files": [ + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + }, + { + "created": 1627590400, + "id": 15149652863243128, + "repository": "Id rem illum accusantium ut voluptate nisi.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Placeat quidem velit explicabo.", + "repository_path": "", + "repository_sha": "abc10ed", + "updated": 1627686800 + } + ], + "terraform_variables": { + "Aut minus expedita omnis.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Est nesciunt sed vel et quis impedit.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + }, + "Officia vel.": { + "created": 1627590400, + "id": 6231827822474041000, + "key": "xdd", + "updated": 1627686800, + "value": "Explicabo porro numquam animi molestias vero.", + "value_type": "string" + } + }, + "updated": 1627686800 + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name" + ] + }, + "Workspace": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "w5h", + "minLength": 1, + "maxLength": 128 + }, + "associated_template": { + "$ref": "#/components/schemas/AssociatedTemplate" + }, + "budget": { + "type": "number", + "description": "define the budget for a specific workspace", + "example": 0.3495121, + "format": "float" + }, + "cost_breakdown_json": { + "type": "string", + "description": "cost_breakdown_json is the identifier to the breakdown cost file from the current execution that was applied successfully", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_diff_json": { + "type": "string", + "description": "cost_diff_json is the identifier to the diff cost file between the previous and current successful executions", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_estimation_enabled": { + "type": "boolean", + "description": "define if cost estimation operations will be performed in this workspace", + "default": false, + "example": true + }, + "default_pipelines": { + "type": "object", + "description": "List of default pipelines associated with this workspace and any per-workspace overrides.", + "example": { + "Necessitatibus facilis.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Nobis dolor quos.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/DefaultPipelineOverride" + } + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "list of environment variables configured on the workspace.", + "example": { + "Esse voluptatem.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 381702339206674600, + "format": "int64" + }, + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "n6", + "minLength": 1, + "maxLength": 128 + }, + "modules_json": { + "type": "string", + "description": "modules_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "xp", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "n8", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "Provider Connector is the reference to the connector for the infrastructure provider.", + "example": "Molestias consectetur dolor qui vel neque." + }, + "provider_connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceProviderConnector" + }, + "description": "define an array of provider connectors that belong to Workspace", + "example": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ] + }, + "providers_json": { + "type": "string", + "description": "providers_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "provisioner": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "provisioner_version": { + "type": "string", + "description": "Provisioner Version defines the tool version to use.", + "default": "latest", + "example": "Ut aut id iure ut voluptatem." + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Minus eligendi labore." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Iusto beatae magnam itaque voluptas voluptas laborum." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_submodules": { + "type": "string", + "description": "repository_submodules is the instruction about whether to clone submodules in the pipeline step", + "default": "false", + "example": "recursive", + "enum": [ + "false", + "true", + "recursive" + ] + }, + "sparse_checkout": { + "type": "string", + "description": "List of patterens that will be used for sparse checkout option of git clone", + "example": "Esse tempore consequatur quia est veritatis." + }, + "state_checksum": { + "type": "string", + "description": "state_checksum is the sha-256 checksum of terraform state file", + "example": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f" + }, + "tags": { + "type": "string", + "description": "Tags associated with the workspace.", + "example": { + "foo": "bar" + } + }, + "terraform_plan_json": { + "type": "string", + "description": "terraform_plan_json is the identifier to the current state file only in JSON format.", + "example": "f9e21473daaa2674d862b67a1339f4570e86de17" + }, + "terraform_state": { + "type": "string", + "description": "terraform_state is the identifier to the plan file used to create the latest state.", + "example": "fc1200c7a7aa52109d762a9f005b149abef01479" + }, + "terraform_state_json": { + "type": "string", + "description": "terraform_state_json is the identifier to the plan file used to create the latest state only in JSON format.", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceTerraformVariableFiles" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "list of terraform variables configured on the workspace.", + "example": { + "Aut non occaecati.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Dicta quaerat ducimus sequi delectus.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Quae laboriosam voluptatem quas et.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "variable_sets": { + "type": "array", + "items": { + "type": "string", + "example": "Iure assumenda voluptate assumenda placeat tempora consequatur." + }, + "description": "Optional Variable Sets as references", + "example": [ + "Voluptatem non.", + "Excepturi rem officiis deleniti fugiat distinctio magnam." + ] + } + }, + "description": "Workspace defines an infrastructure coupled with workflows.", + "example": { + "account": "k", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "budget": 0.9262276, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "default_pipelines": { + "Ab quasi repudiandae.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Delectus necessitatibus atque sunt.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Nobis non rerum minima.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Assumenda reiciendis sunt itaque fugit odit aut.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Mollitia ut doloribus quia pariatur et similique.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "id": 5119241805367156000, + "identifier": "2i", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "fo", + "project": "t", + "provider_connector": "Eos perferendis quaerat voluptatem deserunt itaque.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_version": "Amet voluptas error ipsa quo in.", + "repository": "Quo laudantium culpa non aut eaque.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Saepe fuga.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "In aspernatur maiores.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Facere magnam assumenda ad blanditiis aspernatur.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Iste qui perferendis.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Sint est et doloribus quia ut.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "variable_sets": [ + "Ratione explicabo non excepturi mollitia quidem.", + "Laboriosam ex officia veniam consequatur quaerat fuga.", + "Quod vero." + ] + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "provider_connector", + "provisioner", + "terraform_variables", + "environment_variables" + ] + }, + "WorkspaceData": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "07", + "minLength": 1, + "maxLength": 128 + }, + "data_type": { + "type": "string", + "description": "Type of data stored", + "example": "cost_breakdown", + "enum": [ + "plan_human", + "state_raw", + "state_human", + "cost_breakdown", + "cost_diff", + "modules", + "providers" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "w8n", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution", + "example": "Reiciendis fugiat." + }, + "pipeline_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline", + "example": "Quo mollitia cum ab dolor atque autem." + }, + "pipeline_stage_id": { + "type": "string", + "description": "The unique identifier for the associated pipeline execution stage", + "example": "Perferendis architecto enim reiciendis sint autem." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "y3", + "minLength": 1, + "maxLength": 128 + }, + "provisioner_type": { + "type": "string", + "description": "Type of provisioner that created the data", + "example": "tf", + "enum": [ + "tf" + ] + }, + "stage_id": { + "type": "string", + "description": "The unique identifier for a stage", + "example": "Eos ipsa numquam." + }, + "workspace": { + "type": "string", + "description": "Workspace identifier", + "example": "workspace123" + } + }, + "description": "WorkspaceData is the representation for a single item of data associated with a workspace.", + "example": { + "account": "ss", + "data_type": "cost_breakdown", + "org": "1", + "pipeline_execution_id": "Aut repellat.", + "pipeline_id": "Facilis rem necessitatibus.", + "pipeline_stage_id": "Necessitatibus cumque.", + "project": "a2", + "provisioner_type": "tf", + "stage_id": "Fugit quisquam quas quas ipsa.", + "workspace": "workspace123" + }, + "required": [ + "account", + "org", + "project", + "workspace", + "pipeline_id", + "stage_id", + "pipeline_execution_id", + "pipeline_stage_id", + "provisioner_type", + "data_type" + ] + }, + "WorkspaceDataInfo": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique identifier for the data", + "example": "dc538c61-de48-4220-958c-5f3c4f983daa" + }, + "policy_evaluation": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceDataPolicyEvaluation" + }, + "description": "Individual policy evaluation details", + "example": [ + { + "message": "Omnis beatae odit minus.", + "policy_id": "Sint possimus aut qui.", + "policy_name": "Cupiditate sapiente illo dignissimos qui et accusamus.", + "policy_set_id": "Id quasi at sit unde est.", + "policy_set_name": "Omnis velit.", + "policy_status": "Amet ut." + }, + { + "message": "Omnis beatae odit minus.", + "policy_id": "Sint possimus aut qui.", + "policy_name": "Cupiditate sapiente illo dignissimos qui et accusamus.", + "policy_set_id": "Id quasi at sit unde est.", + "policy_set_name": "Omnis velit.", + "policy_status": "Amet ut." + } + ] + }, + "policy_evaluation_message": { + "type": "string", + "description": "Pre-rendered message included when policy evaluation did not pass", + "example": "- instance type 'xlarge' is not permitted" + }, + "policy_evaluation_status": { + "type": "string", + "description": "The overall status of policy evaluation (if it occurred) indicating whether it passed", + "example": "error", + "enum": [ + "error", + "warning", + "pass" + ] + } + }, + "example": { + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "policy_evaluation": [ + { + "message": "Omnis beatae odit minus.", + "policy_id": "Sint possimus aut qui.", + "policy_name": "Cupiditate sapiente illo dignissimos qui et accusamus.", + "policy_set_id": "Id quasi at sit unde est.", + "policy_set_name": "Omnis velit.", + "policy_status": "Amet ut." + }, + { + "message": "Omnis beatae odit minus.", + "policy_id": "Sint possimus aut qui.", + "policy_name": "Cupiditate sapiente illo dignissimos qui et accusamus.", + "policy_set_id": "Id quasi at sit unde est.", + "policy_set_name": "Omnis velit.", + "policy_status": "Amet ut." + }, + { + "message": "Omnis beatae odit minus.", + "policy_id": "Sint possimus aut qui.", + "policy_name": "Cupiditate sapiente illo dignissimos qui et accusamus.", + "policy_set_id": "Id quasi at sit unde est.", + "policy_set_name": "Omnis velit.", + "policy_status": "Amet ut." + } + ], + "policy_evaluation_message": "- instance type 'xlarge' is not permitted", + "policy_evaluation_status": "error" + }, + "required": [ + "id" + ] + }, + "WorkspaceDataPolicyEvaluation": { + "type": "object", + "properties": { + "message": { + "type": "string", + "example": "Dolorum aperiam repellendus." + }, + "policy_id": { + "type": "string", + "example": "Ut est." + }, + "policy_name": { + "type": "string", + "example": "Eveniet rerum ut nisi et." + }, + "policy_set_id": { + "type": "string", + "example": "Quia hic aut nihil." + }, + "policy_set_name": { + "type": "string", + "example": "Explicabo dolorum." + }, + "policy_status": { + "type": "string", + "example": "Fugiat ipsa quo iste." + } + }, + "example": { + "message": "Eius iusto accusamus cum iusto dignissimos.", + "policy_id": "Est facilis repellendus cum aliquam aliquid.", + "policy_name": "Commodi soluta earum et modi praesentium.", + "policy_set_id": "Molestiae eum commodi.", + "policy_set_name": "Adipisci eum.", + "policy_status": "Impedit minima atque neque." + }, + "required": [ + "policy_set_id", + "policy_set_name", + "policy_id", + "policy_name", + "policy_status", + "message" + ] + }, + "WorkspaceDataResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmWorkspacedata" + }, + "example": [ + { + "account": "3", + "created": 1715988832333047600, + "data_type": "state_raw", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "1", + "pipeline_execution_id": "Omnis explicabo ea et maxime nihil.", + "pipeline_id": "Alias tenetur quisquam.", + "pipeline_stage_id": "Nihil sapiente minus.", + "project": "6", + "provisioner_type": "tf", + "stage_id": "In minus quasi.", + "workspace": "workspace123" + }, + { + "account": "3", + "created": 1715988832333047600, + "data_type": "state_raw", + "id": "dc538c61-de48-4220-958c-5f3c4f983daa", + "org": "1", + "pipeline_execution_id": "Omnis explicabo ea et maxime nihil.", + "pipeline_id": "Alias tenetur quisquam.", + "pipeline_stage_id": "Nihil sapiente minus.", + "project": "6", + "provisioner_type": "tf", + "stage_id": "In minus quasi.", + "workspace": "workspace123" + } + ] + }, + "WorkspaceEvent": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "bin", + "minLength": 1, + "maxLength": 128 + }, + "data": { + "type": "object", + "example": { + "Omnis et velit excepturi neque.": "Repellendus enim et." + }, + "additionalProperties": { + "type": "string", + "example": "Omnis quidem excepturi sapiente libero quia." + } + }, + "event_type": { + "type": "string", + "description": "The type of event that occurred", + "example": "inactive", + "enum": [ + "plan", + "drifted", + "provisioning", + "destroying", + "active", + "inactive", + "apply_needed", + "failed", + "stage-complete" + ] + }, + "metadata": { + "$ref": "#/components/schemas/ActivityMetadata" + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "l", + "minLength": 1, + "maxLength": 128 + }, + "pipeline_execution_id": { + "type": "string", + "description": "Deprecated: use metadata instead", + "default": "", + "example": "Et et quo reiciendis sit." + }, + "pipeline_stage_id": { + "type": "string", + "description": "Deprecated: use metadata instead", + "default": "", + "example": "Qui praesentium libero reprehenderit." + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "5e", + "minLength": 1, + "maxLength": 128 + }, + "workspace": { + "type": "string", + "description": "Workspace associated with this event", + "example": "j", + "minLength": 1, + "maxLength": 1024 + } + }, + "description": "WorkspaceEvent defines an individual workspace event", + "example": { + "account": "0", + "data": { + "Quo et.": "Deleniti voluptas ullam occaecati ut voluptatem." + }, + "event_type": "apply_needed", + "metadata": { + "PlannedChangesCount": 4038944726028888000, + "activity_status": "failure", + "activity_type": "drifted", + "cost_breakdown_uuid": "Optio nobis explicabo sit possimus accusamus deserunt.", + "cost_currency": "Facilis enim quo ea temporibus esse.", + "cost_diff_total_monthly": "Voluptatem eligendi reiciendis doloribus.", + "cost_diff_uuid": "Voluptas autem iste.", + "cost_past_total_monthly": "Assumenda voluptates officiis.", + "cost_total_monthly": "Odit suscipit nesciunt voluptate.", + "cost_total_monthly_percentage_change": "Dolorem natus velit aspernatur in eos blanditiis.", + "drift_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "enable_solutions_factory": true, + "git_branch": "Quidem quasi eligendi at eveniet quaerat.", + "git_commit_message": "Voluptatibus debitis vitae dolor.", + "git_commit_sha": "Quidem omnis autem et et magni.", + "git_repo": "Ex molestiae iusto voluptate enim.", + "modules_uuid": "Inventore aut quaerat.", + "output_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "pipeline": "Ipsum expedita.", + "pipeline_execution_id": "Tenetur ipsum autem doloremque est itaque.", + "pipeline_execution_number": "Doloremque rerum perspiciatis et.", + "pipeline_name": "Consequatur quibusdam aut eligendi in voluptatem.", + "pipeline_stage_id": "Nesciunt nobis eos qui ea et.", + "plan_uuid": "Vel occaecati veritatis deserunt ipsum.", + "providers_uuid": "Unde est unde esse.", + "provisioner": "Quia provident cupiditate consequatur veniam dolores.", + "provisioner_version": "Non eaque et praesentium voluptas iure.", + "resource_counts": { + "added": 4615460476503193000, + "changed": 1469105184532393000, + "deleted": 5917451394850816000, + "imported": 1680869416855261000, + "removed": 6340494387102625000, + "unchanged": 6482869343925029000 + }, + "state_checksum": "Dolores neque.", + "state_uuid": "Expedita exercitationem.", + "trigger": { + "Animi nesciunt adipisci dolores.": "In enim soluta.", + "Numquam reiciendis ex quia fuga vel est.": "Vel eius aut omnis." + } + }, + "org": "6d", + "pipeline_execution_id": "Nihil qui voluptatibus animi.", + "pipeline_stage_id": "Praesentium quia dolor necessitatibus.", + "project": "r", + "workspace": "h" + }, + "required": [ + "account", + "org", + "project", + "workspace", + "event_type" + ] + }, + "WorkspaceMetrics": { + "type": "object", + "properties": { + "status_counts": { + "type": "object", + "description": "Counts by status", + "example": { + "Eum ratione unde suscipit repudiandae.": 3511889811826729500, + "Possimus voluptatem.": 3092728070358288400, + "Quia et libero.": 4844589270341794000 + }, + "additionalProperties": { + "type": "integer", + "example": 6990443004014352000, + "format": "int64" + } + } + }, + "example": { + "status_counts": { + "Aspernatur quo in vel.": 8544952097401656, + "Dignissimos et eaque.": 912367701081439900 + } + } + }, + "WorkspaceModuleCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmWorkspacemodule" + }, + "example": [ + { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + }, + { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + }, + { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + }, + { + "key": "ec2-instance_test", + "source": "registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete", + "version": "5.0.0" + } + ] + }, + "WorkspaceProviderConnector": { + "type": "object", + "properties": { + "connector_ref": { + "type": "string", + "description": "Connector reference in harness platform.", + "example": "h", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Timestamp when the connector was created.", + "example": 1627590400, + "format": "int64" + }, + "id": { + "type": "integer", + "description": "ID PK for internal uses", + "example": 244150650984646050, + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type indicates the connector type.", + "example": "gcp", + "enum": [ + "aws", + "azure", + "gcp" + ] + }, + "updated": { + "type": "integer", + "description": "Timestamp when the connector was last updated.", + "example": 1627686800, + "format": "int64" + }, + "workspace_id": { + "type": "integer", + "description": "Workspace ID FK for internal uses", + "example": 3357232630828195300, + "format": "int64" + } + }, + "description": "Workspace provider connector", + "example": { + "connector_ref": "ll1", + "created": 1627590400, + "id": 9082749264062232000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 5442445723984101000 + }, + "required": [ + "connector_ref", + "type" + ] + }, + "WorkspaceResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmWorkspace" + }, + "example": [ + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + }, + { + "account": "u", + "associated_template": { + "template_id": "i", + "version": "s53" + }, + "backend_locked": true, + "budget": 0.79265285, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 697493781479189100, + "default_pipelines": { + "Impedit a error odio saepe in.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Officiis et.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + }, + "Voluptatum et non.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Quas non atque quis non.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "id": 1173106936957254700, + "identifier": "j", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "o", + "project": "7", + "provider_connector": "Nam occaecati distinctio eligendi sequi.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "opentofu", + "provisioner_data": "Labore odit adipisci sit.", + "provisioner_version": "Omnis aliquid omnis.", + "repository": "Quis dolor magnam est rerum culpa.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Voluptatem recusandae ut.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Placeat totam consequatur hic.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "active", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Aliquam veritatis.": { + "created": 7706841753309084000, + "key": "yu", + "updated": 4880746350361912000, + "value": "Ea quis quo.", + "value_type": "secret" + } + }, + "updated": 7557642812760922000, + "variable_sets": [ + "Et corporis ut voluptas.", + "In est sed ullam et." + ] + } + ] + }, + "WorkspaceResourceSummary": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "jfw", + "minLength": 1, + "maxLength": 128 + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 7105507230066359000, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "f", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "gq", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "0", + "minLength": 1, + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "The status of the workspace", + "example": "inactive", + "enum": [ + "active", + "inactive", + "provisioning", + "destroying", + "failed", + "unknown" + ] + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 7223535426993574000, + "format": "int64" + } + }, + "description": "WorkspaceResource is the representation for a single workspace definition. (summary view)", + "example": { + "account": "q", + "created": 7054037246195551000, + "description": "this is a more detailed explanation of the resource.", + "identifier": "9", + "name": "resource name", + "org": "i", + "project": "lh1", + "status": "destroying", + "updated": 6905574614295173000 + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "created", + "updated", + "status" + ] + }, + "WorkspaceResourceSummaryCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceResourceSummary" + }, + "description": "WorkspaceResourceCollection is the result type for an array of WorkspaceResource (summary view)", + "example": [ + { + "account": "w", + "created": 5528003699720887000, + "description": "this is a more detailed explanation of the resource.", + "identifier": "af3", + "name": "resource name", + "org": "ed", + "project": "mc", + "status": "unknown", + "updated": 998437431035374600 + }, + { + "account": "w", + "created": 5528003699720887000, + "description": "this is a more detailed explanation of the resource.", + "identifier": "af3", + "name": "resource name", + "org": "ed", + "project": "mc", + "status": "unknown", + "updated": 998437431035374600 + }, + { + "account": "w", + "created": 5528003699720887000, + "description": "this is a more detailed explanation of the resource.", + "identifier": "af3", + "name": "resource name", + "org": "ed", + "project": "mc", + "status": "unknown", + "updated": 998437431035374600 + } + ] + }, + "WorkspaceTerraformVariableFiles": { + "type": "object", + "properties": { + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Nesciunt saepe aperiam modi aut illo." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Quis tempore impedit suscipit occaecati." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + } + }, + "description": "WorkspaceTerraformVarFiles defines a variable file that lives in another repository than the workspace files.", + "example": { + "repository": "Velit quam consectetur.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Sequi veniam tempora ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + "required": [ + "repository" + ] + }, + "WorkspaceUpdate": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "p", + "minLength": 1, + "maxLength": 128 + }, + "budget": { + "type": "number", + "description": "define the budget for a specific workspace", + "example": 0.27371213, + "format": "float" + }, + "cost_estimation_enabled": { + "type": "boolean", + "description": "define if cost estimation operations will be performed in this workspace", + "default": false, + "example": true + }, + "default_pipelines": { + "type": "object", + "description": "List of default pipelines associated with this workspace and any per-workspace overrides.", + "example": { + "Vel cupiditate nostrum.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/DefaultPipelineOverride" + } + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "list of environment variables configured on the workspace.", + "example": { + "Nesciunt consequuntur odit neque consequatur velit.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "g", + "minLength": 1, + "maxLength": 128 + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "vko", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "jk", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "Provider Connector is the reference to the connector for the infrastructure provider.", + "example": "Consequatur sed commodi dolorum." + }, + "provider_connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceProviderConnector" + }, + "description": "define an array of provider connectors that belong to Workspace", + "example": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ] + }, + "provisioner": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "terraform", + "enum": [ + "terraform", + "opentofu" + ] + }, + "provisioner_version": { + "type": "string", + "description": "Provisioner Version defines the tool version to use.", + "default": "latest", + "example": "Qui necessitatibus quo." + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Numquam at aliquam libero." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Dolor quasi alias veniam et soluta." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_submodules": { + "type": "string", + "description": "repository_submodules is the instruction about whether to clone submodules in the pipeline step", + "default": "false", + "example": "recursive", + "enum": [ + "false", + "true", + "recursive" + ] + }, + "sparse_checkout": { + "type": "string", + "description": "List of patterens that will be used for sparse checkout option of git clone", + "example": "Hic quae non praesentium in." + }, + "tags": { + "type": "string", + "description": "Tags associated with the workspace.", + "example": { + "foo": "bar" + } + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceTerraformVariableFiles" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "list of terraform variables configured on the workspace.", + "example": { + "Accusantium est qui.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Et officia repellendus.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Nihil in.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/IaCMVariable" + } + }, + "variable_sets": { + "type": "array", + "items": { + "type": "string", + "example": "Minus animi eveniet consectetur omnis est." + }, + "description": "Optional Variable Sets as references", + "example": [ + "Soluta laboriosam aliquid fugiat nihil corporis sequi.", + "Omnis laudantium.", + "Vel illum sed illum expedita porro amet." + ] + } + }, + "description": "WorkspaceUpdate defines the fields of a workspace that can be updated.", + "example": { + "account": "i", + "budget": 0.6276747, + "cost_estimation_enabled": true, + "default_pipelines": { + "Nisi non libero.": { + "project_pipeline": "Occaecati corporis qui maiores voluptate.", + "workspace_pipeline": "Vel quos sunt quisquam totam." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Vitae beatae.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "identifier": "3ly", + "name": "resource name", + "org": "kz", + "project": "rwq", + "provider_connector": "Qui aut rerum ut sint et.", + "provider_connectors": [ + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + }, + { + "connector_ref": "3e", + "created": 1627590400, + "id": 4514520664801533400, + "type": "azure", + "updated": 1627686800, + "workspace_id": 58148842956961750 + } + ], + "provisioner": "opentofu", + "provisioner_version": "Enim deleniti culpa ab.", + "repository": "Quia error voluptate ut vel tempora aut.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Et provident incidunt.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Autem ea sunt.", + "tags": { + "foo": "bar" + }, + "terraform_variable_files": [ + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Sint dolorum odit assumenda quis nesciunt sunt.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Laboriosam error vel amet quam nobis ducimus.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Eligendi suscipit dolores enim corporis facilis rem.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Quam aliquid.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + }, + "Quis sapiente officia.": { + "key": "1", + "value": "Autem quia.", + "value_type": "string" + } + }, + "variable_sets": [ + "Quod ea laborum alias.", + "Qui nesciunt at.", + "Quidem cum.", + "Quos eos." + ] + }, + "required": [ + "account", + "org", + "project", + "identifier", + "terraform_variables", + "environment_variables", + "name", + "provider_connector", + "provisioner" + ] + }, + "WorkspaceVariable": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "iuz", + "minLength": 1, + "maxLength": 128 + }, + "key": { + "type": "string", + "description": "Key is the identifier for the secret.", + "example": "pr", + "pattern": "^[a-zA-Z0-9_]+$", + "minLength": 1, + "maxLength": 128 + }, + "kind": { + "type": "string", + "description": "Kind is the classfcation of the variable.", + "example": "env", + "enum": [ + "env", + "tf" + ] + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "2or", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "j", + "minLength": 1, + "maxLength": 128 + }, + "value": { + "type": "string", + "description": "Value is the value of the secret.", + "example": "Eius consequatur odio." + }, + "value_type": { + "type": "string", + "description": "Type indecates the value type of the secret. In the case of secret this is a\nreference to an item in the secret store", + "example": "string", + "enum": [ + "string", + "secret" + ] + }, + "workspace": { + "type": "string", + "description": "Workspace is the resource workspace this variable is associated with.", + "example": "Commodi possimus consequatur non ratione et." + } + }, + "description": "Workspace Variable describes a base variable associated with a workspace. It is intended to be extended\ninto specific types which are then used.", + "example": { + "account": "p", + "key": "yp", + "kind": "tf", + "org": "z", + "project": "y", + "value": "Ut cumque.", + "value_type": "string", + "workspace": "Id dolorem accusantium est et omnis." + }, + "required": [ + "account", + "org", + "project", + "workspace", + "key", + "value", + "value_type", + "kind" + ] + }, + "WorkspaceVariableResourceCollection": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HarnessIacmWorkspacevariable" + }, + "example": [ + { + "account": "0tp", + "created": 7505381824165917000, + "key": "4", + "kind": "env", + "org": "g4", + "project": "btd", + "updated": 3965659365346174500, + "value": "Et animi.", + "value_type": "string", + "workspace": "Et sit vel atque voluptas ipsum." + }, + { + "account": "0tp", + "created": 7505381824165917000, + "key": "4", + "kind": "env", + "org": "g4", + "project": "btd", + "updated": 3965659365346174500, + "value": "Et animi.", + "value_type": "string", + "workspace": "Et sit vel atque voluptas ipsum." + }, + { + "account": "0tp", + "created": 7505381824165917000, + "key": "4", + "kind": "env", + "org": "g4", + "project": "btd", + "updated": 3965659365346174500, + "value": "Et animi.", + "value_type": "string", + "workspace": "Et sit vel atque voluptas ipsum." + }, + { + "account": "0tp", + "created": 7505381824165917000, + "key": "4", + "kind": "env", + "org": "g4", + "project": "btd", + "updated": 3965659365346174500, + "value": "Et animi.", + "value_type": "string", + "workspace": "Et sit vel atque voluptas ipsum." + } + ] + }, + "WorkspacesCreateWorkspaceResponseBody": { + "type": "object", + "properties": { + "policy_evaluation": { + "$ref": "#/components/schemas/IaCMEvaluation" + } + }, + "description": "Create-WorkspaceResponseBody result type (default view)", + "example": { + "policy_evaluation": { + "account_id": "XRQAjvT37acOiXx9PRaQMF", + "action": "onrun", + "created": 1636370209475, + "details": [ + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + }, + { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "action": "onrun", + "created": 1636669297674, + "description": "Captures critical production policies", + "details": [ + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + }, + { + "deny_messages": [ + "deployment stage 'example-stage' does not have a HarnessApproval step", + "deployment stage 'example-stage' has step 'run-script' that is forbidden type 'ShellScript'" + ], + "output": "{\n \"deny\": [\n \"deployment stage 'deploy' does not have a HarnessApproval step\"\n ],\n \"stages_with_approval\": []\n}", + "policy": { + "account_id": "eBqAoNchMLKigC_qZ5EdC", + "created": 1636669297674, + "identifier": "policy-1", + "name": "Pipeline Approval", + "org_id": "test-org", + "project_id": "test-project", + "rego": "", + "updated": 1636669297674 + }, + "rego_error": "policy.rego:25: rego_parse_error: non-terminated string m == \"test", + "status": "error" + } + ], + "enabled": true, + "identifier": "policyset-1", + "name": "Production Policies", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline", + "updated": 1636669297674 + } + ], + "entity": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "entity_metadata": "7bbca5d4-e9f2-4955-9b2a-019ec4d3645e", + "id": 123, + "input": "", + "org_id": "test-org", + "project_id": "test-project", + "status": "error", + "type": "pipeline,service" + } + } + }, + "WorkspacesShowWorkspaceResponseBody": { + "type": "object", + "properties": { + "account": { + "type": "string", + "description": "Account is the internal customer account ID.", + "example": "a22", + "minLength": 1, + "maxLength": 128 + }, + "associated_template": { + "$ref": "#/components/schemas/AssociatedTemplate" + }, + "backend_locked": { + "type": "boolean", + "description": "Defines if the remote backend is locked or not", + "default": false, + "example": false + }, + "budget": { + "type": "number", + "description": "define the budget for a specific workspace", + "example": 0.35840097, + "format": "float" + }, + "cost_breakdown_json": { + "type": "string", + "description": "cost_breakdown_json is the identifier to the breakdown cost file from the current execution that was applied successfully", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_diff_json": { + "type": "string", + "description": "cost_diff_json is the identifier to the diff cost file between the previous and current successful executions", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "cost_estimation_enabled": { + "type": "boolean", + "description": "define if cost estimation operations will be performed in this workspace", + "default": false, + "example": true + }, + "created": { + "type": "integer", + "description": "Created is the unix timestamp at which the resource was originally created in milliseconds.", + "example": 6189025414177247000, + "format": "int64" + }, + "default_pipelines": { + "type": "object", + "description": "List of default pipelines associated with this workspace and any per-workspace overrides.", + "example": { + "Iure placeat quis nam non laborum voluptates.": { + "project_pipeline": "Fugit voluptates sequi dolores rerum cumque porro.", + "workspace_pipeline": "Rerum vero fugit in velit voluptatem dolores." + }, + "Magni voluptates natus dignissimos a eligendi molestias.": { + "project_pipeline": "Fugit voluptates sequi dolores rerum cumque porro.", + "workspace_pipeline": "Rerum vero fugit in velit voluptatem dolores." + }, + "Qui dolores.": { + "project_pipeline": "Fugit voluptates sequi dolores rerum cumque porro.", + "workspace_pipeline": "Rerum vero fugit in velit voluptatem dolores." + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/DefaultPipelineOverride" + } + }, + "description": { + "type": "string", + "description": "Description provides long-form text about the resource.", + "example": "this is a more detailed explanation of the resource." + }, + "environment_variables": { + "type": "object", + "description": "list of environment variables configured on the workspace.", + "example": { + "Cum eius.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + }, + "Fugiat neque magni aliquam quis voluptatibus itaque.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + }, + "Iste fugit quasi in sequi eum.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableResource" + } + }, + "identifier": { + "type": "string", + "description": "Workspace identifier.", + "example": "11x", + "minLength": 1, + "maxLength": 128 + }, + "modules_json": { + "type": "string", + "description": "modules_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "name": { + "type": "string", + "description": "Name is the human readable name for the resource.", + "example": "resource name", + "minLength": 1, + "maxLength": 128 + }, + "org": { + "type": "string", + "description": "Org is the organisation identifier.", + "example": "lg", + "minLength": 1, + "maxLength": 128 + }, + "project": { + "type": "string", + "description": "Project is the project identifier.", + "example": "vdl", + "minLength": 1, + "maxLength": 128 + }, + "provider_connector": { + "type": "string", + "description": "Provider Connector is the reference to the connector for the infrastructure provider.", + "example": "Voluptate delectus." + }, + "provider_connectors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceProviderConnector" + }, + "description": "define an array of provider connectors that belong to Workspace", + "example": [ + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + }, + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + } + ] + }, + "providers_json": { + "type": "string", + "description": "providers_json is the identifier of any modules metadata associated with this workspace", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "provisioner": { + "type": "string", + "description": "Provisioner defines the provisioning tool to use.", + "example": "opentofu", + "enum": [ + "terraform", + "opentofu" + ] + }, + "provisioner_data": { + "type": "string", + "example": "Corporis dolor." + }, + "provisioner_version": { + "type": "string", + "description": "Provisioner Version defines the tool version to use.", + "default": "latest", + "example": "Sit ut." + }, + "repository": { + "type": "string", + "description": "Repository is the name of the repository to use.", + "example": "Distinctio natus facere consequatur repellat voluptatem et." + }, + "repository_branch": { + "type": "string", + "description": "Repository Branch in which the code should be accessed.", + "example": "main" + }, + "repository_commit": { + "type": "string", + "description": "Repository Commit/Tag in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_connector": { + "type": "string", + "description": "Repository Connector is the reference to the connector to use for this code.", + "example": "Et vel optio aut saepe harum." + }, + "repository_path": { + "type": "string", + "description": "Repository Path is the path in which the infra code resides.", + "default": "", + "example": "" + }, + "repository_sha": { + "type": "string", + "description": "Repository SHA in which the code should be accessed.", + "example": "abc10ed" + }, + "repository_submodules": { + "type": "string", + "description": "repository_submodules is the instruction about whether to clone submodules in the pipeline step", + "default": "false", + "example": "recursive", + "enum": [ + "false", + "true", + "recursive" + ] + }, + "sparse_checkout": { + "type": "string", + "description": "List of patterens that will be used for sparse checkout option of git clone", + "example": "Vero qui." + }, + "state_checksum": { + "type": "string", + "description": "state_checksum is the sha-256 checksum of terraform state file", + "example": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f" + }, + "status": { + "type": "string", + "description": "The status of the workspace", + "example": "provisioning", + "enum": [ + "active", + "inactive", + "provisioning", + "destroying", + "failed", + "unknown" + ] + }, + "tags": { + "type": "string", + "description": "Tags associated with the workspace.", + "example": { + "foo": "bar" + } + }, + "terraform_plan_json": { + "type": "string", + "description": "terraform_plan_json is the identifier to the current state file only in JSON format.", + "example": "f9e21473daaa2674d862b67a1339f4570e86de17" + }, + "terraform_state": { + "type": "string", + "description": "terraform_state is the identifier to the plan file used to create the latest state.", + "example": "fc1200c7a7aa52109d762a9f005b149abef01479" + }, + "terraform_state_json": { + "type": "string", + "description": "terraform_state_json is the identifier to the plan file used to create the latest state only in JSON format.", + "example": "c4a2d99bc28d236098a095277b7eb0718d6be068" + }, + "terraform_variable_files": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkspaceTerraformVariableFiles" + }, + "description": "define an array of terraform variables files that belong to a different repository", + "example": [ + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ] + }, + "terraform_variables": { + "type": "object", + "description": "list of terraform variables configured on the workspace.", + "example": { + "Veniam esse veritatis.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + } + }, + "additionalProperties": { + "$ref": "#/components/schemas/VariableResource" + } + }, + "updated": { + "type": "integer", + "description": "Modified is the unix timestamp at which the resource was last modified in milliseconds.", + "example": 8382954785208473000, + "format": "int64" + }, + "variable_sets": { + "type": "array", + "items": { + "type": "string", + "example": "Eveniet est dicta expedita magni quo." + }, + "description": "Attached Variable Sets references", + "example": [ + "Facere rerum rem et accusamus maiores.", + "Iusto veritatis nobis nemo id." + ] + } + }, + "description": "Show-WorkspaceResponseBody result type (default view)", + "example": { + "account": "0og", + "associated_template": { + "template_id": "i", + "version": "nx" + }, + "backend_locked": false, + "budget": 0.7310077, + "cost_breakdown_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_diff_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "cost_estimation_enabled": true, + "created": 6338954853517463000, + "default_pipelines": { + "Iste cupiditate.": { + "project_pipeline": "Fugit voluptates sequi dolores rerum cumque porro.", + "workspace_pipeline": "Rerum vero fugit in velit voluptatem dolores." + }, + "Provident impedit maiores distinctio quaerat a laboriosam.": { + "project_pipeline": "Fugit voluptates sequi dolores rerum cumque porro.", + "workspace_pipeline": "Rerum vero fugit in velit voluptatem dolores." + } + }, + "description": "this is a more detailed explanation of the resource.", + "environment_variables": { + "Aut sed quaerat temporibus.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + }, + "Eius voluptas corporis accusantium ratione saepe quo.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + } + }, + "identifier": "uh", + "modules_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "name": "resource name", + "org": "f", + "project": "o90", + "provider_connector": "Quae ipsum perspiciatis unde amet.", + "provider_connectors": [ + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + }, + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + }, + { + "connector_ref": "v7", + "created": 1627590400, + "id": 3101592207166135000, + "type": "gcp", + "updated": 1627686800, + "workspace_id": 4782033899532433000 + } + ], + "providers_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "provisioner": "terraform", + "provisioner_data": "Et facilis asperiores.", + "provisioner_version": "Dolor occaecati et earum.", + "repository": "Quasi eos maiores veritatis.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Omnis aut libero qui.", + "repository_path": "", + "repository_sha": "abc10ed", + "repository_submodules": "recursive", + "sparse_checkout": "Quia est soluta veniam.", + "state_checksum": "d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f", + "status": "unknown", + "tags": { + "foo": "bar" + }, + "terraform_plan_json": "f9e21473daaa2674d862b67a1339f4570e86de17", + "terraform_state": "fc1200c7a7aa52109d762a9f005b149abef01479", + "terraform_state_json": "c4a2d99bc28d236098a095277b7eb0718d6be068", + "terraform_variable_files": [ + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + }, + { + "repository": "Officia quia.", + "repository_branch": "main", + "repository_commit": "abc10ed", + "repository_connector": "Impedit et eum unde voluptatem velit.", + "repository_path": "", + "repository_sha": "abc10ed" + } + ], + "terraform_variables": { + "Consequatur adipisci suscipit sed eligendi autem quo.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + }, + "Fuga iusto nobis nulla in eum.": { + "created": 7041429794288801000, + "key": "ari", + "updated": 8855489299331814000, + "value": "Sint repellendus fugiat nemo reiciendis velit.", + "value_type": "string" + } + }, + "updated": 8222430683434993000, + "variable_sets": [ + "Natus at.", + "Est impedit eligendi alias nihil.", + "Omnis voluptates dolores voluptas explicabo rerum." + ] + }, + "required": [ + "account", + "org", + "project", + "identifier", + "name", + "provider_connector", + "provisioner", + "repository_connector", + "terraform_variables", + "environment_variables", + "created", + "updated", + "provisioner_data", + "status", + "tags" + ] + }, + "AccountUsage": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID", + "example": "BdsgiWzwT7CQFeJl9XkQ3A" + }, + "developerCount": { + "type": "integer", + "description": "Developer count", + "example": 25, + "format": "int64" + }, + "scanCount": { + "type": "integer", + "description": "Scan count", + "example": 5000, + "format": "int64" + } + }, + "description": "Account Usage", + "example": { + "accountId": "BdsgiWzwT7CQFeJl9XkQ3A", + "developerCount": 25, + "scanCount": 5000 + }, + "required": [ + "accountId", + "scanCount", + "developerCount" + ] + }, + "AllIssueSummary": { + "type": "object", + "properties": { + "exemptionExpiration": { + "type": "integer", + "description": "Unix timestamp at which this Exemption will expire", + "example": 1651578240, + "format": "int64" + }, + "exemptionId": { + "type": "string", + "description": "ID of Security Test Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "exemptionStatus": { + "type": "string", + "description": "Status of project scoped exemption for this issue", + "example": "Pending" + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "issueType": { + "type": "string", + "description": "Issue Type", + "example": "Ratione accusamus." + }, + "lastDetected": { + "type": "integer", + "description": "Timestamp of the last detection of this issue", + "example": 1634836529, + "format": "int64" + }, + "numOccurrences": { + "type": "number", + "description": "Number of occurrences of this issue against the latest baseline scan", + "example": 12, + "format": "float" + }, + "numTargetsImpacted": { + "type": "number", + "description": "Number of targets impacted where this issue was found against the latest baseline scan", + "example": 2, + "format": "float" + }, + "override": { + "type": "object", + "description": "Indicates the issue has been overridden", + "example": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "additionalProperties": true + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash", + "maxLength": 128 + } + }, + "description": "All issue summary", + "example": { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Asperiores exercitationem non vero et quaerat praesentium.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + }, + "required": [ + "id", + "title", + "severityCode", + "numTargetsImpacted", + "numOccurrences", + "lastDetected" + ] + }, + "AllIssuesDetailsResult": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Issue description", + "example": "Quis voluptatem veritatis deserunt vero." + }, + "impactedTargets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ImpactedTarget" + }, + "description": "List of Impacted Targets", + "example": [ + { + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Et dignissimos.", + "id": "target1111111111111111", + "lastDetected": 1634836529, + "name": "The Target Name", + "numOccurrences": 10, + "userId": "Quo quo consequatur atque odit.", + "variantName": "Praesentium nisi rerum." + }, + { + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Et dignissimos.", + "id": "target1111111111111111", + "lastDetected": 1634836529, + "name": "The Target Name", + "numOccurrences": 10, + "userId": "Quo quo consequatur atque odit.", + "variantName": "Praesentium nisi rerum." + } + ] + }, + "issueType": { + "type": "string", + "description": "Issue Type", + "example": "Vero enim aut recusandae molestiae optio eos." + }, + "lastDetected": { + "type": "number", + "description": "Timestamp of the last detection of this issue", + "example": 1634836529, + "format": "float" + }, + "override": { + "type": "object", + "description": "Indicates the issue has been overridden", + "example": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "additionalProperties": true + }, + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "referenceIdentifiers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RefIds" + }, + "description": "Reference Identifiers", + "example": [ + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + }, + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + }, + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + } + ] + }, + "scanTool": { + "type": "string", + "description": "Product name of the scan tool used in this step", + "example": "owasp" + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "targetType": { + "type": "string", + "description": "Target Type", + "example": "Vero accusamus ab facilis qui et." + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash", + "maxLength": 128 + } + }, + "example": { + "description": "Cumque molestiae.", + "impactedTargets": [ + { + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Et dignissimos.", + "id": "target1111111111111111", + "lastDetected": 1634836529, + "name": "The Target Name", + "numOccurrences": 10, + "userId": "Quo quo consequatur atque odit.", + "variantName": "Praesentium nisi rerum." + }, + { + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Et dignissimos.", + "id": "target1111111111111111", + "lastDetected": 1634836529, + "name": "The Target Name", + "numOccurrences": 10, + "userId": "Quo quo consequatur atque odit.", + "variantName": "Praesentium nisi rerum." + } + ], + "issueType": "Suscipit ducimus.", + "lastDetected": 1634836529, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "referenceIdentifiers": [ + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + }, + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + }, + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + } + ], + "scanTool": "owasp", + "severityCode": "High", + "targetType": "Odit commodi.", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + }, + "required": [ + "title", + "description", + "severityCode", + "lastDetected", + "scanTool", + "targetType", + "referenceIdentifiers", + "impactedTargets", + "pagination" + ] + }, + "AllIssuesFiltersResult": { + "type": "object", + "properties": { + "latestBaselineScans": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LatestBaselineScanInfo" + }, + "example": [ + { + "pipelineId": "pipeline_1", + "scanTool": "owasp", + "targetId": "abcdef1234567890ghijkl", + "targetName": "The Target", + "targetType": "repository" + }, + { + "pipelineId": "pipeline_1", + "scanTool": "owasp", + "targetId": "abcdef1234567890ghijkl", + "targetName": "The Target", + "targetType": "repository" + }, + { + "pipelineId": "pipeline_1", + "scanTool": "owasp", + "targetId": "abcdef1234567890ghijkl", + "targetName": "The Target", + "targetType": "repository" + } + ] + } + }, + "example": { + "latestBaselineScans": [ + { + "pipelineId": "pipeline_1", + "scanTool": "owasp", + "targetId": "abcdef1234567890ghijkl", + "targetName": "The Target", + "targetType": "repository" + }, + { + "pipelineId": "pipeline_1", + "scanTool": "owasp", + "targetId": "abcdef1234567890ghijkl", + "targetName": "The Target", + "targetType": "repository" + } + ] + }, + "required": [ + "latestBaselineScans" + ] + }, + "AllIssuesListResult": { + "type": "object", + "properties": { + "issues": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AllIssueSummary" + }, + "description": "Issues related to the latest scans of a baseline in a specific project", + "example": [ + { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Architecto sit et blanditiis ut et dignissimos.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + }, + { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Architecto sit et blanditiis ut et dignissimos.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + }, + { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Architecto sit et blanditiis ut et dignissimos.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + }, + { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Architecto sit et blanditiis ut et dignissimos.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + } + ] + }, + "pagination": { + "$ref": "#/components/schemas/StoPagination" + } + }, + "example": { + "issues": [ + { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Architecto sit et blanditiis ut et dignissimos.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + }, + { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Architecto sit et blanditiis ut et dignissimos.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + }, + { + "exemptionExpiration": 1651578240, + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Pending", + "id": "abcdef1234567890ghijkl", + "issueType": "Architecto sit et blanditiis ut et dignissimos.", + "lastDetected": 1634836529, + "numOccurrences": 12, + "numTargetsImpacted": 2, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "severityCode": "High", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash" + } + ], + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + } + }, + "required": [ + "issues", + "pagination" + ] + }, + "AllIssuesOccurrenceDetailsResult": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Issue description", + "example": "Quod hic voluptas itaque." + }, + "exemptionId": { + "type": "string", + "description": "ID of Security Test Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "issueType": { + "type": "string", + "description": "Issue Type", + "example": "Corrupti quas." + }, + "occurrences": { + "type": "array", + "items": { + "type": "object", + "example": { + "Necessitatibus laboriosam beatae sint suscipit.": "Harum maxime qui et.", + "Nobis numquam provident delectus quo eveniet.": "Et repudiandae reprehenderit sint.", + "Occaecati provident voluptatum recusandae.": "Laborum illum." + }, + "additionalProperties": true + }, + "description": "List of occurrences", + "example": [ + { + "Laudantium saepe quasi exercitationem.": "Velit molestiae odit occaecati minima.", + "Voluptates ut quia iusto dolore voluptatem.": "Officia fuga esse." + }, + { + "Dignissimos aut.": "Dignissimos cum labore et.", + "Voluptate est eligendi et at sint id.": "Quasi ipsam et delectus molestiae." + }, + { + "Autem accusamus amet eos ea laborum doloremque.": "Officiis perspiciatis eius molestias.", + "Perspiciatis consequatur consectetur dignissimos.": "Sunt rerum porro necessitatibus fugiat.", + "Similique possimus voluptate.": "Officiis molestiae officiis." + } + ] + }, + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "referenceIdentifiers": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RefIds" + }, + "description": "Reference Identifiers", + "example": [ + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + }, + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + } + ] + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "targetName": { + "type": "string", + "description": "The name of the target of the pipeline step's scan", + "example": "The Target" + }, + "targetType": { + "type": "string", + "description": "Target Type", + "example": "Molestiae architecto vero sequi et." + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash", + "maxLength": 128 + }, + "variantName": { + "type": "string", + "description": "Variant name", + "example": "Est quidem ut nobis quia et eveniet." + } + }, + "example": { + "description": "Distinctio voluptate quis incidunt enim vero quis.", + "exemptionId": "abcdef1234567890ghijkl", + "issueType": "Odit est nesciunt expedita molestiae.", + "occurrences": [ + { + "Illum qui.": "Rerum autem rem fugit necessitatibus.", + "Omnis quas.": "Incidunt qui accusamus assumenda autem eos.", + "Perspiciatis molestiae.": "Perferendis nobis ratione at." + }, + { + "Qui et in dolorem.": "Consectetur fugiat ipsam ratione labore dolor quisquam." + }, + { + "Aperiam ex quibusdam quia adipisci perferendis.": "Voluptate at corrupti.", + "Dolor architecto qui odio natus distinctio.": "Ut omnis minus." + } + ], + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "referenceIdentifiers": [ + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + }, + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + }, + { + "id": "Autem nesciunt voluptas et labore illum.", + "type": "Cumque ut." + } + ], + "severityCode": "High", + "targetName": "The Target", + "targetType": "Iusto ducimus.", + "title": "Semgrep Finding: generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash", + "variantName": "Dolorem laborum vel non ullam." + }, + "required": [ + "title", + "targetName", + "variantName", + "targetType", + "severityCode", + "description", + "occurrences" + ] + }, + "ApproveExemptionRequestBody": { + "type": "object", + "properties": { + "approverId": { + "type": "string", + "description": "User ID the user who approved or rejected this exemptions", + "example": "user111111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + } + }, + "example": { + "approverId": "user111111111111111111" + }, + "required": [ + "approverId", + "type", + "reason", + "requesterId", + "pendingChanges", + "issueId", + "status", + "created", + "lastModified" + ] + }, + "AugmentRemediationMetadata": { + "type": "object", + "properties": { + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AugmentRemediationWarning" + }, + "example": [ + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + } + ] + } + }, + "example": { + "warnings": [ + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + } + ] + }, + "required": [ + "warnings" + ] + }, + "AugmentRemediationResult": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/AugmentRemediationMetadata" + }, + "remediationCode": { + "type": "string", + "example": "Aut nulla possimus ipsa et porro." + }, + "remediationContext": { + "type": "string", + "example": "Aut eum nostrum possimus." + }, + "repoContent": { + "type": "string", + "example": "Dicta rerum." + } + }, + "example": { + "metadata": { + "warnings": [ + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + }, + { + "message": "Fugiat quia architecto et earum.", + "source": "Est consequatur et." + } + ] + }, + "remediationCode": "Doloremque reprehenderit consectetur provident ut quam.", + "remediationContext": "Unde voluptatem rem et beatae.", + "repoContent": "Fuga neque ut laudantium qui." + }, + "required": [ + "remediationContext", + "metadata" + ] + }, + "AugmentRemediationWarning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "example": "Nihil non omnis excepturi et quia repellat." + }, + "source": { + "type": "string", + "example": "Pariatur rerum." + } + }, + "example": { + "message": "Recusandae esse.", + "source": "Porro rerum dolore et doloribus quis." + }, + "required": [ + "source", + "message" + ] + }, + "BaselineExecutions": { + "type": "object", + "properties": { + "executionIds": { + "type": "array", + "items": { + "type": "string", + "example": "Accusantium aspernatur eaque voluptatem." + }, + "description": "Harness Execution IDs of the most recent baseline scans", + "example": [ + "Minima quia culpa vero nihil aut exercitationem.", + "Error maiores voluptate et.", + "Hic quis sunt eum dicta dicta esse.", + "Quibusdam excepturi minima fugit reiciendis et recusandae." + ] + } + }, + "example": { + "executionIds": [ + "Repellat iure sint nulla odit enim.", + "Itaque explicabo amet expedita." + ] + }, + "required": [ + "executionIds" + ] + }, + "CreateExemptionRequestBody": { + "type": "object", + "properties": { + "exemptFutureOccurrences": { + "type": "boolean", + "description": "States if the user wants to exempt future occurrences of the issue", + "default": true, + "example": false + }, + "expiration": { + "type": "integer", + "description": "Unix timestamp at which this Exemption will expire", + "example": 1651578240, + "format": "int64" + }, + "issueId": { + "type": "string", + "description": "Issue ID associated with the Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "link": { + "type": "string", + "description": "Link to a related ticket", + "example": "https://example.com/ABC-1234", + "maxLength": 1024 + }, + "occurrences": { + "type": "array", + "items": { + "type": "integer", + "example": 5861467314394039000, + "format": "int64" + }, + "description": "Array of occurrence Ids", + "example": [ + 42, + 666 + ] + }, + "pendingChanges": { + "$ref": "#/components/schemas/PendingChanges" + }, + "pipelineId": { + "type": "string", + "description": "ID of the Harness Pipeline to which the exemption applies. You must also specify \"projectId\" and \"orgId\". Cannot be specified alongside \"targetId\".", + "example": "your_pipeline", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "reason": { + "type": "string", + "description": "Text describing why this Exemption is necessary", + "example": "Waiting on upstream bug fix", + "maxLength": 1024 + }, + "requesterId": { + "type": "string", + "description": "User ID of user who requested this exemptions", + "example": "user111111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "scanId": { + "type": "string", + "description": "ID of the Harness Scan to determine all the occurrences for the scan-issue. You must also specify \"projectId\", \"orgId\" and \"targetId\". Cannot be specified alongside \"pipelineId\".", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "search": { + "type": "string", + "description": "Search parameter to find filtered occurrences of the issue", + "example": "CWE-123,5", + "maxLength": 256 + }, + "targetId": { + "type": "string", + "description": "ID of the Target to which the exemption applies. Cannot be specified alongside \"projectId\" or \"pipelineId\".", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "type": { + "type": "string", + "description": "Type of Exemption (Compensating Controls / Acceptable Use / Acceptable Risk / False Positive / Fix Unavailable / Other)", + "example": "Other", + "enum": [ + "Compensating Controls", + "Acceptable Use", + "Acceptable Risk", + "False Positive", + "Fix Unavailable", + "Other" + ] + } + }, + "example": { + "exemptFutureOccurrences": false, + "expiration": 1651578240, + "issueId": "abcdef1234567890ghijkl", + "link": "https://example.com/ABC-1234", + "occurrences": [ + 42, + 666 + ], + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "search": "CWE-123,5", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + "required": [ + "type", + "reason", + "requesterId", + "pendingChanges", + "issueId", + "status", + "id", + "created", + "lastModified" + ] + }, + "CreateIssueRequestBody": { + "type": "object", + "properties": { + "details": { + "type": "object", + "description": "Issue details common to all occurrences", + "example": { + "package": "json-schema", + "version": "v0.2.3" + }, + "additionalProperties": true + }, + "exemptionId": { + "type": "string", + "description": "ID of the associated Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "key": { + "type": "string", + "description": "Compression/deduplication key", + "example": "json-schema@0.2.3", + "maxLength": 512 + }, + "keyPattern": { + "type": "array", + "items": { + "type": "string", + "example": "Et sed labore voluptatibus." + }, + "description": "The pattern of fields used to generate this Security Issue's Key", + "example": [ + "library_name", + "library_version" + ] + }, + "numOccurrences": { + "type": "integer", + "description": "Indicates the number of Occurrences on the Issue", + "example": 10, + "format": "int32" + }, + "occurrences": { + "type": "array", + "items": { + "type": "object", + "example": { + "Harum a minima sunt qui.": "Unde quisquam officia tempore voluptatem.", + "Sunt quos.": "Voluptatem ad recusandae unde tempore.", + "Voluptatem distinctio et qui assumenda.": "Sit soluta sit." + }, + "additionalProperties": true + }, + "description": "Array of details unique to each occurrence", + "example": [ + { + "line": "42" + }, + { + "line": "666" + } + ] + }, + "productId": { + "type": "string", + "description": "The scan tool that identified this Security Issue", + "example": "product1234567890abcde", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "scanId": { + "type": "string", + "description": "The Security Scan execution that detected this Security Issue", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "severity": { + "type": "number", + "description": "Numeric severity, from 0 (lowest) to 10 (highest)", + "example": 8.5, + "format": "float" + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "subproduct": { + "type": "string", + "description": "The subproduct that identified this Security Issue", + "example": "product" + }, + "targetVariantName": { + "type": "string", + "description": "Name of the associated Target and Variant", + "example": "nodegoat:master", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "The type of vulnerability or quality issue for this Issue", + "example": "SAST", + "enum": [ + "SAST", + "DAST", + "SCA", + "IAC", + "SECRET", + "MISCONFIG", + "BUG_SMELLS", + "CODE_SMELLS", + "CODE_COVERAGE", + "EXTERNAL_POLICY" + ] + } + }, + "example": { + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionId": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "keyPattern": [ + "library_name", + "library_version" + ], + "numOccurrences": 10, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "scanId": "abcdef1234567890ghijkl", + "severity": 8.5, + "severityCode": "High", + "subproduct": "product", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "required": [ + "title", + "key", + "severity", + "severityCode", + "productId", + "details", + "scanId", + "keyPattern", + "id", + "created" + ] + }, + "CreatePullRequestRequestBody": { + "type": "object", + "properties": { + "branch": { + "type": "string", + "example": "develop" + }, + "description": { + "type": "string", + "example": "A description of the Pull Request." + }, + "id": { + "type": "string", + "description": "The ID of the Security Issue to create a Pull Request for", + "example": "1234567890abcdefghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "occurrenceId": { + "type": "integer", + "example": 12345, + "format": "int64", + "minimum": 1 + }, + "pipelineUrl": { + "type": "string", + "example": "https://app.harness.io/path/to/pipeline" + }, + "remediationCode": { + "type": "string", + "example": "func example() int {\n return 0\n}" + }, + "remediationCodeEnd": { + "type": "integer", + "example": 16, + "format": "int64" + }, + "remediationCodePath": { + "type": "string", + "example": "path/to/code" + }, + "remediationCodeStart": { + "type": "integer", + "example": 14, + "format": "int64" + }, + "remediationContext": { + "type": "string", + "example": "Context to the function." + }, + "remediationIndent": { + "type": "integer", + "example": 9, + "format": "int64" + }, + "vulnerableCode": { + "type": "string", + "example": "func example() int {\n return 0\n}" + } + }, + "example": { + "branch": "develop", + "description": "A description of the Pull Request.", + "id": "1234567890abcdefghijkl", + "occurrenceId": 12345, + "pipelineUrl": "https://app.harness.io/path/to/pipeline", + "remediationCode": "func example() int {\n return 0\n}", + "remediationCodeEnd": 16, + "remediationCodePath": "path/to/code", + "remediationCodeStart": 14, + "remediationContext": "Context to the function.", + "remediationIndent": 9, + "vulnerableCode": "func example() int {\n return 0\n}" + }, + "required": [ + "pipelineUrl", + "id", + "occurrenceId", + "vulnerableCode", + "remediationCode", + "remediationCodePath", + "remediationCodeStart", + "remediationCodeEnd", + "remediationContext", + "description", + "branch" + ] + }, + "CreateScanRequestBody": { + "type": "object", + "properties": { + "codeCoverage": { + "type": "number", + "description": "The Code Coverage value for the Scan", + "example": 65.5, + "format": "float" + }, + "executionId": { + "type": "string", + "description": "Pipeline Execution ID associated with the Scan", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "gitMetadata": { + "$ref": "#/components/schemas/GitMetadata" + }, + "orgId": { + "type": "string", + "description": "Harness Organization ID", + "example": "your_harness_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "pipelineId": { + "type": "string", + "description": "Harness Organization ID", + "example": "your_harness_pipeline", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "productId": { + "type": "string", + "description": "The Scan Product used for the Scan", + "example": "product111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "projectId": { + "type": "string", + "description": "Harness Project ID", + "example": "your_harness_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "refinementVersion": { + "type": "string", + "description": "The Issue refinement version used for this Scan", + "example": "1.0.5" + }, + "stageId": { + "type": "string", + "description": "Pipeline Stage ID associated with the Scan", + "example": "stage_id", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "Current status of the Scan", + "example": "Succeeded", + "enum": [ + "Pending", + "Running", + "Succeeded", + "Failed" + ] + }, + "stepId": { + "type": "string", + "description": "Pipeline Step ID associated with the Scan", + "example": "step_id", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "subproduct": { + "type": "string", + "description": "The Scan Subproduct used for the Scan", + "example": "owasp", + "format": "binary" + }, + "targetVariantId": { + "type": "string", + "description": "The Target Variant associated with the Scan", + "example": "variant111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + } + }, + "example": { + "codeCoverage": 65.5, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Praesentium dolores tenetur voluptatem quae.", + "detectedVariant": "At accusantium.", + "droneCorrelated": false, + "provider": "Modi occaecati corporis fugit atque distinctio.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Dolore est.", + "Sit optio.", + "Beatae harum aliquam." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + "required": [ + "targetVariantId", + "orgId", + "projectId", + "pipelineId", + "executionId", + "stageId", + "stepId", + "productId", + "status", + "refinementVersion", + "id", + "created", + "lastModified" + ] + }, + "CreateTargetRequestBody": { + "type": "object", + "properties": { + "baselineRegEx": { + "type": "string", + "description": "RegEx to match for dynamically selecting the Baseline for this Scan Target. Must be compatible with the RE2 standard.", + "example": "release_.*", + "maxLength": 128 + }, + "baselineVariantId": { + "type": "string", + "description": "ID of baseline Target Variant for Issue comparison", + "example": "abcdef1234567890ghijkl", + "pattern": "^([a-zA-Z0-9_-]{22}|)$" + }, + "directory": { + "type": "string", + "description": "Directory within the Test Target to be scanned", + "example": "app/src", + "maxLength": 1024 + }, + "name": { + "type": "string", + "description": "Name of the Test Target", + "example": "NodeGoat", + "pattern": "^[a-zA-Z0-9_.:/|()-]+$", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Test Target's type", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "url": { + "type": "string", + "description": "URL used to access the Test Target", + "example": "https://github.com/example/repo", + "maxLength": 1024 + } + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "directory": "app/src", + "name": "NodeGoat", + "type": "repository", + "url": "https://github.com/example/repo" + }, + "required": [ + "id", + "created", + "lastModified", + "name", + "type" + ] + }, + "CreateTargetVariantRequestBody": { + "type": "object", + "properties": { + "hash": { + "type": "string", + "description": "Git Commit or Container Image hash", + "example": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "maxLength": 64 + }, + "parameters": { + "type": "object", + "description": "Parameters for this Variant, as a JSON-encoded string", + "example": { + "branch": "main" + }, + "additionalProperties": { + "type": "string", + "example": "Voluptas dolorem qui maiores eum." + } + } + }, + "example": { + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "parameters": { + "branch": "main" + } + }, + "required": [ + "parameters", + "id", + "created", + "lastModified" + ] + }, + "Exemption": { + "type": "object", + "properties": { + "approverId": { + "type": "string", + "description": "User ID the user who approved or rejected this exemptions", + "example": "user111111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "canApproveFor": { + "type": "array", + "items": { + "type": "string", + "example": "PROJECT", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE", + "TARGET" + ] + }, + "description": "Consists of RBAC scopes for an user associated with this Exemption", + "example": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ] + }, + "canCancel": { + "type": "boolean", + "description": "States if the user can cancel the exemption", + "default": false, + "example": true + }, + "canCreate": { + "type": "boolean", + "description": "States whether the user can create or reopen the exemption", + "default": false, + "example": true + }, + "canReApprove": { + "type": "boolean", + "description": "States if the user can re-approve the exemption for the exemption's scope", + "default": false, + "example": true + }, + "canReject": { + "type": "boolean", + "description": "States whether the user can reject the exemption", + "default": false, + "example": true + }, + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "exemptionStatusAtScan": { + "type": "string", + "description": "Exemption's status at the Security Scan created time", + "example": "Rejected", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "expiration": { + "type": "integer", + "description": "Unix timestamp at which this Exemption will expire", + "example": 1651578240, + "format": "int64" + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "isDeleted": { + "type": "boolean", + "description": "States if the exemption is deleted", + "default": false, + "example": true + }, + "issueId": { + "type": "string", + "description": "Issue ID associated with the Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "lastModified": { + "type": "integer", + "description": "Unix timestamp at which the resource was most recently modified", + "example": 1651578240, + "format": "int64" + }, + "link": { + "type": "string", + "description": "Link to a related ticket", + "example": "https://example.com/ABC-1234", + "maxLength": 1024 + }, + "numOccurrences": { + "type": "integer", + "description": "States how may occurrences are associated with the exemption, if not an issue level exemption", + "default": 0, + "example": 10, + "format": "int64" + }, + "occurrences": { + "type": "array", + "items": { + "type": "integer", + "example": 5237440210665971000, + "format": "int64" + }, + "description": "Array of occurrence Ids", + "example": [ + 42, + 666 + ] + }, + "orgId": { + "type": "string", + "description": "ID of the Harness Organization to which the exemption applies. Cannot be specified alongside \"targetId\".", + "example": "your_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "pendingChanges": { + "$ref": "#/components/schemas/PendingChanges" + }, + "pipelineId": { + "type": "string", + "description": "ID of the Harness Pipeline to which the exemption applies. You must also specify \"projectId\" and \"orgId\". Cannot be specified alongside \"targetId\".", + "example": "your_pipeline", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "projectId": { + "type": "string", + "description": "ID of the Harness Project to which the exemption applies. You must also specify \"orgId\". Cannot be specified alongside \"targetId\".", + "example": "your_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "reason": { + "type": "string", + "description": "Text describing why this Exemption is necessary", + "example": "Waiting on upstream bug fix", + "maxLength": 1024 + }, + "requesterId": { + "type": "string", + "description": "User ID of user who requested this exemptions", + "example": "user111111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "scanId": { + "type": "string", + "description": "ID of the Harness Scan to determine all the occurrences for the scan-issue. You must also specify \"projectId\", \"orgId\" and \"targetId\". Cannot be specified alongside \"pipelineId\".", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "scope": { + "type": "string", + "description": "States the scope for the exemption", + "example": "PROJECT", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE", + "TARGET" + ] + }, + "search": { + "type": "string", + "description": "Search parameter to find filtered occurrences of the issue", + "example": "CWE-123,5", + "maxLength": 256 + }, + "status": { + "type": "string", + "description": "Approval status of Exemption", + "default": "Pending", + "example": "Rejected", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired", + "Canceled" + ] + }, + "targetId": { + "type": "string", + "description": "ID of the Target to which the exemption applies. Cannot be specified alongside \"projectId\" or \"pipelineId\".", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "type": { + "type": "string", + "description": "Type of Exemption (Compensating Controls / Acceptable Use / Acceptable Risk / False Positive / Fix Unavailable / Other)", + "example": "Other", + "enum": [ + "Compensating Controls", + "Acceptable Use", + "Acceptable Risk", + "False Positive", + "Fix Unavailable", + "Other" + ] + } + }, + "description": "Information about an Exemption", + "example": { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Rejected", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Canceled", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + "required": [ + "type", + "reason", + "requesterId", + "pendingChanges", + "issueId", + "status", + "id", + "created", + "lastModified" + ] + }, + "ExemptionImpactedTargetsResult": { + "type": "object", + "properties": { + "impactedTargets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FrontendExemptionTargets" + }, + "description": "Impacted target details", + "example": [ + { + "executionId": "abcdef1234567890ghijkl", + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "lastScanned": 1634836529, + "name": "NodeGoat", + "numExemptedOccurrences": 150, + "numOccurrences": 150, + "orgId": "example_org", + "parameters": { + "branch": "main" + }, + "pipelineId": "pipeline_1", + "projectId": "example_project", + "scanId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl", + "type": "repository" + }, + { + "executionId": "abcdef1234567890ghijkl", + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "lastScanned": 1634836529, + "name": "NodeGoat", + "numExemptedOccurrences": 150, + "numOccurrences": 150, + "orgId": "example_org", + "parameters": { + "branch": "main" + }, + "pipelineId": "pipeline_1", + "projectId": "example_project", + "scanId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl", + "type": "repository" + } + ] + }, + "pagination": { + "$ref": "#/components/schemas/StoPagination" + } + }, + "description": "List of targets for an exemption", + "example": { + "impactedTargets": [ + { + "executionId": "abcdef1234567890ghijkl", + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "lastScanned": 1634836529, + "name": "NodeGoat", + "numExemptedOccurrences": 150, + "numOccurrences": 150, + "orgId": "example_org", + "parameters": { + "branch": "main" + }, + "pipelineId": "pipeline_1", + "projectId": "example_project", + "scanId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl", + "type": "repository" + }, + { + "executionId": "abcdef1234567890ghijkl", + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "lastScanned": 1634836529, + "name": "NodeGoat", + "numExemptedOccurrences": 150, + "numOccurrences": 150, + "orgId": "example_org", + "parameters": { + "branch": "main" + }, + "pipelineId": "pipeline_1", + "projectId": "example_project", + "scanId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl", + "type": "repository" + }, + { + "executionId": "abcdef1234567890ghijkl", + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "lastScanned": 1634836529, + "name": "NodeGoat", + "numExemptedOccurrences": 150, + "numOccurrences": 150, + "orgId": "example_org", + "parameters": { + "branch": "main" + }, + "pipelineId": "pipeline_1", + "projectId": "example_project", + "scanId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl", + "type": "repository" + }, + { + "executionId": "abcdef1234567890ghijkl", + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "lastScanned": 1634836529, + "name": "NodeGoat", + "numExemptedOccurrences": 150, + "numOccurrences": 150, + "orgId": "example_org", + "parameters": { + "branch": "main" + }, + "pipelineId": "pipeline_1", + "projectId": "example_project", + "scanId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl", + "type": "repository" + } + ], + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + } + }, + "required": [ + "impactedTargets", + "pagination" + ] + }, + "ExemptionsCreateExemptionResponseBody": { + "$ref": "#/components/schemas/IDResult" + }, + "ExemptionsListExemptionsResponseBody": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Exemption" + }, + "example": [ + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + ] + } + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "exemptionStatusAtScan": "Approved", + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueId": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "link": "https://example.com/ABC-1234", + "numOccurrences": 10, + "occurrences": [ + 42, + 666 + ], + "orgId": "your_project", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "projectId": "your_project", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "scanId": "abcdef1234567890ghijkl", + "scope": "PROJECT", + "search": "CWE-123,5", + "status": "Expired", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + } + ] + }, + "required": [ + "results", + "pagination" + ] + }, + "FrontendAllIssuesDetailsResponseBody": { + "$ref": "#/components/schemas/AllIssuesDetailsResult" + }, + "FrontendAllIssuesFiltersResponseBody": { + "$ref": "#/components/schemas/AllIssuesFiltersResult" + }, + "FrontendAllIssuesListResponseBody": { + "$ref": "#/components/schemas/AllIssuesListResult" + }, + "FrontendAllIssuesOccurrenceDetailsResponseBody": { + "$ref": "#/components/schemas/AllIssuesOccurrenceDetailsResult" + }, + "FrontendExemption": { + "type": "object", + "properties": { + "approverId": { + "type": "string", + "description": "User ID of the user who approved this Exemption", + "example": "user111111111111111111" + }, + "canApproveFor": { + "type": "array", + "items": { + "type": "string", + "example": "ACCOUNT", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE", + "TARGET" + ] + }, + "description": "Scopes that the user has permission to approve for this Exemption", + "example": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ] + }, + "canCancel": { + "type": "boolean", + "description": "States if the user can cancel the exemption", + "default": false, + "example": true + }, + "canCreate": { + "type": "boolean", + "description": "States if the user can create or reopen the exemption", + "default": false, + "example": true + }, + "canReApprove": { + "type": "boolean", + "description": "States if the user can re-approve the exemption for the exemption's scope", + "default": false, + "example": true + }, + "canReject": { + "type": "boolean", + "description": "States if the user can reject the exemption", + "default": false, + "example": true + }, + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "expiration": { + "type": "integer", + "description": "Unix timestamp at which this Exemption will expire", + "example": 1651578240, + "format": "int64" + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "isDeleted": { + "type": "boolean", + "description": "States if the exemption is deleted", + "default": false, + "example": true + }, + "issueSummary": { + "$ref": "#/components/schemas/IssueSummary" + }, + "lastModified": { + "type": "integer", + "description": "Unix timestamp at which the resource was most recently modified", + "example": 1651578240, + "format": "int64" + }, + "link": { + "type": "string", + "description": "Link related to this Exemption", + "example": "Upstream bug" + }, + "numOccurrences": { + "type": "integer", + "description": "States how may occurrences are associated with the exemption, if not an issue level exemption", + "default": 0, + "example": 10, + "format": "int64" + }, + "orgId": { + "type": "string", + "description": "ID of the Harness Org to which this Exemption applies", + "example": "STO" + }, + "pendingChanges": { + "$ref": "#/components/schemas/PendingChanges" + }, + "pipelineId": { + "type": "string", + "description": "ID of the Harness pipeline to which this Exemption applies", + "example": "pipeline_1" + }, + "projectId": { + "type": "string", + "description": "ID of the Harness project to which this Exemption applies", + "example": "STO" + }, + "reason": { + "type": "string", + "description": "Reason for Exemption", + "example": "Upstream bug" + }, + "requesterId": { + "type": "string", + "description": "User ID of the user who requested this Exemption", + "example": "user111111111111111111" + }, + "scope": { + "type": "string", + "description": "The scope of the exemption", + "example": "PROJECT", + "enum": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE", + "TARGET" + ] + }, + "status": { + "type": "string", + "description": "Status of this Exemption", + "example": "Approved" + }, + "targetId": { + "type": "string", + "description": "ID of Target to which this Exemption applies", + "example": "target2222222222222222" + }, + "totalOccurrences": { + "type": "integer", + "description": "States total occurrences associated with the issue exemption", + "default": 0, + "example": 10, + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type of Exemption", + "example": "Other" + } + }, + "description": "Exemption summary for frontend use", + "example": { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + }, + "required": [ + "id", + "issueSummary", + "status", + "reason", + "created", + "type", + "lastModified", + "requesterId", + "pendingChanges" + ] + }, + "FrontendExemptionCounts": { + "type": "object", + "properties": { + "Approved": { + "type": "integer", + "description": "The count of approved Exemptions", + "default": 0, + "example": 150, + "format": "int32" + }, + "Expired": { + "type": "integer", + "description": "The count of expired Exemptions", + "default": 0, + "example": 150, + "format": "int32" + }, + "Pending": { + "type": "integer", + "description": "The count of pending Exemptions", + "default": 0, + "example": 150, + "format": "int32" + }, + "Rejected": { + "type": "integer", + "description": "The count of rejected Exemptions", + "default": 0, + "example": 150, + "format": "int32" + } + }, + "example": { + "Approved": 150, + "Expired": 150, + "Pending": 150, + "Rejected": 150 + } + }, + "FrontendExemptionTargets": { + "type": "object", + "properties": { + "executionId": { + "type": "string", + "description": "Harness Execution ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "hash": { + "type": "string", + "description": "Git Commit or Container Image hash", + "example": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "maxLength": 64 + }, + "lastScanned": { + "type": "number", + "description": "Timestamp of the last detection of this issue", + "example": 1634836529, + "format": "float" + }, + "name": { + "type": "string", + "description": "Name of the Test Target", + "example": "NodeGoat", + "pattern": "^[a-zA-Z0-9_.:/|()-]+$", + "maxLength": 128 + }, + "numExemptedOccurrences": { + "type": "integer", + "description": "Total number of occurrences exempted for an impacted target", + "default": 0, + "example": 150, + "format": "int32" + }, + "numOccurrences": { + "type": "integer", + "description": "Total number of occurrences for an impacted target", + "default": 0, + "example": 150, + "format": "int32" + }, + "orgId": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "parameters": { + "type": "object", + "description": "Parameters for this Variant, as a JSON-encoded string", + "example": { + "branch": "main" + }, + "additionalProperties": { + "type": "string", + "example": "Sapiente velit exercitationem accusamus numquam." + } + }, + "pipelineId": { + "type": "string", + "description": "ID of the Harness pipeline of the scan", + "example": "pipeline_1" + }, + "projectId": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "scanId": { + "type": "string", + "description": "The Security Scan execution that detected this Security Issue", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetId": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "type": { + "type": "string", + "description": "Test Target's type", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + } + }, + "description": "Impacted targets from an exemption for frontend issue details", + "example": { + "executionId": "abcdef1234567890ghijkl", + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "lastScanned": 1634836529, + "name": "NodeGoat", + "numExemptedOccurrences": 150, + "numOccurrences": 150, + "orgId": "example_org", + "parameters": { + "branch": "main" + }, + "pipelineId": "pipeline_1", + "projectId": "example_project", + "scanId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl", + "type": "repository" + }, + "required": [ + "targetId", + "parameters" + ] + }, + "FrontendExpiringExemptionsResponseBody": { + "$ref": "#/components/schemas/IssueSummaries" + }, + "FrontendImpactedTargetsForExemptionResponseBody": { + "$ref": "#/components/schemas/ExemptionImpactedTargetsResult" + }, + "FrontendIssueCounts": { + "type": "object", + "properties": { + "active": { + "type": "integer", + "description": "The total of active Issues", + "example": 150, + "format": "int32" + }, + "critical": { + "type": "integer", + "description": "The number of Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "high": { + "type": "integer", + "description": "The number of High-severity Issues", + "example": 3, + "format": "int32" + }, + "ignored": { + "type": "integer", + "description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts", + "example": 1, + "format": "int32" + }, + "info": { + "type": "integer", + "description": "The number of Informational Issues", + "example": 11, + "format": "int32" + }, + "low": { + "type": "integer", + "description": "The number of Low-severity Issues", + "example": 39, + "format": "int32" + }, + "medium": { + "type": "integer", + "description": "The number of Medium-severity Issues", + "example": 17, + "format": "int32" + } + }, + "example": { + "active": 150, + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "required": [ + "active", + "critical", + "high", + "medium", + "low", + "info" + ] + }, + "FrontendIssueForExemptionResponseBody": { + "$ref": "#/components/schemas/IssueForExemptionResult" + }, + "FrontendIssueSeverityChangeResponseBody": { + "$ref": "#/components/schemas/IssueSeverityChangeResult" + }, + "FrontendOverviewBaselinesResponseBody": { + "$ref": "#/components/schemas/BaselineExecutions" + }, + "FrontendOverviewHistoricalCountsResponseBody": { + "$ref": "#/components/schemas/HistoricalCounts" + }, + "FrontendPipelineSecurityIssuesResponseBody": { + "$ref": "#/components/schemas/PipelineSecurityIssuesResult" + }, + "FrontendPipelineSecurityStepsResponseBody": { + "$ref": "#/components/schemas/PipelineSecurityStepsResult" + }, + "FrontendSecurityReviewResponseBody": { + "$ref": "#/components/schemas/SecurityReviewResult" + }, + "FrontendTestTargetsResponseBody": { + "$ref": "#/components/schemas/TestTargetResult" + }, + "FullIssueCounts": { + "type": "object", + "properties": { + "codeCoverage": { + "type": "number", + "description": "The Code Coverage value for the Scan", + "example": 65.5, + "format": "float" + }, + "critical": { + "type": "integer", + "description": "The number of Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "externalPolicyFailures": { + "type": "integer", + "description": "The number of EXTERNAL_POLICY Issues", + "example": 0, + "format": "int32" + }, + "high": { + "type": "integer", + "description": "The number of High-severity Issues", + "example": 3, + "format": "int32" + }, + "ignored": { + "type": "integer", + "description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts", + "example": 1, + "format": "int32" + }, + "ignoredCritical": { + "type": "integer", + "description": "The number of ignored Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "ignoredHigh": { + "type": "integer", + "description": "The number of ignored High-severity Issues", + "example": 3, + "format": "int32" + }, + "ignoredInfo": { + "type": "integer", + "description": "The number of ignored Informational Issues", + "example": 11, + "format": "int32" + }, + "ignoredLow": { + "type": "integer", + "description": "The number of ignored Low-severity Issues", + "example": 39, + "format": "int32" + }, + "ignoredMedium": { + "type": "integer", + "description": "The number of ignored Medium-severity Issues", + "example": 17, + "format": "int32" + }, + "ignoredUnassigned": { + "type": "integer", + "description": "The number of Issues with no associated severity code", + "example": 0, + "format": "int32" + }, + "info": { + "type": "integer", + "description": "The number of Informational Issues", + "example": 11, + "format": "int32" + }, + "low": { + "type": "integer", + "description": "The number of Low-severity Issues", + "example": 39, + "format": "int32" + }, + "medium": { + "type": "integer", + "description": "The number of Medium-severity Issues", + "example": 17, + "format": "int32" + }, + "newCritical": { + "type": "integer", + "description": "The number of new Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "newHigh": { + "type": "integer", + "description": "The number of new High-severity Issues", + "example": 3, + "format": "int32" + }, + "newIgnoredCritical": { + "type": "integer", + "description": "The number of ignored Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "newIgnoredHigh": { + "type": "integer", + "description": "The number of ignored High-severity Issues", + "example": 3, + "format": "int32" + }, + "newIgnoredInfo": { + "type": "integer", + "description": "The number of ignored Informational Issues", + "example": 11, + "format": "int32" + }, + "newIgnoredLow": { + "type": "integer", + "description": "The number of ignored Low-severity Issues", + "example": 39, + "format": "int32" + }, + "newIgnoredMedium": { + "type": "integer", + "description": "The number of ignored Medium-severity Issues", + "example": 17, + "format": "int32" + }, + "newIgnoredOccurrencesCritical": { + "type": "integer", + "description": "The number of ignored Critical-severity Occurrences", + "example": 1, + "format": "int32" + }, + "newIgnoredOccurrencesHigh": { + "type": "integer", + "description": "The number of ignored High-severity Occurrences", + "example": 3, + "format": "int32" + }, + "newIgnoredOccurrencesInfo": { + "type": "integer", + "description": "The number of ignored Informational Occurrences", + "example": 11, + "format": "int32" + }, + "newIgnoredOccurrencesLow": { + "type": "integer", + "description": "The number of ignored Low-severity Occurrences", + "example": 39, + "format": "int32" + }, + "newIgnoredOccurrencesMedium": { + "type": "integer", + "description": "The number of ignored Medium-severity Occurrences", + "example": 17, + "format": "int32" + }, + "newIgnoredOccurrencesUnassigned": { + "type": "integer", + "description": "The number of ignored Occurrences with no associated severity code", + "example": 0, + "format": "int32" + }, + "newIgnoredUnassigned": { + "type": "integer", + "description": "The number of Issues with no associated severity code", + "example": 0, + "format": "int32" + }, + "newInfo": { + "type": "integer", + "description": "The number of new Informational Issues", + "example": 11, + "format": "int32" + }, + "newLow": { + "type": "integer", + "description": "The number of new Low-severity Issues", + "example": 39, + "format": "int32" + }, + "newMedium": { + "type": "integer", + "description": "The number of new Medium-severity Issues", + "example": 17, + "format": "int32" + }, + "newOccurrencesCritical": { + "type": "integer", + "description": "The number of new Critical-severity Occurrences", + "example": 1, + "format": "int32" + }, + "newOccurrencesHigh": { + "type": "integer", + "description": "The number of new High-severity Occurrences", + "example": 3, + "format": "int32" + }, + "newOccurrencesInfo": { + "type": "integer", + "description": "The number of new Informational Occurrences", + "example": 11, + "format": "int32" + }, + "newOccurrencesLow": { + "type": "integer", + "description": "The number of new Low-severity Occurrences", + "example": 39, + "format": "int32" + }, + "newOccurrencesMedium": { + "type": "integer", + "description": "The number of new Medium-severity Occurrences", + "example": 17, + "format": "int32" + }, + "newOccurrencesUnassigned": { + "type": "integer", + "description": "The number of new Occurrences with no associated severity code", + "example": 0, + "format": "int32" + }, + "newTotal": { + "type": "integer", + "description": "The total number new Issues", + "example": 3, + "format": "int32" + }, + "newUnassigned": { + "type": "integer", + "description": "The number of new Issues with no associated severity code", + "example": 0, + "format": "int32" + }, + "total": { + "type": "integer", + "description": "The total number of Issues", + "example": 10, + "format": "int32" + }, + "unassigned": { + "type": "integer", + "description": "The number of Issues with no associated severity code", + "example": 0, + "format": "int32" + } + }, + "example": { + "codeCoverage": 65.5, + "critical": 1, + "externalPolicyFailures": 0, + "high": 3, + "ignored": 1, + "ignoredCritical": 1, + "ignoredHigh": 3, + "ignoredInfo": 11, + "ignoredLow": 39, + "ignoredMedium": 17, + "ignoredUnassigned": 0, + "info": 11, + "low": 39, + "medium": 17, + "newCritical": 1, + "newHigh": 3, + "newIgnoredCritical": 1, + "newIgnoredHigh": 3, + "newIgnoredInfo": 11, + "newIgnoredLow": 39, + "newIgnoredMedium": 17, + "newIgnoredOccurrencesCritical": 1, + "newIgnoredOccurrencesHigh": 3, + "newIgnoredOccurrencesInfo": 11, + "newIgnoredOccurrencesLow": 39, + "newIgnoredOccurrencesMedium": 17, + "newIgnoredOccurrencesUnassigned": 0, + "newIgnoredUnassigned": 0, + "newInfo": 11, + "newLow": 39, + "newMedium": 17, + "newOccurrencesCritical": 1, + "newOccurrencesHigh": 3, + "newOccurrencesInfo": 11, + "newOccurrencesLow": 39, + "newOccurrencesMedium": 17, + "newOccurrencesUnassigned": 0, + "newTotal": 3, + "newUnassigned": 0, + "total": 10, + "unassigned": 0 + }, + "required": [ + "newCritical", + "newHigh", + "newMedium", + "newLow", + "newInfo", + "unassigned", + "newUnassigned", + "externalPolicyFailures", + "ignored", + "ignoredCritical", + "ignoredHigh", + "ignoredMedium", + "ignoredLow", + "ignoredInfo", + "ignoredUnassigned", + "newIgnoredCritical", + "newIgnoredHigh", + "newIgnoredMedium", + "newIgnoredLow", + "newIgnoredInfo", + "newIgnoredUnassigned", + "newOccurrencesCritical", + "newOccurrencesHigh", + "newOccurrencesMedium", + "newOccurrencesLow", + "newOccurrencesInfo", + "newOccurrencesUnassigned", + "newIgnoredOccurrencesCritical", + "newIgnoredOccurrencesHigh", + "newIgnoredOccurrencesMedium", + "newIgnoredOccurrencesLow", + "newIgnoredOccurrencesInfo", + "newIgnoredOccurrencesUnassigned", + "total", + "newTotal", + "critical", + "high", + "medium", + "low", + "info" + ] + }, + "GetByReferenceIDResponseBody": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "A short description of the identified issue.", + "example": "Alias est." + }, + "extendedDescription": { + "type": "string", + "description": "A more detailed explanation of the issue and its potential impact.", + "example": "Repudiandae ut voluptatibus laborum distinctio molestiae voluptas." + }, + "remediationSteps": { + "type": "string", + "description": "Steps the developer can take to address or mitigate the issue.", + "example": "Voluptates nulla voluptatibus corporis." + }, + "severity": { + "type": "number", + "description": "Numeric severity, from 0 (lowest) to 10 (highest)", + "example": 8.5, + "format": "double" + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High" + } + }, + "example": { + "description": "Cumque voluptas aut quis eos harum.", + "extendedDescription": "Quidem exercitationem provident necessitatibus excepturi quo quidem.", + "remediationSteps": "Consectetur quis omnis.", + "severity": 8.5, + "severityCode": "High" + } + }, + "GitMetadata": { + "type": "object", + "properties": { + "detectedName": { + "type": "string", + "description": "Detected Name", + "example": "Fugiat sunt quia impedit quos temporibus." + }, + "detectedVariant": { + "type": "string", + "description": "Detected Variant", + "example": "Eveniet eius placeat possimus ullam." + }, + "droneCorrelated": { + "type": "boolean", + "description": "Drone Correlated", + "example": true + }, + "provider": { + "type": "string", + "description": "Git Provider", + "example": "Esse exercitationem reiciendis." + }, + "pullRequestNumber": { + "type": "integer", + "description": "Git Pull Request Number", + "example": 11, + "format": "int64" + }, + "repositoryHttp": { + "type": "string", + "description": "Git HTTP Repository", + "example": "https://github.com/harness/drone-cli.git" + }, + "repositoryPath": { + "type": "array", + "items": { + "type": "string", + "example": "Praesentium eum." + }, + "description": "Git Repository Path", + "example": [ + "Inventore voluptatum eos dolores.", + "Quo omnis similique quod perspiciatis.", + "Aut nobis nostrum enim id omnis." + ] + }, + "repositorySsh": { + "type": "string", + "description": "Git SSH Repository", + "example": "git@github.com:harness/drone-cli.git" + }, + "sourceBranch": { + "type": "string", + "description": "Git Source Branch", + "example": "feat/shiny-object" + }, + "targetBranch": { + "type": "string", + "description": "Git Target Branch", + "example": "develop" + }, + "workspace": { + "type": "string", + "description": "Git Workspace Root", + "example": "/harness" + } + }, + "description": "Git Metadata associated with the Scan", + "example": { + "detectedName": "Et error.", + "detectedVariant": "Sint qui est omnis ut.", + "droneCorrelated": true, + "provider": "Temporibus non atque.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut eos.", + "Blanditiis laboriosam voluptatibus quis.", + "Aut laboriosam.", + "Non et." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + } + }, + "HistoricalCounts": { + "type": "object", + "properties": { + "counts": { + "type": "array", + "items": { + "$ref": "#/components/schemas/HistoricalIssueCounts" + }, + "description": "Counts of active issues on baselines for each of the past several days", + "example": [ + { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + }, + { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + }, + { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + } + ] + } + }, + "example": { + "counts": [ + { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + }, + { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + }, + { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + }, + { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + } + ] + }, + "required": [ + "counts" + ] + }, + "HistoricalIssueCounts": { + "type": "object", + "properties": { + "active": { + "type": "boolean", + "description": "True if at least one baseline was scanned on this date", + "example": false + }, + "counts": { + "$ref": "#/components/schemas/MinimalIssueCounts" + }, + "date": { + "type": "integer", + "example": 1651578240, + "format": "int64" + }, + "detections": { + "$ref": "#/components/schemas/MinimalIssueCounts" + }, + "remediations": { + "$ref": "#/components/schemas/MinimalIssueCounts" + } + }, + "example": { + "active": true, + "counts": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "date": 1651578240, + "detections": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediations": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + } + }, + "required": [ + "date", + "counts", + "detections", + "remediations", + "active" + ] + }, + "IDResult": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + } + }, + "example": { + "id": "abcdef1234567890ghijkl" + }, + "required": [ + "id" + ] + }, + "ImpactedTarget": { + "type": "object", + "properties": { + "exemptionId": { + "type": "string", + "description": "ID of Security Test Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "exemptionStatus": { + "type": "string", + "description": "Exemption Status", + "example": "Ut eum vitae consequatur veritatis." + }, + "id": { + "type": "string", + "description": "The ID of the impacted target", + "example": "target1111111111111111" + }, + "lastDetected": { + "type": "number", + "description": "Timestamp of the last detection of this issue", + "example": 1634836529, + "format": "float" + }, + "name": { + "type": "string", + "description": "The name of the impacted target", + "example": "The Target Name" + }, + "numOccurrences": { + "type": "integer", + "description": "Indicates the number of Occurrences on the Issue", + "example": 10, + "format": "int64" + }, + "userId": { + "type": "string", + "description": "The user id associated with the last scan run", + "example": "Ea doloremque." + }, + "variantName": { + "type": "string", + "description": "Variant name", + "example": "Dolor et repellendus sint." + } + }, + "example": { + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatus": "Qui accusantium in dicta.", + "id": "target1111111111111111", + "lastDetected": 1634836529, + "name": "The Target Name", + "numOccurrences": 10, + "userId": "Nostrum error.", + "variantName": "Ipsum reiciendis itaque quis." + }, + "required": [ + "name", + "id", + "variantName", + "numOccurrences", + "lastDetected" + ] + }, + "Issue": { + "type": "object", + "properties": { + "baselineVariantId": { + "type": "string", + "description": "The Baseline Target Variant related to this Security Issue", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "currentStatus": { + "type": "string", + "description": "Current status of the Exemption", + "example": "Expired", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "details": { + "type": "object", + "description": "Issue details common to all occurrences", + "example": { + "package": "json-schema", + "version": "v0.2.3" + }, + "additionalProperties": true + }, + "exemptionCoverage": { + "type": "string", + "description": "Indicates if the Security Issue was found to be Exempted, Partially Exempted.", + "example": "Partially Exempted" + }, + "exemptionId": { + "type": "string", + "description": "ID of the associated Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "exemptionStatusAtScan": { + "type": "string", + "description": "Exemption's status at the Security Scan created time", + "example": "Expired", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "harnessAugmentation": { + "type": "object", + "description": "Harness Augmentation details", + "example": { + "Et occaecati nemo.": "Minus ullam eos iste consequatur.", + "Id quas.": "Tenetur eum magnam est." + }, + "additionalProperties": true + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "key": { + "type": "string", + "description": "Compression/deduplication key", + "example": "json-schema@0.2.3", + "maxLength": 512 + }, + "numOccurrences": { + "type": "integer", + "description": "Indicates the number of Occurrences on the Issue", + "example": 10, + "format": "int32" + }, + "occurrenceId": { + "type": "integer", + "example": 12345, + "format": "int64", + "minimum": 1 + }, + "occurrences": { + "type": "array", + "items": { + "type": "object", + "example": { + "Et quis aliquid quasi ducimus magni.": "Quia accusantium ullam sunt.", + "Veritatis quidem ratione tempore in corporis.": "Quas quidem id provident voluptas." + }, + "additionalProperties": true + }, + "description": "Array of details unique to each occurrence", + "example": [ + { + "line": "42" + }, + { + "line": "666" + } + ] + }, + "productId": { + "type": "string", + "description": "The scan tool that identified this Security Issue", + "example": "product1234567890abcde", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "severity": { + "type": "number", + "description": "Numeric severity, from 0 (lowest) to 10 (highest)", + "example": 8.5, + "format": "float" + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "status": { + "type": "string", + "description": "Indicates if the Security Issue was found to be remediated, ignored, etc.", + "example": "Remediated", + "enum": [ + "Remediated", + "Compensating Controls", + "Acceptable Use", + "Acceptable Risk", + "False Positive", + "Fix Unavailable", + "Exempted" + ] + }, + "subproduct": { + "type": "string", + "description": "The subproduct that identified this Security Issue", + "example": "product" + }, + "targetId": { + "type": "string", + "description": "The Target that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetName": { + "type": "string", + "description": "The Name of the Target that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetType": { + "type": "string", + "description": "The type of the Target that this Security Issue affects", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "targetVariantId": { + "type": "string", + "description": "The Target Variant that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetVariantName": { + "type": "string", + "description": "Name of the associated Target and Variant", + "example": "nodegoat:master", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "The type of vulnerability or quality issue for this Issue", + "example": "SAST", + "enum": [ + "SAST", + "DAST", + "SCA", + "IAC", + "SECRET", + "MISCONFIG", + "BUG_SMELLS", + "CODE_SMELLS", + "CODE_COVERAGE", + "EXTERNAL_POLICY" + ] + } + }, + "description": "Information about a Security Issue", + "example": { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Ea ab quis facilis accusantium blanditiis.": "Sequi eaque cupiditate quia praesentium.", + "Nam provident laborum veniam est aperiam.": "Quis dolor est rem dolor qui." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "required": [ + "title", + "key", + "severity", + "severityCode", + "productId", + "details", + "id", + "created" + ] + }, + "IssueCounts": { + "type": "object", + "properties": { + "critical": { + "type": "integer", + "description": "The number of Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "high": { + "type": "integer", + "description": "The number of High-severity Issues", + "example": 3, + "format": "int32" + }, + "ignored": { + "type": "integer", + "description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts", + "example": 1, + "format": "int32" + }, + "info": { + "type": "integer", + "description": "The number of Informational Issues", + "example": 11, + "format": "int32" + }, + "low": { + "type": "integer", + "description": "The number of Low-severity Issues", + "example": 39, + "format": "int32" + }, + "medium": { + "type": "integer", + "description": "The number of Medium-severity Issues", + "example": 17, + "format": "int32" + }, + "newCritical": { + "type": "integer", + "description": "The number of new Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "newHigh": { + "type": "integer", + "description": "The number of new High-severity Issues", + "example": 3, + "format": "int32" + }, + "newInfo": { + "type": "integer", + "description": "The number of new Informational Issues", + "example": 11, + "format": "int32" + }, + "newLow": { + "type": "integer", + "description": "The number of new Low-severity Issues", + "example": 39, + "format": "int32" + }, + "newMedium": { + "type": "integer", + "description": "The number of new Medium-severity Issues", + "example": 17, + "format": "int32" + }, + "newUnassigned": { + "type": "integer", + "description": "The number of new Issues with no associated severity code", + "example": 0, + "format": "int32" + }, + "unassigned": { + "type": "integer", + "description": "The number of Issues with no associated severity code", + "example": 0, + "format": "int32" + } + }, + "description": "The count of Security Issues, by severity code, for a given Harness Pipeline Execution", + "example": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17, + "newCritical": 1, + "newHigh": 3, + "newInfo": 11, + "newLow": 39, + "newMedium": 17, + "newUnassigned": 0, + "unassigned": 0 + }, + "required": [ + "critical", + "high", + "medium", + "low", + "info" + ] + }, + "IssueCountsWithExecutionInfo": { + "type": "object", + "properties": { + "artifactFingerprint": { + "type": "string", + "description": "Fingerprint which identifies an artifact", + "example": "kjl", + "maxLength": 64 + }, + "critical": { + "type": "integer", + "description": "The number of Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "executionId": { + "type": "string", + "description": "Harness Execution ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "high": { + "type": "integer", + "description": "The number of High-severity Issues", + "example": 3, + "format": "int32" + }, + "ignored": { + "type": "integer", + "description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts", + "example": 1, + "format": "int32" + }, + "info": { + "type": "integer", + "description": "The number of Informational Issues", + "example": 11, + "format": "int32" + }, + "lastScanned": { + "type": "integer", + "description": "Timestamp at which the target variant was last scanned", + "example": 1634836529, + "format": "int64" + }, + "low": { + "type": "integer", + "description": "The number of Low-severity Issues", + "example": 39, + "format": "int32" + }, + "medium": { + "type": "integer", + "description": "The number of Medium-severity Issues", + "example": 17, + "format": "int32" + }, + "pipelineId": { + "type": "string", + "description": "Harness Pipeline ID", + "example": "example_pipeline", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "targetId": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetName": { + "type": "string", + "description": "Name of the Scan Target", + "example": "NodeGoat" + }, + "targetVariantId": { + "type": "string", + "description": "Associated Target Variant ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetVariantName": { + "type": "string", + "description": "Name of the Scan Target", + "example": "NodeGoat" + }, + "type": { + "type": "string", + "description": "Scan Target's type", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + } + }, + "description": "The count of Security Issues, by severity code, for a given Harness Pipeline Execution along with this execution info", + "example": { + "artifactFingerprint": "4tb", + "critical": 1, + "executionId": "abcdef1234567890ghijkl", + "high": 3, + "ignored": 1, + "info": 11, + "lastScanned": 1634836529, + "low": 39, + "medium": 17, + "pipelineId": "example_pipeline", + "targetId": "abcdef1234567890ghijkl", + "targetName": "NodeGoat", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "NodeGoat", + "type": "repository" + }, + "required": [ + "critical", + "high", + "medium", + "low", + "info", + "targetId", + "targetVariantId", + "type", + "targetName", + "targetVariantName", + "executionId", + "pipelineId", + "lastScanned" + ] + }, + "IssueForExemptionResult": { + "type": "object", + "properties": { + "baselineVariantId": { + "type": "string", + "description": "The Baseline Target Variant related to this Security Issue", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "currentStatus": { + "type": "string", + "description": "Current status of the Exemption", + "example": "Rejected", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "details": { + "type": "object", + "description": "Issue details common to all occurrences", + "example": { + "package": "json-schema", + "version": "v0.2.3" + }, + "additionalProperties": true + }, + "exemptionCoverage": { + "type": "string", + "description": "Indicates if the Security Issue was found to be Exempted, Partially Exempted.", + "example": "Partially Exempted" + }, + "exemptionId": { + "type": "string", + "description": "ID of the associated Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "exemptionStatusAtScan": { + "type": "string", + "description": "Exemption's status at the Security Scan created time", + "example": "Approved", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "harnessAugmentation": { + "type": "object", + "description": "Harness Augmentation details", + "example": { + "Aliquid deserunt autem at.": "Quaerat veritatis temporibus doloremque.", + "Iste error necessitatibus eos deleniti quo.": "Delectus architecto.", + "Molestiae distinctio fugiat quae.": "Dignissimos qui rerum incidunt consequatur et." + }, + "additionalProperties": true + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "key": { + "type": "string", + "description": "Compression/deduplication key", + "example": "json-schema@0.2.3", + "maxLength": 512 + }, + "numOccurrences": { + "type": "integer", + "description": "Indicates the number of Occurrences on the Issue", + "example": 10, + "format": "int32" + }, + "occurrenceId": { + "type": "integer", + "example": 12345, + "format": "int64", + "minimum": 1 + }, + "occurrences": { + "type": "array", + "items": { + "type": "object", + "example": { + "Est provident ut possimus.": "Incidunt est maxime.", + "Facere qui.": "Neque id totam illum.", + "Odio nihil hic eos culpa.": "Et rem maxime." + }, + "additionalProperties": true + }, + "description": "Array of details unique to each occurrence", + "example": [ + { + "line": "42" + }, + { + "line": "666" + } + ] + }, + "occurrencesPagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "productId": { + "type": "string", + "description": "The scan tool that identified this Security Issue", + "example": "product1234567890abcde", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "severity": { + "type": "number", + "description": "Numeric severity, from 0 (lowest) to 10 (highest)", + "example": 8.5, + "format": "float" + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "status": { + "type": "string", + "description": "Indicates if the Security Issue was found to be remediated, ignored, etc.", + "example": "Remediated", + "enum": [ + "Remediated", + "Compensating Controls", + "Acceptable Use", + "Acceptable Risk", + "False Positive", + "Fix Unavailable", + "Exempted" + ] + }, + "subproduct": { + "type": "string", + "description": "The subproduct that identified this Security Issue", + "example": "product" + }, + "targetId": { + "type": "string", + "description": "The Target that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetName": { + "type": "string", + "description": "The Name of the Target that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetType": { + "type": "string", + "description": "The type of the Target that this Security Issue affects", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "targetVariantId": { + "type": "string", + "description": "The Target Variant that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetVariantName": { + "type": "string", + "description": "Name of the associated Target and Variant", + "example": "nodegoat:master", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targets": { + "type": "array", + "items": { + "type": "object", + "example": { + "Ducimus voluptates quia.": "Occaecati quis enim qui cum.", + "Et suscipit debitis.": "Consequatur dignissimos.", + "Et velit a nulla.": "Unde et officia." + }, + "additionalProperties": true + }, + "example": [ + { + "targetId": "target2222222222222222", + "targetName": "Target 1" + } + ] + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "The type of vulnerability or quality issue for this Issue", + "example": "SAST", + "enum": [ + "SAST", + "DAST", + "SCA", + "IAC", + "SECRET", + "MISCONFIG", + "BUG_SMELLS", + "CODE_SMELLS", + "CODE_COVERAGE", + "EXTERNAL_POLICY" + ] + } + }, + "example": { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Expired", + "harnessAugmentation": { + "Est est suscipit dolorum ea numquam.": "Ut maiores veritatis voluptatibus error modi.", + "Velit autem.": "Neque totam magni atque." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "occurrencesPagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "targets": [ + { + "targetId": "target2222222222222222", + "targetName": "Target 1" + } + ], + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "required": [ + "targets", + "targetType", + "title", + "key", + "severity", + "severityCode", + "productId", + "details", + "id", + "created" + ] + }, + "IssueInScan": { + "type": "object", + "properties": { + "baselineVariantId": { + "type": "string", + "description": "The Baseline Target Variant related to this Security Issue", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "currentStatus": { + "type": "string", + "description": "Current status of the Exemption", + "example": "Approved", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "details": { + "type": "object", + "description": "Issue details common to all occurrences", + "example": { + "package": "json-schema", + "version": "v0.2.3" + }, + "additionalProperties": true + }, + "exemptionCoverage": { + "type": "string", + "description": "Indicates if the Security Issue was found to be Exempted, Partially Exempted.", + "example": "Partially Exempted" + }, + "exemptionId": { + "type": "string", + "description": "ID of the associated Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "exemptionStatusAtScan": { + "type": "string", + "description": "Exemption's status at the Security Scan created time", + "example": "Rejected", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "gitMetadata": { + "$ref": "#/components/schemas/GitMetadata" + }, + "harnessAugmentation": { + "type": "object", + "description": "Harness Augmentation details", + "example": { + "Aut autem unde ad culpa quia enim.": "Et sit aut nemo fugiat.", + "Quam iure corrupti non cupiditate.": "Assumenda repellendus neque nostrum autem dolor.", + "Sed in neque nihil ut.": "Totam magnam ratione vero a." + }, + "additionalProperties": true + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "key": { + "type": "string", + "description": "Compression/deduplication key", + "example": "json-schema@0.2.3", + "maxLength": 512 + }, + "numNonExemptedOccurrences": { + "type": "integer", + "description": "Indicates the number of Occurrences which dont have an active exemption on the Occurrence", + "default": 0, + "example": 10, + "format": "int32" + }, + "numOccurrences": { + "type": "integer", + "description": "Indicates the number of Occurrences on the Issue", + "example": 10, + "format": "int32" + }, + "occurrenceId": { + "type": "integer", + "example": 12345, + "format": "int64", + "minimum": 1 + }, + "occurrences": { + "type": "array", + "items": { + "type": "object", + "example": { + "Laborum rerum reprehenderit harum sint similique modi.": "Alias voluptate.", + "Nemo libero et consequatur eaque.": "Id doloribus accusamus voluptas commodi voluptatibus consequatur." + }, + "additionalProperties": true + }, + "description": "Array of details unique to each occurrence", + "example": [ + { + "line": "42" + }, + { + "line": "666" + } + ] + }, + "occurrencesPagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "primaryOccurrenceId": { + "type": "integer", + "description": "The primary occurrence's ID", + "example": 12345, + "format": "int64" + }, + "productId": { + "type": "string", + "description": "The scan tool that identified this Security Issue", + "example": "product1234567890abcde", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "severity": { + "type": "number", + "description": "Numeric severity, from 0 (lowest) to 10 (highest)", + "example": 8.5, + "format": "float" + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "status": { + "type": "string", + "description": "Indicates if the Security Issue was found to be remediated, ignored, etc.", + "example": "Remediated", + "enum": [ + "Remediated", + "Compensating Controls", + "Acceptable Use", + "Acceptable Risk", + "False Positive", + "Fix Unavailable", + "Exempted" + ] + }, + "subproduct": { + "type": "string", + "description": "The subproduct that identified this Security Issue", + "example": "product" + }, + "targetId": { + "type": "string", + "description": "The Target that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetName": { + "type": "string", + "description": "The Name of the Target that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetType": { + "type": "string", + "description": "The type of the Target that this Security Issue affects", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "targetVariantId": { + "type": "string", + "description": "The Target Variant that this Security Issue affects", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetVariantName": { + "type": "string", + "description": "Name of the associated Target and Variant", + "example": "nodegoat:master", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "The type of vulnerability or quality issue for this Issue", + "example": "SAST", + "enum": [ + "SAST", + "DAST", + "SCA", + "IAC", + "SECRET", + "MISCONFIG", + "BUG_SMELLS", + "CODE_SMELLS", + "CODE_COVERAGE", + "EXTERNAL_POLICY" + ] + } + }, + "example": { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Approved", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "harnessAugmentation": { + "Nobis pariatur eos voluptatibus nesciunt similique dolor.": "Nulla magnam assumenda doloremque consectetur.", + "Rem ullam explicabo.": "Est reiciendis labore quis et." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNonExemptedOccurrences": 10, + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "occurrencesPagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "primaryOccurrenceId": 12345, + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "required": [ + "primaryOccurrenceId", + "occurrencesPagination", + "numOccurrences", + "numNonExemptedOccurrences", + "title", + "key", + "severity", + "severityCode", + "productId", + "details", + "id", + "created" + ] + }, + "IssueSeverityChangeResult": { + "type": "object", + "properties": { + "currentSeverityCode": { + "type": "string", + "description": "Current severity code of the issue", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "newSeverityCode": { + "type": "string", + "description": "New severity code of the issue", + "example": "Medium", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + } + }, + "example": { + "currentSeverityCode": "High", + "newSeverityCode": "Medium" + }, + "required": [ + "currentSeverityCode", + "newSeverityCode" + ] + }, + "IssueSummaries": { + "type": "object", + "properties": { + "issues": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IssueSummary" + }, + "description": "Short summary of an Issue", + "example": [ + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + } + }, + "description": "List of issue summaries", + "example": { + "issues": [ + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + }, + "required": [ + "issues" + ] + }, + "IssueSummary": { + "type": "object", + "properties": { + "currentStatus": { + "type": "string", + "description": "Current status of the Exemption", + "example": "Rejected", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "exemptionCoverage": { + "type": "string", + "description": "Indicates if the Security Issue was found to be Exempted, Partially Exempted.", + "example": "Partially Exempted" + }, + "exemptionId": { + "type": "string", + "description": "ID of the associated Exemption", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "exemptionStatusAtScan": { + "type": "string", + "description": "Exemption's status at the Security Scan created time", + "example": "Pending", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Expired" + ] + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "key": { + "type": "string", + "description": "Compression/deduplication key", + "example": "json-schema@0.2.3", + "maxLength": 512 + }, + "numNewOccurrences": { + "type": "integer", + "example": 2924611843635244500, + "format": "int64" + }, + "numOccurrences": { + "type": "integer", + "example": 54511519078764640, + "format": "int64" + }, + "numRemediatedOccurrences": { + "type": "integer", + "example": 9022332400783716000, + "format": "int64" + }, + "override": { + "type": "object", + "description": "Indicates the issue has been overridden", + "example": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "additionalProperties": true + }, + "scanId": { + "type": "string", + "description": "The ID of the Scan that detected this Security Issue", + "example": "scan111111111111111111" + }, + "severity": { + "type": "number", + "description": "Numeric severity, from 0 (lowest) to 10 (highest)", + "example": 8.5, + "format": "float" + }, + "severityCode": { + "type": "string", + "description": "Severity code", + "example": "High", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Info", + "Unassigned" + ] + }, + "status": { + "type": "string", + "description": "Indicates if the Security Issue was found to be remediated, ignored, etc.", + "example": "Remediated", + "enum": [ + "Remediated", + "Compensating Controls", + "Acceptable Use", + "Acceptable Risk", + "False Positive", + "Fix Unavailable", + "Exempted" + ] + }, + "targetVariantName": { + "type": "string", + "description": "Name of the associated Target and Variant", + "example": "nodegoat:master", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "title": { + "type": "string", + "description": "Title of the Security Issue", + "example": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "The type of vulnerability or quality issue for this Issue", + "example": "SAST", + "enum": [ + "SAST", + "DAST", + "SCA", + "IAC", + "SECRET", + "MISCONFIG", + "BUG_SMELLS", + "CODE_SMELLS", + "CODE_COVERAGE", + "EXTERNAL_POLICY" + ] + } + }, + "description": "Short summary of an Issue", + "example": { + "currentStatus": "Approved", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 510441610290248450, + "numOccurrences": 2506609549796740600, + "numRemediatedOccurrences": 8648993288355202000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "required": [ + "title", + "key", + "severity", + "severityCode", + "id", + "scanId" + ] + }, + "IssuesAugmentRemediationRequestBody": { + "type": "object", + "properties": { + "connectorId": { + "type": "string", + "example": "Impedit debitis quam dolores." + }, + "occurrenceId": { + "type": "integer", + "example": 12345, + "format": "int64", + "minimum": 1 + }, + "referenceId": { + "type": "string", + "example": "CWE-123" + }, + "scanId": { + "type": "string", + "description": "The Scan ID to use as context for the Security Issue to augment", + "example": "abcdefghijkl1234567890", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "userSnippet": { + "type": "string", + "description": "The user-supplied code snippet", + "example": "func example() int {\n return 0\n}", + "minLength": 1, + "maxLength": 1024 + } + }, + "example": { + "connectorId": "Voluptatem optio sint ipsa et facere et.", + "occurrenceId": 12345, + "referenceId": "CWE-123", + "scanId": "abcdefghijkl1234567890", + "userSnippet": "func example() int {\n return 0\n}" + }, + "required": [ + "scanId", + "occurrenceId" + ] + }, + "IssuesIssuesAugmentRemediationResponseBody": { + "$ref": "#/components/schemas/AugmentRemediationResult" + }, + "IssuesListIssuesResponseBody": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Issue" + }, + "example": [ + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + } + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + }, + "required": [ + "results", + "pagination" + ] + }, + "LatestBaselineScanInfo": { + "type": "object", + "properties": { + "pipelineId": { + "type": "string", + "description": "ID of the Harness pipeline to which this Exemption applies", + "example": "pipeline_1" + }, + "scanTool": { + "type": "string", + "description": "Product name of the scan tool used in this step", + "example": "owasp" + }, + "targetId": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetName": { + "type": "string", + "description": "The name of the target of the pipeline step's scan", + "example": "The Target" + }, + "targetType": { + "type": "string", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + } + }, + "description": "Information about a the latest scan of a targets baseline variant", + "example": { + "pipelineId": "pipeline_1", + "scanTool": "owasp", + "targetId": "abcdef1234567890ghijkl", + "targetName": "The Target", + "targetType": "repository" + }, + "required": [ + "targetId", + "targetName", + "targetType", + "pipelineId", + "scanTool" + ] + }, + "ListPullRequestsResult": { + "type": "object", + "properties": { + "pullRequests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PullRequestResult" + }, + "description": "The list of Pull Requests", + "example": [ + { + "pullRequestNumber": 6126599305297362000, + "pullRequestUrl": "Autem voluptatem.", + "sourceBranch": "feat/shiny-object" + }, + { + "pullRequestNumber": 6126599305297362000, + "pullRequestUrl": "Autem voluptatem.", + "sourceBranch": "feat/shiny-object" + }, + { + "pullRequestNumber": 6126599305297362000, + "pullRequestUrl": "Autem voluptatem.", + "sourceBranch": "feat/shiny-object" + } + ] + } + }, + "example": { + "pullRequests": [ + { + "pullRequestNumber": 6126599305297362000, + "pullRequestUrl": "Autem voluptatem.", + "sourceBranch": "feat/shiny-object" + }, + { + "pullRequestNumber": 6126599305297362000, + "pullRequestUrl": "Autem voluptatem.", + "sourceBranch": "feat/shiny-object" + }, + { + "pullRequestNumber": 6126599305297362000, + "pullRequestUrl": "Autem voluptatem.", + "sourceBranch": "feat/shiny-object" + }, + { + "pullRequestNumber": 6126599305297362000, + "pullRequestUrl": "Autem voluptatem.", + "sourceBranch": "feat/shiny-object" + } + ] + }, + "required": [ + "pullRequests" + ] + }, + "MinimalIssueCounts": { + "type": "object", + "properties": { + "critical": { + "type": "integer", + "description": "The number of Critical-severity Issues", + "example": 1, + "format": "int32" + }, + "high": { + "type": "integer", + "description": "The number of High-severity Issues", + "example": 3, + "format": "int32" + }, + "ignored": { + "type": "integer", + "description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts", + "example": 1, + "format": "int32" + }, + "info": { + "type": "integer", + "description": "The number of Informational Issues", + "example": 11, + "format": "int32" + }, + "low": { + "type": "integer", + "description": "The number of Low-severity Issues", + "example": 39, + "format": "int32" + }, + "medium": { + "type": "integer", + "description": "The number of Medium-severity Issues", + "example": 17, + "format": "int32" + } + }, + "description": "The count of Security Issues, by severity code, for a given Harness Pipeline Execution", + "example": { + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "required": [ + "critical", + "high", + "medium", + "low", + "info" + ] + }, + "NotFound": { + "type": "object", + "properties": { + "message": { + "type": "string", + "example": "Not Found" + }, + "status": { + "type": "integer", + "default": 404, + "example": 404, + "format": "int64" + } + }, + "example": { + "message": "Not Found", + "status": 404 + }, + "required": [ + "message" + ] + }, + "PaginatedIssueSummaries": { + "type": "object", + "properties": { + "issues": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IssueSummary" + }, + "description": "Diff-ed Issues related to this scan step, resulting from a diff between a scan and its target's latest baseline scan (previous scan if no baseline)", + "example": [ + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + }, + "pagination": { + "$ref": "#/components/schemas/StoPagination" + } + }, + "example": { + "issues": [ + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ], + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + } + }, + "required": [ + "issues", + "pagination" + ] + }, + "StoPagination": { + "type": "object", + "properties": { + "link": { + "type": "string", + "description": "Link-based paging", + "example": "" + }, + "page": { + "type": "integer", + "description": "Page number (starting from 0)", + "example": 4, + "format": "int64" + }, + "pageSize": { + "type": "integer", + "description": "Requested page size", + "example": 20, + "format": "int64" + }, + "totalItems": { + "type": "integer", + "description": "Total results available", + "example": 230, + "format": "int64" + }, + "totalPages": { + "type": "integer", + "description": "Total pages available", + "example": 12, + "format": "int64" + } + }, + "example": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "required": [ + "page", + "pageSize", + "totalPages", + "totalItems" + ] + }, + "PatchTargetRequestBody": { + "type": "object", + "properties": { + "baselineRegEx": { + "type": "string", + "description": "RegEx to match for dynamically selecting the Baseline for this Scan Target. Must be compatible with the RE2 standard.", + "example": "release_.*", + "maxLength": 128 + }, + "baselineVariantId": { + "type": "string", + "description": "ID of baseline Target Variant for Issue comparison", + "example": "abcdef1234567890ghijkl", + "pattern": "^([a-zA-Z0-9_-]{22}|)$" + }, + "directory": { + "type": "string", + "description": "Directory within the Test Target to be scanned", + "example": "app/src", + "maxLength": 1024 + }, + "name": { + "type": "string", + "description": "Name of the Test Target", + "example": "NodeGoat", + "pattern": "^[a-zA-Z0-9_.:/|()-]+$", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Test Target's type", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "url": { + "type": "string", + "description": "URL used to access the Test Target", + "example": "https://github.com/example/repo", + "maxLength": 1024 + } + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "directory": "app/src", + "name": "NodeGoat", + "type": "repository", + "url": "https://github.com/example/repo" + } + }, + "PendingChanges": { + "type": "object", + "properties": { + "durationDays": { + "type": "integer", + "description": "The number of days an issue should be exempted for", + "example": 7, + "format": "int64" + } + }, + "example": { + "durationDays": 7 + } + }, + "PipelineSecurityCounts": { + "type": "object", + "properties": { + "existing": { + "$ref": "#/components/schemas/FrontendIssueCounts" + }, + "new": { + "$ref": "#/components/schemas/FrontendIssueCounts" + }, + "remediated": { + "$ref": "#/components/schemas/FrontendIssueCounts" + }, + "totalActive": { + "type": "integer", + "example": 8544012669320886000, + "format": "int64" + }, + "totalExempted": { + "type": "integer", + "example": 6566388842686219000, + "format": "int64" + }, + "totalPartiallyExempted": { + "type": "integer", + "example": 3515843800320812500, + "format": "int64" + }, + "totalPending": { + "type": "integer", + "example": 6909749607313537000, + "format": "int64" + }, + "totalRejected": { + "type": "integer", + "example": 2643665952191923700, + "format": "int64" + }, + "totalRemediated": { + "type": "integer", + "example": 7258202662046271000, + "format": "int64" + } + }, + "example": { + "existing": { + "active": 150, + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "new": { + "active": 150, + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediated": { + "active": 150, + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "totalActive": 2187035288517561900, + "totalExempted": 1089284801388791000, + "totalPartiallyExempted": 4538086444197805000, + "totalPending": 4559053209419841000, + "totalRejected": 2823743294534111000, + "totalRemediated": 6322923188873107000 + }, + "required": [ + "new", + "existing", + "remediated", + "totalActive" + ] + }, + "PipelineSecurityIssuesResult": { + "type": "object", + "properties": { + "counts": { + "$ref": "#/components/schemas/PipelineSecurityCounts" + }, + "existing": { + "$ref": "#/components/schemas/PaginatedIssueSummaries" + }, + "matchingSteps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StageStepID" + }, + "example": [ + { + "stageId": "stage_id", + "stepId": "step_id" + }, + { + "stageId": "stage_id", + "stepId": "step_id" + } + ] + }, + "new": { + "$ref": "#/components/schemas/PaginatedIssueSummaries" + } + }, + "description": "Data needed by the PipelineSecurityView", + "example": { + "counts": { + "existing": { + "active": 150, + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "new": { + "active": 150, + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "remediated": { + "active": 150, + "critical": 1, + "high": 3, + "ignored": 1, + "info": 11, + "low": 39, + "medium": 17 + }, + "totalActive": 3010335676894755000, + "totalExempted": 1885419293351119600, + "totalPartiallyExempted": 4718585587866911000, + "totalPending": 3292110045159569400, + "totalRejected": 1284804608773279700, + "totalRemediated": 1823425117988642800 + }, + "existing": { + "issues": [ + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ], + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + } + }, + "matchingSteps": [ + { + "stageId": "stage_id", + "stepId": "step_id" + }, + { + "stageId": "stage_id", + "stepId": "step_id" + }, + { + "stageId": "stage_id", + "stepId": "step_id" + }, + { + "stageId": "stage_id", + "stepId": "step_id" + } + ], + "new": { + "issues": [ + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ], + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + } + } + }, + "required": [ + "existing", + "new", + "counts", + "matchingSteps" + ] + }, + "PipelineSecurityStepsResult": { + "type": "object", + "properties": { + "steps": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StepInfo" + }, + "example": [ + { + "baselineVariant": "branch: main", + "scanId": "scan111111111111111111", + "scanTool": "owasp", + "stageId": "stage_id", + "stepId": "step_id", + "subproduct": "product", + "targetId": "target1111111111111111", + "targetName": "The Target", + "targetType": "repository", + "targetVariant": "branch: feature" + }, + { + "baselineVariant": "branch: main", + "scanId": "scan111111111111111111", + "scanTool": "owasp", + "stageId": "stage_id", + "stepId": "step_id", + "subproduct": "product", + "targetId": "target1111111111111111", + "targetName": "The Target", + "targetType": "repository", + "targetVariant": "branch: feature" + }, + { + "baselineVariant": "branch: main", + "scanId": "scan111111111111111111", + "scanTool": "owasp", + "stageId": "stage_id", + "stepId": "step_id", + "subproduct": "product", + "targetId": "target1111111111111111", + "targetName": "The Target", + "targetType": "repository", + "targetVariant": "branch: feature" + }, + { + "baselineVariant": "branch: main", + "scanId": "scan111111111111111111", + "scanTool": "owasp", + "stageId": "stage_id", + "stepId": "step_id", + "subproduct": "product", + "targetId": "target1111111111111111", + "targetName": "The Target", + "targetType": "repository", + "targetVariant": "branch: feature" + } + ] + } + }, + "example": { + "steps": [ + { + "baselineVariant": "branch: main", + "scanId": "scan111111111111111111", + "scanTool": "owasp", + "stageId": "stage_id", + "stepId": "step_id", + "subproduct": "product", + "targetId": "target1111111111111111", + "targetName": "The Target", + "targetType": "repository", + "targetVariant": "branch: feature" + }, + { + "baselineVariant": "branch: main", + "scanId": "scan111111111111111111", + "scanTool": "owasp", + "stageId": "stage_id", + "stepId": "step_id", + "subproduct": "product", + "targetId": "target1111111111111111", + "targetName": "The Target", + "targetType": "repository", + "targetVariant": "branch: feature" + } + ] + }, + "required": [ + "steps" + ] + }, + "Product": { + "type": "object", + "properties": { + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "description": { + "type": "string", + "description": "Scan Tool's description", + "example": "OWASP 5.x SCA scanner" + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "isEnabled": { + "type": "boolean", + "description": "'true' if this Scan Tool is enabled for use", + "example": true + }, + "lastModified": { + "type": "integer", + "description": "Unix timestamp at which the resource was most recently modified", + "example": 1651578240, + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of the Scan Tool", + "example": "owasp" + } + }, + "description": "Information about a Scan Tool", + "example": { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + }, + "required": [ + "name", + "description", + "isEnabled", + "id", + "created", + "lastModified" + ] + }, + "ProductsListProductsResponseBody": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Product" + }, + "example": [ + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + }, + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + }, + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + }, + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + } + ] + } + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + }, + { + "created": 1651578240, + "description": "OWASP 5.x SCA scanner", + "id": "abcdef1234567890ghijkl", + "isEnabled": true, + "lastModified": 1651578240, + "name": "owasp" + } + ] + }, + "required": [ + "results", + "pagination" + ] + }, + "PromoteExemptionRequestBody": { + "type": "object", + "properties": { + "approverId": { + "type": "string", + "description": "User ID the user who approved or rejected this exemptions", + "example": "user111111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "pipelineId": { + "type": "string", + "description": "Harness STO pipeline ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "targetId": { + "type": "string", + "description": "Harness STO Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + } + }, + "example": { + "approverId": "user111111111111111111", + "pipelineId": "abcdef1234567890ghijkl", + "targetId": "abcdef1234567890ghijkl" + }, + "required": [ + "approverId", + "type", + "reason", + "requesterId", + "pendingChanges", + "issueId", + "status", + "created", + "lastModified" + ] + }, + "PullRequestCorrelationResult": { + "type": "object", + "properties": { + "isCorrelated": { + "type": "boolean", + "description": "True if the path is correlated to the Pull Request", + "example": true + } + }, + "example": { + "isCorrelated": true + }, + "required": [ + "isCorrelated" + ] + }, + "PullRequestResult": { + "type": "object", + "properties": { + "pullRequestNumber": { + "type": "integer", + "description": "The number of the Pull Request", + "example": 3126170514516337000, + "format": "int64" + }, + "pullRequestUrl": { + "type": "string", + "description": "The URL of the Pull Request", + "example": "Sit adipisci nobis magnam et molestiae." + }, + "sourceBranch": { + "type": "string", + "description": "The source branch of the Pull Request", + "example": "feat/shiny-object" + } + }, + "example": { + "pullRequestNumber": 7032269265141213000, + "pullRequestUrl": "Voluptas iure sint repudiandae ullam est.", + "sourceBranch": "feat/shiny-object" + }, + "required": [ + "sourceBranch", + "pullRequestNumber", + "pullRequestUrl" + ] + }, + "PullRequestsGetPullRequestCorrelationResponseBody": { + "$ref": "#/components/schemas/PullRequestCorrelationResult" + }, + "PullRequestsListPullRequestsResponseBody": { + "$ref": "#/components/schemas/ListPullRequestsResult" + }, + "RefIds": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "Mollitia et ab inventore ipsam." + }, + "type": { + "type": "string", + "example": "Similique soluta quod quisquam." + } + }, + "example": { + "id": "Consectetur modi exercitationem natus.", + "type": "Excepturi iure et aliquid amet." + } + }, + "Scan": { + "type": "object", + "properties": { + "codeCoverage": { + "type": "number", + "description": "The Code Coverage value for the Scan", + "example": 65.5, + "format": "float" + }, + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "executionId": { + "type": "string", + "description": "Pipeline Execution ID associated with the Scan", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "gitMetadata": { + "$ref": "#/components/schemas/GitMetadata" + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "lastModified": { + "type": "integer", + "description": "Unix timestamp at which the resource was most recently modified", + "example": 1651578240, + "format": "int64" + }, + "orgId": { + "type": "string", + "description": "Harness Organization ID", + "example": "your_harness_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "pipelineId": { + "type": "string", + "description": "Harness Organization ID", + "example": "your_harness_pipeline", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "productId": { + "type": "string", + "description": "The Scan Product used for the Scan", + "example": "product111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "projectId": { + "type": "string", + "description": "Harness Project ID", + "example": "your_harness_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "refinementVersion": { + "type": "string", + "description": "The Issue refinement version used for this Scan", + "example": "1.0.5" + }, + "stageId": { + "type": "string", + "description": "Pipeline Stage ID associated with the Scan", + "example": "stage_id", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "Current status of the Scan", + "example": "Succeeded", + "enum": [ + "Pending", + "Running", + "Succeeded", + "Failed" + ] + }, + "stepId": { + "type": "string", + "description": "Pipeline Step ID associated with the Scan", + "example": "step_id", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "subproduct": { + "type": "string", + "description": "The Scan Subproduct used for the Scan", + "example": "owasp", + "format": "binary" + }, + "targetVariantId": { + "type": "string", + "description": "The Target Variant associated with the Scan", + "example": "variant111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + } + }, + "description": "Information about a Security Test Scan", + "example": { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + "required": [ + "targetVariantId", + "orgId", + "projectId", + "pipelineId", + "executionId", + "stageId", + "stepId", + "productId", + "status", + "refinementVersion", + "id", + "created", + "lastModified" + ] + }, + "ScanIssuesResult": { + "type": "object", + "properties": { + "issues": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Issue" + }, + "description": "List of Issues", + "example": [ + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + } + }, + "description": "List of Issues", + "example": { + "issues": [ + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + { + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "currentStatus": "Rejected", + "details": { + "package": "json-schema", + "version": "v0.2.3" + }, + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Pending", + "harnessAugmentation": { + "Dolores rem ut.": "Aperiam voluptatem et aspernatur.", + "Illo et molestiae qui sed quia tempore.": "Et suscipit quo.", + "Iste officiis est.": "Quia non amet omnis eos." + }, + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numOccurrences": 10, + "occurrenceId": 12345, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "productId": "product1234567890abcde", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "subproduct": "product", + "targetId": "abcdef1234567890ghijkl", + "targetName": "abcdef1234567890ghijkl", + "targetType": "repository", + "targetVariantId": "abcdef1234567890ghijkl", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + } + ] + }, + "required": [ + "issues" + ] + }, + "ScansListScansResponseBody": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Scan" + }, + "example": [ + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + } + ] + } + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + { + "codeCoverage": 65.5, + "created": 1651578240, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Ullam maiores quas ea unde.", + "detectedVariant": "Exercitationem odit cumque.", + "droneCorrelated": false, + "provider": "Reiciendis corporis et.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Aut sed vero quos laudantium est reprehenderit.", + "Ducimus aspernatur facere in ut culpa.", + "Deserunt aliquid.", + "Laboriosam ad dolore." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + } + ] + }, + "required": [ + "results", + "pagination" + ] + }, + "ScansScanIssueCountsResponseBody": { + "$ref": "#/components/schemas/FullIssueCounts" + }, + "ScansScanIssueResponseBody": { + "$ref": "#/components/schemas/IssueInScan" + }, + "ScansScanIssuesResponseBody": { + "$ref": "#/components/schemas/ScanIssuesResult" + }, + "SecurityReviewResult": { + "type": "object", + "properties": { + "counts": { + "$ref": "#/components/schemas/FrontendExemptionCounts" + }, + "exemptions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FrontendExemption" + }, + "description": "Security Review data", + "example": [ + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + } + ] + }, + "pagination": { + "$ref": "#/components/schemas/StoPagination" + } + }, + "description": "Data needed by the Security Review page", + "example": { + "counts": { + "Approved": 150, + "Expired": 150, + "Pending": 150, + "Rejected": 150 + }, + "exemptions": [ + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + }, + { + "approverId": "user111111111111111111", + "canApproveFor": [ + "ACCOUNT", + "ORG", + "PROJECT", + "PIPELINE" + ], + "canCancel": true, + "canCreate": true, + "canReApprove": true, + "canReject": true, + "created": 1651578240, + "expiration": 1651578240, + "id": "abcdef1234567890ghijkl", + "isDeleted": true, + "issueSummary": { + "currentStatus": "Rejected", + "exemptionCoverage": "Partially Exempted", + "exemptionId": "abcdef1234567890ghijkl", + "exemptionStatusAtScan": "Rejected", + "id": "abcdef1234567890ghijkl", + "key": "json-schema@0.2.3", + "numNewOccurrences": 2120508977338000000, + "numOccurrences": 3991226380867742000, + "numRemediatedOccurrences": 8224674406052809000, + "override": { + "originalSeverity": "medium", + "reason": "snyk" + }, + "scanId": "scan111111111111111111", + "severity": 8.5, + "severityCode": "High", + "status": "Remediated", + "targetVariantName": "nodegoat:master", + "title": "json-schema@0.2.3 is vulnerable to Prototype Pollution", + "type": "SAST" + }, + "lastModified": 1651578240, + "link": "Upstream bug", + "numOccurrences": 10, + "orgId": "STO", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "pipeline_1", + "projectId": "STO", + "reason": "Upstream bug", + "requesterId": "user111111111111111111", + "scope": "PROJECT", + "status": "Approved", + "targetId": "target2222222222222222", + "totalOccurrences": 10, + "type": "Other" + } + ], + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + } + }, + "required": [ + "exemptions", + "pagination", + "counts" + ] + }, + "SscaExecutionArtifactSummaryRequestBody": { + "type": "object", + "properties": { + "artifactFingerprints": { + "type": "array", + "items": { + "type": "string", + "example": "wm8", + "maxLength": 64 + }, + "description": "Artifact fingerprints for lookup", + "example": [ + "jrn", + "gov", + "wm8" + ], + "maxItems": 100 + }, + "targetVariants": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TargetAndVariantNameRequired" + }, + "description": "Target-variant pairs for lookup", + "example": [ + { + "targetName": "Voluptatem quos voluptate voluptatem eos.", + "targetType": "repository", + "targetVariantName": "Nesciunt et." + }, + { + "targetName": "Voluptatem quos voluptate voluptatem eos.", + "targetType": "repository", + "targetVariantName": "Nesciunt et." + }, + { + "targetName": "Voluptatem quos voluptate voluptatem eos.", + "targetType": "repository", + "targetVariantName": "Nesciunt et." + } + ], + "maxItems": 100 + } + }, + "example": { + "artifactFingerprints": [ + "drr", + "gww", + "sk3" + ], + "targetVariants": [ + { + "targetName": "Voluptatem quos voluptate voluptatem eos.", + "targetType": "repository", + "targetVariantName": "Nesciunt et." + }, + { + "targetName": "Voluptatem quos voluptate voluptatem eos.", + "targetType": "repository", + "targetVariantName": "Nesciunt et." + }, + { + "targetName": "Voluptatem quos voluptate voluptatem eos.", + "targetType": "repository", + "targetVariantName": "Nesciunt et." + } + ] + } + }, + "SscaExecutionIssueCountsRequestBody": { + "type": "object", + "properties": { + "targetVariants": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TargetAndVariantName" + }, + "description": "Target-variant pairs for lookup", + "example": [ + { + "targetName": "Qui maiores.", + "targetType": "repository", + "targetVariantName": "Ea nisi quidem eos est mollitia." + }, + { + "targetName": "Qui maiores.", + "targetType": "repository", + "targetVariantName": "Ea nisi quidem eos est mollitia." + }, + { + "targetName": "Qui maiores.", + "targetType": "repository", + "targetVariantName": "Ea nisi quidem eos est mollitia." + } + ], + "maxItems": 100 + } + }, + "example": { + "targetVariants": [ + { + "targetName": "Qui maiores.", + "targetType": "repository", + "targetVariantName": "Ea nisi quidem eos est mollitia." + }, + { + "targetName": "Qui maiores.", + "targetType": "repository", + "targetVariantName": "Ea nisi quidem eos est mollitia." + }, + { + "targetName": "Qui maiores.", + "targetType": "repository", + "targetVariantName": "Ea nisi quidem eos est mollitia." + } + ] + } + }, + "StageStepID": { + "type": "object", + "properties": { + "stageId": { + "type": "string", + "example": "stage_id" + }, + "stepId": { + "type": "string", + "example": "step_id" + } + }, + "example": { + "stageId": "stage_id", + "stepId": "step_id" + }, + "required": [ + "stageId", + "stepId" + ] + }, + "StoStatus": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "Status", + "example": "ok" + } + }, + "example": { + "status": "ok" + }, + "required": [ + "status" + ] + }, + "StepInfo": { + "type": "object", + "properties": { + "baselineVariant": { + "type": "string", + "description": "A short description of the baseline target variant for the pipeline step's scan diff", + "example": "branch: main" + }, + "scanId": { + "type": "string", + "description": "Scan id", + "example": "scan111111111111111111" + }, + "scanTool": { + "type": "string", + "description": "Product name of the scan tool used in this step", + "example": "owasp" + }, + "stageId": { + "type": "string", + "example": "stage_id" + }, + "stepId": { + "type": "string", + "example": "step_id" + }, + "subproduct": { + "type": "string", + "description": "The subproduct that identified this Security Issue", + "example": "product" + }, + "targetId": { + "type": "string", + "description": "The ID of the target of the pipeline step's scan", + "example": "target1111111111111111" + }, + "targetName": { + "type": "string", + "description": "The name of the target of the pipeline step's scan", + "example": "The Target" + }, + "targetType": { + "type": "string", + "description": "The type of the target of the pipeline step's scan", + "example": "repository", + "enum": [ + "repository", + "container", + "instance", + "configuration" + ] + }, + "targetVariant": { + "type": "string", + "description": "A short description of the target variant of the pipeline step's scan", + "example": "branch: feature" + } + }, + "description": "Information about a Scan Step", + "example": { + "baselineVariant": "branch: main", + "scanId": "scan111111111111111111", + "scanTool": "owasp", + "stageId": "stage_id", + "stepId": "step_id", + "subproduct": "product", + "targetId": "target1111111111111111", + "targetName": "The Target", + "targetType": "repository", + "targetVariant": "branch: feature" + }, + "required": [ + "scanId", + "scanTool", + "targetId", + "targetName", + "targetType", + "targetVariant", + "stageId", + "stepId" + ] + }, + "StoTarget": { + "type": "object", + "properties": { + "baselineRegEx": { + "type": "string", + "description": "RegEx to match for dynamically selecting the Baseline for this Scan Target. Must be compatible with the RE2 standard.", + "example": "release_.*", + "maxLength": 128 + }, + "baselineVariantId": { + "type": "string", + "description": "ID of baseline Target Variant for Issue comparison", + "example": "abcdef1234567890ghijkl", + "pattern": "^([a-zA-Z0-9_-]{22}|)$" + }, + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "directory": { + "type": "string", + "description": "Directory within the Test Target to be scanned", + "example": "app/src", + "maxLength": 1024 + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "lastModified": { + "type": "integer", + "description": "Unix timestamp at which the resource was most recently modified", + "example": 1651578240, + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of the Test Target", + "example": "NodeGoat", + "pattern": "^[a-zA-Z0-9_.:/|()-]+$", + "maxLength": 128 + }, + "orgId": { + "type": "string", + "description": "Harness Organization ID", + "example": "example_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "projectId": { + "type": "string", + "description": "Harness Project ID", + "example": "example_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Test Target's type", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "url": { + "type": "string", + "description": "URL used to access the Test Target", + "example": "https://github.com/example/repo", + "maxLength": 1024 + } + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + }, + "required": [ + "id", + "created", + "lastModified", + "name", + "type", + "orgId", + "projectId" + ] + }, + "TargetAndVariantName": { + "type": "object", + "properties": { + "targetName": { + "type": "string", + "description": "Target name", + "example": "Asperiores velit ut." + }, + "targetType": { + "type": "string", + "description": "Type of target", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "targetVariantName": { + "type": "string", + "description": "Variant name", + "example": "Aut animi provident similique dignissimos mollitia deleniti." + } + }, + "example": { + "targetName": "Minus porro accusamus recusandae.", + "targetType": "repository", + "targetVariantName": "Soluta ab quis." + } + }, + "TargetAndVariantNameRequired": { + "type": "object", + "properties": { + "targetName": { + "type": "string", + "description": "Target name", + "example": "Beatae cupiditate quasi quo non." + }, + "targetType": { + "type": "string", + "description": "Type of target", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "targetVariantName": { + "type": "string", + "description": "Variant name", + "example": "Quos quia cupiditate modi fugiat." + } + }, + "example": { + "targetName": "Dolores corrupti.", + "targetType": "repository", + "targetVariantName": "Dolor ea ut doloremque deserunt debitis consequuntur." + }, + "required": [ + "targetName", + "targetVariantName", + "targetType" + ] + }, + "TargetVariant": { + "type": "object", + "properties": { + "created": { + "type": "integer", + "description": "Unix timestamp at which the resource was created", + "example": 1651578240, + "format": "int64" + }, + "hash": { + "type": "string", + "description": "Git Commit or Container Image hash", + "example": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "maxLength": 64 + }, + "id": { + "type": "string", + "description": "Resource identifier", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "lastModified": { + "type": "integer", + "description": "Unix timestamp at which the resource was most recently modified", + "example": 1651578240, + "format": "int64" + }, + "parameters": { + "type": "object", + "description": "Parameters for this Variant, as a JSON-encoded string", + "example": { + "branch": "main" + }, + "additionalProperties": { + "type": "string", + "example": "Odit non quia." + } + }, + "targetId": { + "type": "string", + "description": "Associated Target ID", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + } + }, + "description": "Information about a Scan Target Variant", + "example": { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + "required": [ + "targetId", + "parameters", + "id", + "created", + "lastModified" + ] + }, + "TargetVariantsListTargetVariantsResponseBody": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TargetVariant" + }, + "example": [ + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + } + ] + } + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + }, + { + "created": 1651578240, + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "parameters": { + "branch": "main" + }, + "targetId": "abcdef1234567890ghijkl" + } + ] + }, + "required": [ + "results", + "pagination" + ] + }, + "TargetsListTargetsResponseBody": { + "type": "object", + "properties": { + "pagination": { + "$ref": "#/components/schemas/StoPagination" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StoTarget" + }, + "example": [ + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + }, + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + }, + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + } + ] + } + }, + "example": { + "pagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + }, + "results": [ + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + }, + { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "created": 1651578240, + "directory": "app/src", + "id": "abcdef1234567890ghijkl", + "lastModified": 1651578240, + "name": "NodeGoat", + "orgId": "example_org", + "projectId": "example_project", + "type": "repository", + "url": "https://github.com/example/repo" + } + ] + }, + "required": [ + "results", + "pagination" + ] + }, + "TestTarget": { + "type": "object", + "properties": { + "baseline": { + "$ref": "#/components/schemas/TestTargetVariant" + }, + "baselineRegEx": { + "type": "string", + "description": "RegEx to match for dynamically selecting the Baseline for this Scan Target. Must be compatible with the RE2 standard.", + "example": "release_.*", + "maxLength": 128 + }, + "directory": { + "type": "string", + "description": "Directory of target", + "example": "/" + }, + "id": { + "type": "string", + "description": "ID of target", + "example": "target1111111111111111" + }, + "lastScanned": { + "type": "integer", + "description": "Timestamp at which the Baseline was last scanned", + "example": 1634836529, + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of Target", + "example": "target 1" + }, + "type": { + "type": "string", + "description": "Type of target", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "url": { + "type": "string", + "description": "Url of target", + "example": "github.com/harness/sto-core" + }, + "variants": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TestTargetVariant" + }, + "example": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + } + }, + "description": "Individual TestTarget", + "example": { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + }, + "required": [ + "id", + "name", + "type", + "variants", + "lastScanned" + ] + }, + "TestTargetResult": { + "type": "object", + "properties": { + "targets": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TestTarget" + }, + "description": "Test Targets data", + "example": [ + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + }, + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + }, + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + }, + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + } + ] + }, + "targetsPagination": { + "$ref": "#/components/schemas/StoPagination" + } + }, + "description": "Data needed by the Test Targets page", + "example": { + "targets": [ + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + }, + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + }, + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + }, + { + "baseline": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "baselineRegEx": "release_.*", + "directory": "/", + "id": "target1111111111111111", + "lastScanned": 1634836529, + "name": "target 1", + "type": "repository", + "url": "github.com/harness/sto-core", + "variants": [ + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + { + "id": "variant111111111111111", + "name": "Branch: feature-1" + } + ] + } + ], + "targetsPagination": { + "link": "", + "page": 4, + "pageSize": 20, + "totalItems": 230, + "totalPages": 12 + } + }, + "required": [ + "targets", + "targetsPagination" + ] + }, + "TestTargetVariant": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Target Variant ID", + "example": "variant111111111111111" + }, + "name": { + "type": "string", + "description": "Name of Target Variant", + "example": "Branch: feature-1" + } + }, + "description": "Individual Test Target Variant", + "example": { + "id": "variant111111111111111", + "name": "Branch: feature-1" + }, + "required": [ + "id", + "name" + ] + }, + "TokenResponse": { + "type": "object", + "properties": { + "token": { + "type": "string", + "description": "Issued cross-service JWT", + "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c" + } + }, + "example": { + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c" + }, + "required": [ + "token" + ] + }, + "UpdateExemptionRequestBody": { + "type": "object", + "properties": { + "expiration": { + "type": "integer", + "description": "Unix timestamp at which this Exemption will expire", + "example": 1651578240, + "format": "int64" + }, + "link": { + "type": "string", + "description": "Link to a related ticket", + "example": "https://example.com/ABC-1234", + "maxLength": 1024 + }, + "pendingChanges": { + "$ref": "#/components/schemas/PendingChanges" + }, + "pipelineId": { + "type": "string", + "description": "ID of the Harness Pipeline to which the exemption applies. You must also specify \"projectId\" and \"orgId\". Cannot be specified alongside \"targetId\".", + "example": "your_pipeline", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "reason": { + "type": "string", + "description": "Text describing why this Exemption is necessary", + "example": "Waiting on upstream bug fix", + "maxLength": 1024 + }, + "requesterId": { + "type": "string", + "description": "User ID of user who requested this exemptions", + "example": "user111111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "targetId": { + "type": "string", + "description": "ID of the Target to which the exemption applies. Cannot be specified alongside \"projectId\" or \"pipelineId\".", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "type": { + "type": "string", + "description": "Type of Exemption (Compensating Controls / Acceptable Use / Acceptable Risk / False Positive / Fix Unavailable / Other)", + "example": "Other", + "enum": [ + "Compensating Controls", + "Acceptable Use", + "Acceptable Risk", + "False Positive", + "Fix Unavailable", + "Other" + ] + } + }, + "example": { + "expiration": 1651578240, + "link": "https://example.com/ABC-1234", + "pendingChanges": { + "durationDays": 7 + }, + "pipelineId": "your_pipeline", + "reason": "Waiting on upstream bug fix", + "requesterId": "user111111111111111111", + "targetId": "abcdef1234567890ghijkl", + "type": "Other" + }, + "required": [ + "type", + "reason", + "requesterId", + "pendingChanges", + "issueId", + "status", + "created", + "lastModified" + ] + }, + "UpdateIssueRequestBody": { + "type": "object", + "properties": { + "numOccurrences": { + "type": "integer", + "description": "Indicates the number of Occurrences on the Issue", + "example": 10, + "format": "int32" + }, + "occurrences": { + "type": "array", + "items": { + "type": "object", + "example": { + "Corporis facilis.": "Dolor est tenetur aut repellendus.", + "Saepe voluptatem sit ipsum rerum itaque.": "Voluptatibus quis aut dolorem aut velit." + }, + "additionalProperties": true + }, + "description": "Array of details unique to each occurrence", + "example": [ + { + "line": "42" + }, + { + "line": "666" + } + ] + }, + "scanId": { + "type": "string", + "description": "The Security Scan execution that detected this Security Issue", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "type": { + "type": "string", + "description": "The type of vulnerability or quality issue for this Issue", + "example": "SAST", + "enum": [ + "SAST", + "DAST", + "SCA", + "IAC", + "SECRET", + "MISCONFIG", + "BUG_SMELLS", + "CODE_SMELLS", + "CODE_COVERAGE", + "EXTERNAL_POLICY" + ] + } + }, + "example": { + "numOccurrences": 10, + "occurrences": [ + { + "line": "42" + }, + { + "line": "666" + } + ], + "scanId": "abcdef1234567890ghijkl", + "type": "SAST" + }, + "required": [ + "occurrences", + "scanId" + ] + }, + "UpdatePullRequestRequestBody": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The ID of the Security Issue to create a Pull Request for", + "example": "1234567890abcdefghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "occurrenceId": { + "type": "integer", + "example": 12345, + "format": "int64", + "minimum": 1 + }, + "pipelineUrl": { + "type": "string", + "example": "https://app.harness.io/path/to/pipeline" + }, + "pullRequestNumber": { + "type": "integer", + "example": 11, + "format": "int64", + "minimum": 1 + }, + "remediationCode": { + "type": "string", + "example": "func example() int {\n return 0\n}" + }, + "remediationCodeEnd": { + "type": "integer", + "example": 16, + "format": "int64" + }, + "remediationCodePath": { + "type": "string", + "example": "path/to/code" + }, + "remediationCodeStart": { + "type": "integer", + "example": 14, + "format": "int64" + }, + "remediationContext": { + "type": "string", + "example": "Context to the function." + }, + "remediationIndent": { + "type": "integer", + "example": 9, + "format": "int64" + }, + "vulnerableCode": { + "type": "string", + "example": "func example() int {\n return 0\n}" + } + }, + "example": { + "id": "1234567890abcdefghijkl", + "occurrenceId": 12345, + "pipelineUrl": "https://app.harness.io/path/to/pipeline", + "pullRequestNumber": 11, + "remediationCode": "func example() int {\n return 0\n}", + "remediationCodeEnd": 16, + "remediationCodePath": "path/to/code", + "remediationCodeStart": 14, + "remediationContext": "Context to the function.", + "remediationIndent": 9, + "vulnerableCode": "func example() int {\n return 0\n}" + }, + "required": [ + "pipelineUrl", + "id", + "occurrenceId", + "vulnerableCode", + "remediationCode", + "remediationCodePath", + "remediationCodeStart", + "remediationCodeEnd", + "remediationContext", + "pullRequestNumber" + ] + }, + "UpdateScanRequestBody": { + "type": "object", + "properties": { + "artifactFingerprint": { + "type": "string", + "description": "The Artifact Fingerprint used use to identify the target", + "example": "abcdef1234567890ghijkl", + "pattern": "^[A-Za-z0-9_]*$", + "maxLength": 64 + }, + "codeCoverage": { + "type": "number", + "description": "The Code Coverage value for the Scan", + "example": 65.5, + "format": "float" + }, + "executionId": { + "type": "string", + "description": "Pipeline Execution ID associated with the Scan", + "example": "abcdef1234567890ghijkl", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "gitMetadata": { + "$ref": "#/components/schemas/GitMetadata" + }, + "orgId": { + "type": "string", + "description": "Harness Organization ID", + "example": "your_harness_org", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "pipelineId": { + "type": "string", + "description": "Harness Organization ID", + "example": "your_harness_pipeline", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "productId": { + "type": "string", + "description": "The Scan Product used for the Scan", + "example": "product111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + }, + "projectId": { + "type": "string", + "description": "Harness Project ID", + "example": "your_harness_project", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "refinementVersion": { + "type": "string", + "description": "The Issue refinement version used for this Scan", + "example": "1.0.5" + }, + "stageId": { + "type": "string", + "description": "Pipeline Stage ID associated with the Scan", + "example": "stage_id", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "status": { + "type": "string", + "description": "Current status of the Scan", + "example": "Succeeded", + "enum": [ + "Pending", + "Running", + "Succeeded", + "Failed" + ] + }, + "stepId": { + "type": "string", + "description": "Pipeline Step ID associated with the Scan", + "example": "step_id", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$", + "maxLength": 128 + }, + "subproduct": { + "type": "string", + "description": "The Scan Subproduct used for the Scan", + "example": "owasp", + "format": "binary" + }, + "targetVariantId": { + "type": "string", + "description": "The Target Variant associated with the Scan", + "example": "variant111111111111111", + "pattern": "^[a-zA-Z0-9_-]{22}$" + } + }, + "example": { + "artifactFingerprint": "abcdef1234567890ghijkl", + "codeCoverage": 65.5, + "executionId": "abcdef1234567890ghijkl", + "gitMetadata": { + "detectedName": "Praesentium dolores tenetur voluptatem quae.", + "detectedVariant": "At accusantium.", + "droneCorrelated": false, + "provider": "Modi occaecati corporis fugit atque distinctio.", + "pullRequestNumber": 11, + "repositoryHttp": "https://github.com/harness/drone-cli.git", + "repositoryPath": [ + "Dolore est.", + "Sit optio.", + "Beatae harum aliquam." + ], + "repositorySsh": "git@github.com:harness/drone-cli.git", + "sourceBranch": "feat/shiny-object", + "targetBranch": "develop", + "workspace": "/harness" + }, + "orgId": "your_harness_org", + "pipelineId": "your_harness_pipeline", + "productId": "product111111111111111", + "projectId": "your_harness_project", + "refinementVersion": "1.0.5", + "stageId": "stage_id", + "status": "Succeeded", + "stepId": "step_id", + "subproduct": "owasp", + "targetVariantId": "variant111111111111111" + }, + "required": [ + "targetVariantId", + "orgId", + "projectId", + "pipelineId", + "executionId", + "stageId", + "stepId", + "productId", + "status", + "refinementVersion", + "created", + "lastModified" + ] + }, + "UpdateTargetRequestBody": { + "type": "object", + "properties": { + "baselineRegEx": { + "type": "string", + "description": "RegEx to match for dynamically selecting the Baseline for this Scan Target. Must be compatible with the RE2 standard.", + "example": "release_.*", + "maxLength": 128 + }, + "baselineVariantId": { + "type": "string", + "description": "ID of baseline Target Variant for Issue comparison", + "example": "abcdef1234567890ghijkl", + "pattern": "^([a-zA-Z0-9_-]{22}|)$" + }, + "directory": { + "type": "string", + "description": "Directory within the Test Target to be scanned", + "example": "app/src", + "maxLength": 1024 + }, + "name": { + "type": "string", + "description": "Name of the Test Target", + "example": "NodeGoat", + "pattern": "^[a-zA-Z0-9_.:/|()-]+$", + "maxLength": 128 + }, + "type": { + "type": "string", + "description": "Test Target's type", + "example": "repository", + "enum": [ + "container", + "repository", + "instance", + "configuration" + ] + }, + "url": { + "type": "string", + "description": "URL used to access the Test Target", + "example": "https://github.com/example/repo", + "maxLength": 1024 + } + }, + "example": { + "baselineRegEx": "release_.*", + "baselineVariantId": "abcdef1234567890ghijkl", + "directory": "app/src", + "name": "NodeGoat", + "type": "repository", + "url": "https://github.com/example/repo" + }, + "required": [ + "created", + "lastModified", + "name", + "type" + ] + }, + "UpdateTargetVariantRequestBody": { + "type": "object", + "properties": { + "hash": { + "type": "string", + "description": "Git Commit or Container Image hash", + "example": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "maxLength": 64 + }, + "parameters": { + "type": "object", + "description": "Parameters for this Variant, as a JSON-encoded string", + "example": { + "branch": "main" + }, + "additionalProperties": { + "type": "string", + "example": "Commodi numquam molestiae." + } + } + }, + "example": { + "hash": "d1998db4b4651a4b9be9ecf320a2dfb8b4710e35", + "parameters": { + "branch": "main" + } + }, + "required": [ + "parameters", + "created", + "lastModified" + ] + }, + "Usage": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "description": "Unit count", + "example": 0, + "format": "int64" + }, + "displayName": { + "type": "string", + "description": "Display name", + "example": "Last 30 Days" + }, + "references": { + "type": "array", + "items": { + "type": "string", + "example": "Unde ut totam." + }, + "description": "References", + "example": [ + "Aliquam voluptas optio est nihil magni.", + "Ipsa est ad possimus deserunt et ut.", + "Ab omnis sed aspernatur.", + "Voluptates minima adipisci aspernatur inventore." + ] + } + }, + "description": "Usage", + "example": { + "count": 0, + "displayName": "Last 30 Days", + "references": [ + "Ea sed nobis.", + "Laboriosam quas vero.", + "Atque aut est et dolores consequatur.", + "Beatae quas inventore." + ] + }, + "required": [ + "count", + "displayName", + "references" + ] + }, + "UsageAllAccountsResult": { + "type": "object", + "properties": { + "timestamp": { + "type": "integer", + "description": "Timestamp", + "example": 1670427991307, + "format": "int64" + }, + "usage": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AccountUsage" + }, + "description": "Usage of all accounts", + "example": [ + { + "accountId": "BdsgiWzwT7CQFeJl9XkQ3A", + "developerCount": 25, + "scanCount": 5000 + }, + { + "accountId": "BdsgiWzwT7CQFeJl9XkQ3A", + "developerCount": 25, + "scanCount": 5000 + } + ] + } + }, + "description": "All Accounts Usage Result", + "example": { + "timestamp": 1670427991307, + "usage": [ + { + "accountId": "BdsgiWzwT7CQFeJl9XkQ3A", + "developerCount": 25, + "scanCount": 5000 + }, + { + "accountId": "BdsgiWzwT7CQFeJl9XkQ3A", + "developerCount": 25, + "scanCount": 5000 + }, + { + "accountId": "BdsgiWzwT7CQFeJl9XkQ3A", + "developerCount": 25, + "scanCount": 5000 + }, + { + "accountId": "BdsgiWzwT7CQFeJl9XkQ3A", + "developerCount": 25, + "scanCount": 5000 + } + ] + }, + "required": [ + "timestamp", + "usage" + ] + }, + "UsageReportUsageResponseBody": { + "$ref": "#/components/schemas/UsageResult" + }, + "UsageResult": { + "type": "object", + "properties": { + "accountIdentifier": { + "type": "string", + "description": "Account identifier", + "example": "BdsgiWzwT7CQFeJl9XkQ3A" + }, + "activeDevelopers": { + "$ref": "#/components/schemas/Usage" + }, + "activeScans": { + "$ref": "#/components/schemas/Usage" + }, + "module": { + "type": "string", + "description": "Harness module", + "example": "STO" + }, + "timestamp": { + "type": "integer", + "description": "Timestamp", + "example": 1670427991307, + "format": "int64" + } + }, + "description": "Usage Result", + "example": { + "accountIdentifier": "BdsgiWzwT7CQFeJl9XkQ3A", + "activeDevelopers": { + "count": 0, + "displayName": "Last 30 Days", + "references": [ + "Possimus rerum nihil modi.", + "Molestiae eos veniam." + ] + }, + "activeScans": { + "count": 0, + "displayName": "Last 30 Days", + "references": [ + "Possimus rerum nihil modi.", + "Molestiae eos veniam." + ] + }, + "module": "STO", + "timestamp": 1670427991307 + }, + "required": [ + "accountIdentifier", + "module", + "timestamp", + "activeDevelopers", + "activeScans" + ] + }, + "UsageUsageAllAccountsResponseBody": { + "$ref": "#/components/schemas/UsageAllAccountsResult" + }, + "ChangeLogScript": { + "additionalProperties": false, + "description": "if schemaType is Script location of the changelog file after using a custom script to download", + "properties": { + "command": { + "description": "command script used to download the changelog file", + "example": "curl -X -o changeLog.yaml https://www.filestore.com/changeLog.yaml", + "minLength": 1, + "type": "string", + "x-stoplight": { + "id": "rdani02niu442" + } + }, + "image": { + "description": "The fully-qualified name (FQN) of the image", + "example": "plugins/image:latest", + "minLength": 1, + "type": "string", + "x-stoplight": { + "id": "ojq7cfe1up903" + } + }, + "location": { + "description": "location of the changelog file", + "example": "folder/changelog.yaml", + "type": "string", + "x-stoplight": { + "id": "8qehjmy01r5iw" + } + }, + "shell": { + "description": "shell type", + "example": "Sh, Bash, <+pipeline.variables.shell>", + "type": "string" + } + }, + "required": [ + "image", + "command", + "shell", + "location" + ], + "title": "changeLog script", + "type": "object", + "x-stoplight": { + "id": "j6ug0asalsuve" + } + }, + "ChangeSetDeploymentStatus": { + "description": "Status of change set deployment", + "enum": [ + "Rolled_Back", + "Successfully_Deployed", + "Not_Deployed", + "Deployment_Failed" + ], + "title": "ChangeSetDeploymentStatus", + "type": "string", + "x-stoplight": { + "id": "f4whxki5b4cp1" + } + }, + "ChangeSetDeploymentYamlOutput": { + "description": "ChangeSet deployment yaml info for an instance", + "properties": { + "yaml": { + "type": "string", + "x-stoplight": { + "id": "7py9a7unyct0j" + } + } + }, + "required": [ + "yaml" + ], + "title": "ChangeSetDeploymentYamlOutput", + "type": "object", + "x-stoplight": { + "id": "jt9d8omo9k85a" + } + }, + "Changelog": { + "additionalProperties": false, + "description": "if schemaType is Repository location of the changelog file containing schema changes in a git repository\n", + "properties": { + "archivePath": { + "description": "path excluding the repo till the archive file", + "minLength": 1, + "type": "string", + "x-stoplight": { + "id": "53mqhpfa5038m" + } + }, + "connector": { + "description": "identifier of the harness git connector", + "example": "harness_git", + "minLength": 1, + "type": "string" + }, + "location": { + "description": "path to the change log file", + "example": "folder/changelog.yaml", + "minLength": 1, + "type": "string" + }, + "repo": { + "description": "repo name of the git based connector when ConnectionType is Account", + "example": "folder/changelog.yaml", + "minLength": 1, + "type": "string", + "x-stoplight": { + "id": "pw3ul0rkm8xt6" + } + } + }, + "required": [ + "connector", + "location" + ], + "type": "object", + "x-stoplight": { + "id": "rytv7gaa34yns" + } + }, + "CommandExecutionStatus": { + "enum": [ + "IN_PROGRESS", + "SUCCESS", + "FAILURE", + "CANCELLED" + ], + "title": "CommandExecutionStatus", + "type": "string", + "x-stoplight": { + "id": "uo7v8vnfcdljb" + } + }, + "CustomOperationInput": { + "description": "Input for getting custom property result", + "properties": { + "dbInstance": { + "type": "string", + "x-stoplight": { + "id": "kqeua3w1kdlfb" + } + }, + "dbSchema": { + "type": "string", + "x-stoplight": { + "id": "lcimin2oa929r" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "na9nsv9snx24b" + } + }, + "pipelineExecutionMetadata": { + "$ref": "#/components/schemas/PipelineExecutionMetadata" + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "m6o69du0xzei0" + } + }, + "properties": { + "items": { + "$ref": "#/components/schemas/CustomOperations" + }, + "minItems": 1, + "type": "array", + "x-stoplight": { + "id": "hfd78pm1cishd" + } + } + }, + "required": [ + "dbSchema", + "dbInstance", + "command", + "pipelineExecutionMetadata", + "org", + "project", + "properties" + ], + "title": "CustomPropertyInput", + "type": "object", + "x-stoplight": { + "id": "goeuvpu54rfol" + } + }, + "CustomOperationOutput": { + "description": "Output for custom property result", + "properties": { + "deployedChangeSets": { + "items": { + "$ref": "#/components/schemas/DeployedChangeSets" + }, + "type": "array", + "x-stoplight": { + "id": "6qgl9qxptpk3t" + } + }, + "earlierRunInStage": { + "type": "boolean", + "x-stoplight": { + "id": "ti08qiylsdd07" + } + }, + "preStartTag": { + "type": "string", + "x-stoplight": { + "id": "c169v8xj064pk" + } + }, + "successfulChangeSetDeploymentInStage": { + "type": "boolean", + "x-stoplight": { + "id": "bzamvvnvbijyo" + } + } + }, + "title": "CustomPropertyOutput", + "type": "object", + "x-stoplight": { + "id": "q374motg2h5ws" + } + }, + "CustomOperations": { + "description": "Enum for custom operations supported", + "enum": [ + "EarlierRunInStage", + "SuccessfulChangeSetDeploymentInStage", + "DeployedChangeSets", + "PreStartTag" + ], + "title": "CustomOperations", + "type": "string", + "x-stoplight": { + "id": "rxtpi7iwl5prt" + } + }, + "DBInstanceFilterIn": { + "description": "DB Instance Filter Request", + "properties": { + "filterType": { + "default": "Equals", + "description": "filter criteria type. Example: Equals, NotEquals", + "enum": [ + "Equals", + "NotEquals" + ], + "type": "string", + "x-stoplight": { + "id": "wh3jb1x9a4mvl" + } + }, + "instanceTags": { + "description": "an array on db instance key value pairs used against the filter", + "items": { + "$ref": "#/components/schemas/DbOpsNGTag" + }, + "type": "array", + "x-stoplight": { + "id": "y26ejs0un3e5p" + } + } + }, + "title": "DBInstanceFilterIn", + "type": "object", + "x-stoplight": { + "id": "pqeg3xqjy34f4" + } + }, + "DBInstanceIn": { + "description": "Database Instance Request", + "properties": { + "branch": { + "description": "branch where the instance is stored\n", + "example": "main", + "type": "string" + }, + "connector": { + "description": "DB Connector", + "example": "postgres-connector", + "minLength": 1, + "type": "string" + }, + "context": { + "description": "Liquibase context", + "type": "string" + }, + "identifier": { + "description": "identifier of the database instance", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "required,max=128" + } + }, + "liquibaseSubstituteProperties": { + "additionalProperties": { + "type": "string", + "x-stoplight": { + "id": "fbu62w3agfucb" + } + }, + "description": "properties to substitute in liquibase changelog", + "type": "object", + "x-stoplight": { + "id": "x5ohdcgm3tsu7" + } + }, + "name": { + "description": "name of the database instance", + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "required,max=128" + } + }, + "tags": { + "additionalProperties": { + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "max=128" + } + }, + "description": "tags attached to the database instance", + "maxProperties": 128, + "type": "object", + "x-go-type-skip-optional-pointer": true + } + }, + "required": [ + "identifier", + "connector" + ], + "title": "Database Instance Request", + "type": "object", + "x-stoplight": { + "id": "1li73zi9bs5oi" + } + }, + "DBInstanceListInput": { + "description": "Input for filtering instances in list API", + "properties": { + "instanceFQNs": { + "description": "list of '-' separated values of schema identifier and instance identifiers", + "items": { + "type": "string", + "x-stoplight": { + "id": "00pgdyu11awof" + } + }, + "type": "array", + "x-stoplight": { + "id": "uvfrk9mlk33vq" + } + }, + "schemaIdentifiers": { + "description": "list of schema identifiers to filter instances", + "items": { + "type": "string", + "x-stoplight": { + "id": "31wkmpwoswrbq" + } + }, + "type": "array", + "x-stoplight": { + "id": "8t3kd4dz91anx" + } + } + }, + "title": "DBInstanceListInput", + "type": "object", + "x-stoplight": { + "id": "fx5xiutdaefop" + } + }, + "DBInstanceOut": { + "description": "Database Instance Response", + "properties": { + "branch": { + "description": "branch where the instance is stored", + "type": "string" + }, + "connector": { + "description": "DB Connector", + "type": "string" + }, + "context": { + "description": "Liquibase context", + "type": "string" + }, + "created": { + "description": "epoch seconds when the database instance was created", + "format": "int64", + "type": "integer" + }, + "identifier": { + "description": "identifier of the database instance", + "type": "string" + }, + "lastAppliedTag": { + "description": "Most recent tag applied to the database", + "type": "string" + }, + "lastDeployedChangeSetTag": { + "description": "Tag on last deployed changeSet", + "type": "string", + "x-stoplight": { + "id": "dlbvh5adtk2de" + } + }, + "liquibaseSubstituteProperties": { + "additionalProperties": { + "type": "string", + "x-stoplight": { + "id": "7mt4ppwgzempm" + } + }, + "description": "properties to substitute in liquibase changelog", + "type": "object", + "x-stoplight": { + "id": "hr7hobzo91wqa" + } + }, + "name": { + "description": "name of the database instance", + "type": "string" + }, + "schemaId": { + "type": "string", + "x-stoplight": { + "id": "2n2zy2gxgmycn" + } + }, + "schemaIdentifier": { + "type": "string", + "x-stoplight": { + "id": "delov0umr51kp" + } + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "tags attached to the database instance", + "type": "object", + "x-go-type-skip-optional-pointer": true + }, + "toOnboard": { + "type": "boolean", + "x-stoplight": { + "id": "y8hnyznezal4i" + } + }, + "updated": { + "description": "epoch seconds when the database instance was last updated", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "identifier", + "name", + "created", + "connector", + "lastDeployedChangeSetTag" + ], + "title": "Database Instance Response", + "type": "object", + "x-stoplight": { + "id": "qcmn5nllz3a1z" + } + }, + "DBSchemaFilterIn": { + "description": "List schema body input", + "properties": { + "identifiers": { + "description": "list of schema identifiers", + "items": { + "type": "string", + "x-stoplight": { + "id": "nfsp4sjueo3t2" + } + }, + "type": "array", + "x-stoplight": { + "id": "va094q90m251a" + } + } + }, + "title": "DBSchemaFilterIn", + "type": "object", + "x-stoplight": { + "id": "sj7v1o7j1aoz2" + } + }, + "DBSchemaIn": { + "description": "Database Schema Request ", + "properties": { + "changeLogScript": { + "$ref": "#/components/schemas/ChangeLogScript" + }, + "changelog": { + "$ref": "#/components/schemas/Changelog" + }, + "identifier": { + "description": "identifier of the database schema", + "pattern": "^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$", + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "required,max=128" + } + }, + "name": { + "description": "name of the database schema", + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "required,max=128" + } + }, + "service": { + "description": "harness service corresponding to database schema\n", + "example": "harness_service", + "minLength": 1, + "type": "string" + }, + "tags": { + "additionalProperties": { + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "max=128" + } + }, + "description": "tags attached to the database schema", + "maxProperties": 128, + "type": "object", + "x-go-type-skip-optional-pointer": true + }, + "type": { + "$ref": "#/components/schemas/DBSchemaType" + } + }, + "required": [ + "identifier", + "name" + ], + "title": "Database Schema Request", + "type": "object", + "x-examples": { + "Example 1": { + "changelog": { + "connector": "harness_git", + "location": "folder/changelog.yaml" + }, + "identifier": "myservice_database", + "name": "my service database", + "service": "harness_service", + "tags": { + "region": "us-east-1" + } + } + }, + "x-stoplight": { + "id": "50h201oitfzde" + } + }, + "DBSchemaOut": { + "description": "Database Schema Response", + "properties": { + "changeLogScript": { + "$ref": "#/components/schemas/ChangeLogScript" + }, + "changelog": { + "$ref": "#/components/schemas/Changelog" + }, + "created": { + "description": "epoch seconds when the database schema was created", + "format": "int64", + "type": "integer" + }, + "identifier": { + "description": "identifier of the database schema", + "type": "string" + }, + "instanceCount": { + "description": "number of database instances corresponding to database schema", + "format": "int64", + "type": "integer" + }, + "name": { + "description": "name of the database schema", + "type": "string" + }, + "schemaSourceType": { + "enum": [ + "Git", + "Artifactory", + "Custom" + ], + "readOnly": true, + "type": "string", + "x-stoplight": { + "id": "802m1r25ghm6l" + } + }, + "service": { + "description": "harness service corresponding to database schema", + "type": "string" + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "tags attached to the database schema", + "type": "object", + "x-go-type-skip-optional-pointer": true + }, + "type": { + "$ref": "#/components/schemas/DBSchemaType" + }, + "updated": { + "description": "epoch seconds when the database schema was last updated", + "format": "int64", + "type": "integer" + } + }, + "required": [ + "identifier", + "name", + "created", + "instanceCount", + "type" + ], + "title": "Database Schema Response", + "type": "object", + "x-stoplight": { + "id": "1y01syuq8w851" + } + }, + "DBSchemaType": { + "description": "db schema type", + "enum": [ + "Repository", + "Script" + ], + "title": "DBSchemaType", + "type": "string", + "x-stoplight": { + "id": "8x2xf0r3syqjg" + } + }, + "DBStepType": { + "enum": [ + "DBSchemaApply" + ], + "title": "DBStepType", + "type": "string", + "x-stoplight": { + "id": "ookg93k67z8hz" + } + }, + "DeployedChangeSets": { + "properties": { + "changeSetFQN": { + "type": "string", + "x-stoplight": { + "id": "f4kzaer1jlada" + } + } + }, + "required": [ + "changeSetFQN" + ], + "title": "DeployedChangeSets", + "type": "object", + "x-stoplight": { + "id": "2xl1xyvguonyv" + } + }, + "DeployedChangesetSqlOutput": { + "description": "Response Body for Fetching SQL statements", + "properties": { + "sql": { + "items": { + "type": "string", + "x-stoplight": { + "id": "8r7yk67k7rcj4" + } + }, + "type": "array", + "x-stoplight": { + "id": "frzyxa67l6mgs" + } + } + }, + "title": "DeployedChangesetSqlOutput", + "type": "object", + "x-stoplight": { + "id": "nazria0es5v7a" + } + }, + "DeployedStateInput": { + "description": "Input for getting execution deployed states", + "properties": { + "pipeline": { + "description": "identifier of the pipeline", + "type": "string", + "x-stoplight": { + "id": "8qs6o89je9q7t" + } + }, + "planExecutionId": { + "type": "string", + "x-stoplight": { + "id": "sg8bjjivonl2n" + } + }, + "stageExecutionId": { + "type": "string", + "x-stoplight": { + "id": "uyjy3losyw3wv" + } + }, + "startTime": { + "default": 0, + "description": "start time of step execution", + "format": "int64", + "type": "integer", + "x-stoplight": { + "id": "ycpp05a282ivu" + } + }, + "stepType": { + "$ref": "#/components/schemas/DBStepType" + } + }, + "required": [ + "planExecutionId", + "stageExecutionId", + "stepType", + "pipeline" + ], + "title": "DeployedStateInput", + "type": "object", + "x-stoplight": { + "id": "vfiwroxnuheqj" + } + }, + "DeployedStateOutput": { + "description": "The status of changeset deployment", + "properties": { + "author": { + "type": "string", + "x-stoplight": { + "id": "929dnscx95ypb" + } + }, + "changeSetId": { + "type": "string", + "x-stoplight": { + "id": "x47961ux78m1z" + } + }, + "comment": { + "description": "comment in changeset definition", + "type": "string", + "x-stoplight": { + "id": "47voyp56s2n3k" + } + }, + "deployedAt": { + "format": "int64", + "type": "integer", + "x-stoplight": { + "id": "5e34nn5l71tit" + } + }, + "deployedInCurrentExecution": { + "description": "if changeset run as part of current step execution", + "type": "boolean", + "x-stoplight": { + "id": "hvppxpin4swwy" + } + }, + "fileName": { + "type": "string", + "x-stoplight": { + "id": "t5k0ya5j14ek5" + } + }, + "label": { + "description": "label in changeset definition", + "type": "string", + "x-stoplight": { + "id": "2w8f4a2s0cbfp" + } + }, + "metadata": { + "$ref": "#/components/schemas/DbOpsExecutionMetadata" + }, + "status": { + "$ref": "#/components/schemas/CommandExecutionStatus" + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "eg643qgsnus6y" + } + } + }, + "required": [ + "status", + "changeSetId", + "author", + "fileName", + "command", + "metadata", + "deployedInCurrentExecution" + ], + "title": "DeployedStateOutput", + "type": "object", + "x-stoplight": { + "id": "qa93jh433xexc" + } + }, + "DbOpsError": { + "description": "Error Response", + "properties": { + "message": { + "description": "error message detail", + "type": "string" + } + }, + "required": [ + "message" + ], + "title": "Error Response", + "type": "object", + "x-stoplight": { + "id": "61cwtgnps2mpt" + } + }, + "ExecutionConfigOperation": { + "additionalProperties": false, + "description": "Operations to set the images tag to particular version", + "properties": { + "field": { + "description": "Image tag field names which can be retrieved from get-default-config", + "example": "gitCloneTag, defaultTag, mongoTag, etc", + "type": "string", + "x-stoplight": { + "id": "c4ao9gsw8bec7" + } + }, + "value": { + "description": "Value of the image tag", + "example": "harness/drone-git:1.5.6-rootless", + "type": "string", + "x-stoplight": { + "id": "qvg6n55o8e6t7" + } + } + }, + "required": [ + "field", + "value" + ], + "title": "ExecutionConfigOperation", + "type": "object", + "x-examples": { + "Example 1": { + "field": "gitCloneTag", + "value": "harness/drone-git:1.5.6-rootless" + } + }, + "x-stoplight": { + "id": "az6vxqusd38xv" + } + }, + "ExecutionConfigTags": { + "properties": { + "artifactoryTag": { + "type": "string", + "x-stoplight": { + "id": "hy9876z3lbcoy" + } + }, + "defaultTag": { + "type": "string", + "x-stoplight": { + "id": "5ij9lx02mahxf" + } + }, + "gitCloneTag": { + "type": "string", + "x-stoplight": { + "id": "j86rn4rdhn52k" + } + }, + "mongoTag": { + "type": "string", + "x-stoplight": { + "id": "crzzbjc0o7s1j" + } + }, + "spannerTag": { + "type": "string", + "x-stoplight": { + "id": "mgm4y32fkx1xt" + } + } + }, + "title": "ExecutionConfigTags", + "type": "object", + "x-examples": { + "Example 1": { + "artifactoryTag": "string", + "defaultTag": "string", + "gitCloneTag": "string", + "mongoTag": "string", + "spannerTag": "string" + } + }, + "x-stoplight": { + "id": "qezvgyoecifmt" + } + }, + "DbOpsExecutionMetadata": { + "description": "Properties related to pipeline execution", + "properties": { + "pipeline": { + "type": "string", + "x-stoplight": { + "id": "5k3ff780hrran" + } + }, + "planExecutionId": { + "type": "string", + "x-stoplight": { + "id": "q74ihd08grz1n" + } + }, + "stageExecutionId": { + "type": "string", + "x-stoplight": { + "id": "m9yhkxclgnwn2" + } + } + }, + "required": [ + "pipeline", + "planExecutionId", + "stageExecutionId" + ], + "title": "ExecutionMetadata", + "type": "object", + "x-stoplight": { + "id": "tkbzev2tuyv9j" + } + }, + "InstanceDetail": { + "description": "Name and identifier of instance", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "31d4qf39t64hx" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "zvigh51qdhg7m" + } + } + }, + "required": [ + "identifier", + "name" + ], + "title": "InstanceDetail", + "type": "object", + "x-stoplight": { + "id": "b0ge7609tlr6s" + } + }, + "InstanceMigrationStateChangeSet": { + "description": "Deployment info of Change Sets across instances", + "properties": { + "author": { + "type": "string" + }, + "changeSet": { + "description": "Identifier of the Change Set", + "type": "string" + }, + "changeSetFQN": { + "type": "string", + "x-stoplight": { + "id": "4z9kxognzb0di" + } + }, + "comment": { + "description": "comment defined in changeSet", + "type": "string", + "x-stoplight": { + "id": "74w4qvz4i3p78" + } + }, + "deployedAt": { + "format": "int64", + "type": "integer", + "x-stoplight": { + "id": "2agm7gbw2pq9k" + } + }, + "fileName": { + "type": "string" + }, + "label": { + "description": "label defined in changeSet", + "type": "string", + "x-stoplight": { + "id": "15ozawdz45jq4" + } + }, + "pipeline": { + "type": "string", + "x-stoplight": { + "id": "ow7y4tlbwll6s" + } + }, + "planExecutionId": { + "type": "string", + "x-stoplight": { + "id": "0r1nyz293ph4h" + } + }, + "stageExecutionId": { + "type": "string", + "x-stoplight": { + "id": "9nqtr1j9uiers" + } + }, + "status": { + "$ref": "#/components/schemas/ChangeSetDeploymentStatus" + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "olwe8u50gytkp" + } + } + }, + "required": [ + "changeSet", + "deployedAt", + "author", + "fileName", + "status", + "pipeline", + "planExecutionId", + "stageExecutionId", + "changeSetFQN" + ], + "title": "InstanceMigrationStateChangeSet", + "type": "object", + "x-stoplight": { + "id": "vfjspbwnr93bq" + } + }, + "InstanceMigrationStateOut": { + "description": "Change Set deployment info for a instance", + "properties": { + "changeSets": { + "items": { + "$ref": "#/components/schemas/InstanceMigrationStateChangeSet" + }, + "type": "array" + }, + "instanceName": { + "description": "Name of the Instance", + "type": "string", + "x-stoplight": { + "id": "9ysq7wf9p1keo" + } + }, + "schemaName": { + "description": "Name of the Schema", + "type": "string", + "x-stoplight": { + "id": "wjdx4nkmfse8q" + } + } + }, + "required": [ + "schemaName", + "instanceName" + ], + "title": "InstanceMigrationStateOut", + "type": "object", + "x-stoplight": { + "id": "o8h98fwt2xvn0" + } + }, + "MigrationStateChangeSet": { + "description": "Deployment info of Change Sets across instances", + "properties": { + "author": { + "type": "string", + "x-stoplight": { + "id": "mob4f4s0lovhs" + } + }, + "changeSet": { + "description": "Identifier of the Change Set", + "type": "string", + "x-stoplight": { + "id": "44ec50vd5krrf" + } + }, + "fileName": { + "type": "string", + "x-stoplight": { + "id": "31qx3sb0zigel" + } + }, + "instances": { + "items": { + "$ref": "#/components/schemas/MigrationStateInstance" + }, + "type": "array", + "x-stoplight": { + "id": "k3xi8j4pkqn48" + } + }, + "synced": { + "default": false, + "description": "If Change Set is successfully deployed to all instances", + "type": "boolean", + "x-stoplight": { + "id": "fwvilhcjrnzuk" + } + }, + "updated": { + "format": "int64", + "type": "integer", + "x-stoplight": { + "id": "3pq420g29khfg" + } + } + }, + "required": [ + "changeSet", + "synced", + "instances", + "updated", + "author", + "fileName" + ], + "title": "MigrationStateChangeSet", + "type": "object", + "x-stoplight": { + "id": "lu7ke7g87jfq3" + } + }, + "MigrationStateIn": { + "description": "Get migration state request input", + "properties": { + "instanceFilter": { + "$ref": "#/components/schemas/MigrationStateInstanceIn" + } + }, + "title": "MigrationStateIn", + "type": "object", + "x-stoplight": { + "id": "h52h1mz8ooyrq" + } + }, + "MigrationStateInstance": { + "description": "Change Set Deployment info of instance", + "properties": { + "error": { + "type": "string", + "x-stoplight": { + "id": "lwtp6ijz0wb0y" + } + }, + "instance": { + "description": "Identfier of the instance", + "type": "string", + "x-stoplight": { + "id": "0v28kt08qg9bv" + } + }, + "pipeline": { + "type": "string", + "x-stoplight": { + "id": "ons3mctnaool3" + } + }, + "planExecutionId": { + "type": "string", + "x-stoplight": { + "id": "lebh5202yl46k" + } + }, + "stageExecutionId": { + "type": "string", + "x-stoplight": { + "id": "c44thbf6c2mw6" + } + }, + "status": { + "$ref": "#/components/schemas/ChangeSetDeploymentStatus" + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "3bkegz2orl3se" + } + }, + "updated": { + "description": "Time of last Change Set Deployment/Rollback attempt ", + "format": "int64", + "type": "integer", + "x-stoplight": { + "id": "67g7rn5rj6k6y" + } + } + }, + "required": [ + "instance", + "status", + "pipeline", + "planExecutionId", + "stageExecutionId" + ], + "title": "MigrationStateInstance", + "type": "object", + "x-stoplight": { + "id": "0tdlaexf41tyg" + } + }, + "MigrationStateInstanceIn": { + "description": "Get migration state request instance input", + "properties": { + "instances": { + "items": { + "type": "string", + "x-stoplight": { + "id": "u06e41dzptghg" + } + }, + "type": "array", + "x-stoplight": { + "id": "xgfy8jpfw9mll" + } + }, + "order": { + "$ref": "#/components/schemas/OrderInstance" + }, + "sort": { + "$ref": "#/components/schemas/SortInstance" + } + }, + "title": "MigrationStateInstanceIn", + "type": "object", + "x-stoplight": { + "id": "7mrokzsmxkufd" + } + }, + "MigrationStateOut": { + "description": "Change Set deployment info for a schema", + "properties": { + "changeSets": { + "items": { + "$ref": "#/components/schemas/MigrationStateChangeSet" + }, + "type": "array", + "x-stoplight": { + "id": "nur8lhmmq4k80" + } + }, + "instances": { + "items": { + "$ref": "#/components/schemas/InstanceDetail" + }, + "type": "array", + "x-stoplight": { + "id": "c4j467g3ps0hq" + } + }, + "schema": { + "description": "Identifier of the Schema", + "type": "string", + "x-stoplight": { + "id": "c2cmn4x96fces" + } + } + }, + "required": [ + "schema" + ], + "title": "MigrationStateOut", + "type": "object", + "x-stoplight": { + "id": "vvx7j4u21jjs5" + } + }, + "DbOpsNGTag": { + "description": "ng tag with key and value ", + "properties": { + "key": { + "type": "string", + "x-stoplight": { + "id": "t2goca5st7qs2" + } + }, + "value": { + "nullable": true, + "type": "string", + "x-stoplight": { + "id": "2mwjdtx5vmiqo" + } + } + }, + "required": [ + "key" + ], + "title": "NGTag", + "type": "object", + "x-stoplight": { + "id": "k8zieexitrnwq" + } + }, + "OrderInstance": { + "default": "ASC", + "description": "order of instance entity", + "enum": [ + "DESC", + "ASC" + ], + "title": "OrderInstance", + "type": "string", + "x-stoplight": { + "id": "l0hdqldkwdms9" + } + }, + "OverviewResponseOutput": { + "properties": { + "dbInstanceIdentifier": { + "type": "string", + "x-stoplight": { + "id": "ro2tbyjw4ret9" + } + }, + "dbInstanceName": { + "type": "string", + "x-stoplight": { + "id": "rfhtocn7bxq4e" + } + }, + "dbSchemaIdentifier": { + "type": "string", + "x-stoplight": { + "id": "armfitbm4jksk" + } + }, + "dbSchemaName": { + "type": "string", + "x-stoplight": { + "id": "0dy50a77d4uwj" + } + }, + "lastDeployed": { + "format": "int64", + "type": "integer", + "x-stoplight": { + "id": "o071rdrf2o8px" + } + } + }, + "required": [ + "dbSchemaIdentifier", + "dbSchemaName", + "dbInstanceIdentifier", + "dbInstanceName", + "lastDeployed" + ], + "title": "Overview Response Output", + "type": "object", + "x-stoplight": { + "id": "rf7l1cm9j1d8b" + } + }, + "ParsedLogOut": { + "properties": { + "command": { + "type": "string" + }, + "id": { + "description": "identifier of the logIngest entity", + "type": "string" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "success", + "command", + "id" + ], + "title": "Ingest Log", + "type": "object", + "x-stoplight": { + "id": "9du4yc03ok29w" + } + }, + "PipelineExecutionMetadata": { + "description": "Pipeline execution details", + "properties": { + "pipeline": { + "type": "string", + "x-stoplight": { + "id": "m0brmgpaary62" + } + }, + "planExecutionId": { + "type": "string", + "x-stoplight": { + "id": "g9v8rf388hk5i" + } + }, + "stageExecutionId": { + "type": "string", + "x-stoplight": { + "id": "apfaqclu5g6cd" + } + } + }, + "required": [ + "pipeline", + "planExecutionId", + "stageExecutionId" + ], + "title": "PipelineExecutionMetadata", + "type": "object", + "x-stoplight": { + "id": "kseu1nigtorbn" + } + }, + "SchemaInstanceMetadataInput": { + "description": "Input for getting schema-instance metadata", + "properties": { + "dbInstance": { + "type": "string", + "x-stoplight": { + "id": "71zvtnqo1i9p7" + } + }, + "dbSchema": { + "type": "string", + "x-stoplight": { + "id": "58poqah29d3tq" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "d6jpmjxz5epw1" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "edvf3j0f87khx" + } + } + }, + "required": [ + "dbSchema", + "dbInstance", + "org", + "project" + ], + "title": "SchemaInstanceMetadataInput", + "type": "object", + "x-stoplight": { + "id": "l3zdbihh7akfq" + } + }, + "SchemaInstanceMetadataOutput": { + "description": "output of schema-instance metadata ", + "properties": { + "dbImages": { + "type": "object", + "x-stoplight": { + "id": "prp7tzdbfqod7" + } + }, + "dbInstance": { + "$ref": "#/components/schemas/DBInstanceOut" + }, + "dbSchema": { + "$ref": "#/components/schemas/DBSchemaOut" + }, + "defaultConfigs": { + "additionalProperties": { + "type": "string", + "x-stoplight": { + "id": "dyfm1p5xnen3h" + } + }, + "type": "object", + "x-stoplight": { + "id": "kcc25crqizy3m" + } + }, + "downloadImages": { + "type": "object", + "x-stoplight": { + "id": "72rtyf1kqsuo2" + } + }, + "image": { + "type": "string", + "x-stoplight": { + "id": "ko9cub3l40axh" + } + } + }, + "required": [ + "dbSchema", + "dbInstance", + "image", + "dbImages", + "downloadImages", + "defaultConfigs" + ], + "title": "SchemaInstanceMetadataOutput", + "type": "object", + "x-stoplight": { + "id": "rnlwlr8fwopid" + } + }, + "SortInstance": { + "default": "identifier", + "description": "sort for instance entity", + "enum": [ + "name", + "updated", + "created", + "identifier" + ], + "title": "SortInstance", + "type": "string", + "x-stoplight": { + "id": "zhl6a0ksg19p2" + } + }, + "Error1": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "message": { + "type": "string" + }, + "temporary": { + "type": "boolean" + }, + "timeout": { + "type": "boolean" + }, + "fault": { + "type": "boolean" + } + } + }, + "UsageResponse1": { + "type": "object", + "properties": { + "records": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "is_predefined": { + "type": "boolean" + }, + "enabled": { + "type": "boolean" + }, + "count_of_ous": { + "type": "integer" + }, + "created_at": { + "type": "integer" + }, + "updated_at": { + "type": "integer" + } + } + } + }, + "count": { + "type": "integer" + }, + "_metadata": { + "type": "object", + "properties": { + "page_size": { + "type": "integer" + }, + "page": { + "type": "integer" + }, + "has_next": { + "type": "boolean" + }, + "total_count": { + "type": "integer" + } + } + } + } + }, + "CategoryResponse": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "is_predefined": { + "type": "boolean" + }, + "enabled": { + "type": "boolean" + } + } + }, + "Artifact1": { + "title": "Artifact", + "x-go-name": "ArtifactListItem", + "x-stoplight": { + "id": "13qkvpww6x2ku" + }, + "type": "object", + "x-examples": {}, + "required": [ + "type", + "name", + "registry_url" + ], + "properties": { + "id": { + "type": "string", + "description": "id of the artifact", + "example": "089855ea-f90e-4bea-a5c9-b5ddf85d3180" + }, + "type": { + "type": "string", + "description": "type of the artifact", + "enum": [ + "image", + "repository" + ], + "default": "image", + "example": "image" + }, + "name": { + "type": "string", + "description": "name of the artifact", + "example": "harness/image" + }, + "tag": { + "type": "string", + "description": "tag of the artifact", + "default": "latest", + "example": "latest" + }, + "registry_url": { + "type": "string", + "description": "url of the artifact", + "example": "https://console.cloud.google.com/gcr/images/imageName" + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "2gcc89tfmislv" + } + }, + "variant": { + "$ref": "#/components/schemas/ArtifactVariant" + }, + "digest": { + "type": "string", + "description": "digest of the artifact", + "example": "sha256:1234567890" + }, + "metadata": { + "type": "object", + "additionalProperties": true, + "x-stoplight": { + "id": "bcmiu856m2sf8" + } + }, + "repository_platform": { + "$ref": "#/components/schemas/RepositoryPlatform" + } + } + }, + "SbomProcess": { + "title": "SbomProcess", + "x-stoplight": { + "id": "y71a32xrlv7u5" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "name of the sbom", + "example": "SBOM_Name" + }, + "data": { + "type": "string", + "format": "byte", + "description": "serialised sbom data" + }, + "format": { + "type": "string", + "description": "format of the SBOM", + "example": "spdx-json" + }, + "url": { + "type": "string", + "description": "URL of the sbom", + "example": "https://console.google.com/storage" + } + }, + "required": [ + "name", + "data", + "format" + ] + }, + "Attestation": { + "title": "Attestation", + "x-stoplight": { + "id": "rzr5mk8z847jg" + }, + "type": "object", + "properties": { + "is_attested": { + "type": "boolean", + "default": false, + "description": "is the sbom attested or not" + }, + "url": { + "type": "string", + "description": "url of the attested file", + "example": "https://storage.googleapis.com/sbom_store_public/kmpySmUISimoRrJL6NL73w/default/SSCS_CI_Plugin_Demo/CKO_SSCA_Pipeline/Build/39/q940CvjoQj-GEInJQfWiwg/sbom" + } + } + }, + "SbomMetadata": { + "title": "SbomMetadata", + "x-stoplight": { + "id": "w1k8hnbuwcyrm" + }, + "type": "object", + "required": [ + "format", + "tool", + "pipeline_execution_id", + "pipeline_identifier", + "stage_identifier", + "step_identifier", + "step_execution_id" + ], + "properties": { + "format": { + "type": "string", + "description": "stage name where sbom is generated", + "minLength": 3, + "example": "spdx-json" + }, + "tool": { + "type": "string", + "description": "name of the package", + "minLength": 3, + "example": "synk" + }, + "pipeline_execution_id": { + "type": "string", + "description": "name of the package", + "example": "z940CvjoQj-GEInJQfWiwq", + "minLength": 3 + }, + "sequence_id": { + "type": "string", + "description": "name of the package", + "example": "1" + }, + "pipeline_identifier": { + "type": "string", + "description": "name of the package", + "example": "SSCA_Pipeline", + "minLength": 3 + }, + "stage_identifier": { + "type": "string", + "description": "name of the Stage", + "example": "Build" + }, + "step_identifier": { + "type": "string", + "description": "id of the step", + "example": "Orchestrate" + }, + "build_url": { + "type": "string", + "description": "BuildURL", + "example": "https://app.harness.io/ng/#/account/acc/ci/orgs/org/projects/dummyProject/pipelines/CKO_SSCA_Pipeline/executions/q940CvjoQj-GEInJQfWiwg/pipeline?storeType=INLINE" + }, + "step_execution_id": { + "type": "string", + "description": "StepExecutionId", + "example": "betatest1" + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "pa73rnrz0hf29" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "l9s2mk3wtwlgp" + } + }, + "stage_execution_id": { + "type": "string", + "x-stoplight": { + "id": "9t8qu0gsrou0z" + } + } + } + }, + "SbomProcessRequestBody": { + "title": "SbomProcessRequestBody", + "x-stoplight": { + "id": "5ang2l7dsv4pw" + }, + "type": "object", + "properties": { + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "sbom_process": { + "$ref": "#/components/schemas/SbomProcess" + }, + "attestation": { + "$ref": "#/components/schemas/Attestation" + }, + "sbom_metadata": { + "$ref": "#/components/schemas/SbomMetadata" + } + } + }, + "SbomProcessResponseBody": { + "title": "SbomProcessResponseBody", + "x-stoplight": { + "id": "x7513y8mz7mbg" + }, + "type": "object", + "properties": { + "artifact_id": { + "type": "string", + "description": "Id of created artifact" + } + } + }, + "EnforceSbomResponseBody": { + "title": "SbomEnforceResponseBody", + "x-stoplight": { + "id": "g9c6fh5bqtzm3" + }, + "type": "object", + "properties": { + "enforcement_id": { + "type": "string", + "description": "ID of the enforcement of the SBOM" + }, + "status": { + "type": "string", + "description": "Status of the enforcement" + }, + "response": { + "$ref": "#/components/schemas/PluginResponseBody" + } + } + }, + "EnforceSbomRequestBody": { + "title": "SbomEnforceRequestBody", + "x-stoplight": { + "id": "5i41oo0fat2yv" + }, + "type": "object", + "required": [ + "enforcement_id", + "artifact" + ], + "properties": { + "enforcement_id": { + "type": "string" + }, + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "policy_file_id": { + "type": "string" + }, + "pipeline_execution_id": { + "type": "string" + }, + "policy_set_ref": { + "type": "array", + "items": { + "type": "string" + } + }, + "pipeline_identifier": { + "type": "string", + "x-stoplight": { + "id": "sn5o6u6izrh91" + } + }, + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "tb8p8f7bjh1c8" + } + }, + "stage_execution_id": { + "type": "string", + "x-stoplight": { + "id": "q0pcdi1vdvtzq" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "c3brw8b6zdxmh" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "21z3mfudw29ts" + } + }, + "step_execution_id": { + "type": "string", + "x-stoplight": { + "id": "vis8uunj26wqp" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "i17r6lscdy5q7" + } + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "nnft7ewvsw4k2" + }, + "description": "Stage type of the step" + } + } + }, + "EnforceSbomRequestBodyV2": { + "title": "SbomEnforceRequestBody", + "x-stoplight": { + "id": "5i41oo0fat2yv" + }, + "type": "object", + "required": [ + "enforcement_id", + "artifact" + ], + "properties": { + "enforcement_id": { + "type": "string" + }, + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "policy_set_ref": { + "type": "array", + "items": { + "type": "string" + } + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + } + } + }, + "ArtifactSbomResponseBody": { + "title": "ArtifactSbomResponseBody", + "x-stoplight": { + "id": "vqsbzq42jdfl8" + }, + "type": "object", + "properties": { + "sbom": { + "type": "string" + } + }, + "description": "" + }, + "OrchestrationSummaryResponse": { + "title": "OrchestrationSummary", + "x-stoplight": { + "id": "8uhz8zuinfdbw" + }, + "type": "object", + "properties": { + "step_execution_id": { + "type": "string", + "x-stoplight": { + "id": "b8by5512yxwds" + } + }, + "is_attested": { + "x-stoplight": { + "id": "c1kg3hhd80s69" + }, + "type": "boolean" + }, + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "sbom": { + "$ref": "#/components/schemas/SbomDetails" + }, + "drift_summary": { + "$ref": "#/components/schemas/OrchestrationDriftSummary" + }, + "scorecard_summary": { + "$ref": "#/components/schemas/OrchestrationScorecardSummary" + } + } + }, + "EnforcementSummaryResponse": { + "title": "EnforcementSummaryResponse", + "x-stoplight": { + "id": "bw1b59mkwp23i" + }, + "type": "object", + "properties": { + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "enforcement_id": { + "type": "string", + "x-stoplight": { + "id": "z3gbbwmjfj9pc" + } + }, + "allow_list_violation_count": { + "type": "integer", + "x-stoplight": { + "id": "pyx4490itpx6w" + } + }, + "deny_list_violation_count": { + "type": "integer", + "x-stoplight": { + "id": "lo79k2drvspk5" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "pqwzlr10w01hm" + } + }, + "exempted_component_count": { + "type": "integer" + } + }, + "description": "Enforcement Summary" + }, + "SbomDetails": { + "title": "SbomDetails", + "x-stoplight": { + "id": "y2liozyptegss" + }, + "type": "object", + "description": "Sbom Details", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "hshq9gvgpta9p" + } + } + }, + "required": [ + "name" + ] + }, + "PolicyViolation": { + "type": "object", + "x-examples": {}, + "properties": { + "enforcement_id": { + "type": "string", + "x-stoplight": { + "id": "u6sbgtmy5wra6" + } + }, + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "2604cwa0jjdw5" + } + }, + "tag": { + "type": "string" + }, + "image_name": { + "type": "string", + "x-stoplight": { + "id": "fs3nst342golm" + } + }, + "account": { + "type": "string", + "x-stoplight": { + "id": "f2oj7i5p9qq4h" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "yl6jynnzkcibo" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "tbae7bb9yf51j" + } + }, + "orchestration_id": { + "type": "string", + "x-stoplight": { + "id": "zz2jdp70vk2gl" + } + }, + "violation_type": { + "type": "string", + "x-stoplight": { + "id": "vtgnfrx87ka2x" + } + }, + "violation_details": { + "type": "string", + "x-stoplight": { + "id": "78wywme9bsvbu" + } + }, + "name": { + "type": "string" + }, + "version": { + "type": "string" + }, + "supplier": { + "type": "string" + }, + "supplier_type": { + "type": "string", + "x-stoplight": { + "id": "mnk7v7d72i7pp" + } + }, + "package_manager": { + "type": "string", + "x-stoplight": { + "id": "7w5ud9unw6war" + } + }, + "license": { + "type": "array", + "items": { + "type": "string" + } + }, + "purl": { + "type": "string" + }, + "is_exempted": { + "type": "boolean" + }, + "exemption_id": { + "type": "string" + }, + "filter_tags": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LayerType" + } + }, + "language": { + "type": "string" + } + }, + "title": "", + "x-stoplight": { + "id": "kjtyfl18ttgbk" + } + }, + "NormalizedSbomComponentDTO": { + "title": "NormalizedSbomComponentDTO", + "x-stoplight": { + "id": "6glvdvqsaxb52" + }, + "type": "object", + "description": "Normalized SBOM Component Details", + "properties": { + "orchestration_id": { + "type": "string" + }, + "sbom_version": { + "type": "string" + }, + "artifact_url": { + "type": "string" + }, + "artifact_id": { + "type": "string" + }, + "artifact_name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "created": { + "type": "number" + }, + "tool_version": { + "type": "string" + }, + "tool_name": { + "type": "string" + }, + "tool_vendor": { + "type": "string" + }, + "package_id": { + "type": "string" + }, + "package_name": { + "type": "string" + }, + "package_description": { + "type": "string" + }, + "package_license": { + "type": "array", + "items": { + "type": "string" + } + }, + "package_source_info": { + "type": "string" + }, + "package_version": { + "type": "string" + }, + "package_supplier_name": { + "type": "string" + }, + "package_originator_name": { + "type": "string" + }, + "originator_type": { + "type": "string" + }, + "package_type": { + "type": "string" + }, + "package_cpe": { + "type": "string" + }, + "package_properties": { + "type": "string" + }, + "package_manager": { + "type": "string" + }, + "package_namespace": { + "type": "string" + }, + "major_version": { + "type": "number" + }, + "minor_version": { + "type": "number" + }, + "patch_version": { + "type": "number" + }, + "pipeline_identifier": { + "type": "string" + }, + "project_identifier": { + "type": "string" + }, + "org_identifier": { + "type": "string" + }, + "sequence_id": { + "type": "string" + }, + "account_id": { + "type": "string" + }, + "purl": { + "type": "string" + }, + "language": { + "type": "string" + }, + "filter_tags": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LayerType" + } + } + } + }, + "SbomComponentRequestDTO": { + "title": "NormalizedSbomComponentDTO", + "x-stoplight": { + "id": "w7dtx3sur4642" + }, + "type": "object", + "description": "Normalized SBOM Component Details", + "properties": { + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "package_id": { + "type": "string" + }, + "package_name": { + "type": "string" + }, + "package_description": { + "type": "string" + }, + "package_license": { + "type": "array", + "items": { + "type": "string" + } + }, + "package_source_info": { + "type": "string" + }, + "package_version": { + "type": "string" + }, + "package_originator_name": { + "type": "string" + }, + "originator_type": { + "type": "string" + }, + "package_type": { + "type": "string" + }, + "package_cpe": { + "type": "string" + }, + "package_properties": { + "type": "string" + }, + "package_manager": { + "type": "string" + }, + "package_namespace": { + "type": "string" + }, + "major_version": { + "type": "number" + }, + "minor_version": { + "type": "number" + }, + "patch_version": { + "type": "number" + }, + "purl": { + "type": "string" + }, + "language": { + "type": "string" + }, + "filter_tags": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LayerType" + } + } + } + }, + "EnforcementResultDTO": { + "title": "EnforcementResultDTO", + "x-stoplight": { + "id": "9cqjc50lih6xp" + }, + "type": "object", + "description": "Enforcement Result Details DTO", + "x-examples": {}, + "properties": { + "enforcement_id": { + "type": "string" + }, + "artifact_id": { + "type": "string" + }, + "tag": { + "type": "string" + }, + "image_name": { + "type": "string" + }, + "account_id": { + "type": "string" + }, + "org_identifier": { + "type": "string" + }, + "project_identifier": { + "type": "string" + }, + "orchestration_id": { + "type": "string" + }, + "violation_type": { + "type": "string" + }, + "violation_details": { + "type": "string" + }, + "name": { + "type": "string" + }, + "version": { + "type": "string" + }, + "supplier": { + "type": "string" + }, + "supplier_type": { + "type": "string" + }, + "package_manager": { + "type": "string" + }, + "license": { + "type": "array", + "items": { + "type": "string" + } + }, + "purl": { + "type": "string" + }, + "is_exempted": { + "type": "boolean" + }, + "exemption_id": { + "type": "string" + } + }, + "required": [ + "enforcement_id", + "artifact_id", + "tag", + "image_name", + "account_id", + "org_identifier", + "project_identifier", + "orchestration_id", + "violation_type", + "violation_details" + ] + }, + "EnvironmentTypeFilter": { + "title": "EnvironmentTypeFilter", + "x-stoplight": { + "id": "vkao4sb4qhrp3" + }, + "enum": [ + "Prod", + "PreProd", + "None", + "All" + ] + }, + "EnvironmentType2": { + "title": "EnvironmentType", + "x-stoplight": { + "id": "7v5fj6xgubcbs" + }, + "enum": [ + "Prod", + "PreProd" + ] + }, + "EnforcementSummaryDTO": { + "title": "EnforcementSummaryDTO", + "x-stoplight": { + "id": "64g1wsvw49kdm" + }, + "type": "object", + "description": "Enforcement summary detail DTO", + "x-examples": {}, + "properties": { + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "enforcement_id": { + "type": "string" + }, + "orchestration_id": { + "type": "string" + }, + "deny_list_violation_count": { + "type": "number" + }, + "allow_list_violation_count": { + "type": "number" + }, + "status": { + "type": "string" + }, + "account_id": { + "type": "string" + }, + "org_identifier": { + "type": "string" + }, + "project_identifier": { + "type": "string" + }, + "pipeline_execution_id": { + "type": "string" + }, + "created": { + "type": "number" + }, + "exempted_component_count": { + "type": "number" + } + }, + "required": [ + "artifact", + "enforcement_id", + "orchestration_id", + "deny_list_violation_count", + "allow_list_violation_count", + "status", + "account_id", + "org_identifier", + "project_identifier", + "pipeline_execution_id", + "created" + ] + }, + "NormalisedSbomComponentRequestBody": { + "$ref": "#/components/schemas/Artifact1", + "x-stoplight": { + "id": "t54mxrvnecev5" + } + }, + "ArtifactListingRequestBody": { + "type": "object", + "x-examples": {}, + "properties": { + "search_term": { + "type": "string" + }, + "component_filter": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComponentFilter" + } + }, + "license_filter": { + "$ref": "#/components/schemas/LicenseFilter" + }, + "policy_violation": { + "type": "string", + "enum": [ + "ALLOW", + "DENY", + "ANY", + "NONE" + ] + }, + "environment_type": { + "type": "string", + "enum": [ + "Prod", + "NonProd", + "None", + "All" + ] + } + }, + "x-stoplight": { + "id": "9ddio8k8n5fia" + } + }, + "ArtifactListingResponse": { + "title": "ArtifactListingResponse", + "x-stoplight": { + "id": "ffkyhbx1mpa93" + }, + "type": "object", + "x-examples": {}, + "required": [ + "id", + "name", + "tag" + ], + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "tag": { + "type": "string" + }, + "url": { + "type": "string" + }, + "components_count": { + "type": "integer" + }, + "allow_list_violation_count": { + "type": "string" + }, + "deny_list_violation_count": { + "type": "string" + }, + "activity": { + "type": "string", + "enum": [ + "DEPLOYED", + "GENERATED" + ] + }, + "updated": { + "type": "string" + }, + "prod_env_count": { + "type": "integer" + }, + "non_prod_env_count": { + "type": "integer" + }, + "enforcement_id": { + "type": "string" + }, + "orchestration_id": { + "type": "string" + }, + "build_pipeline_id": { + "type": "string" + }, + "build_pipeline_execution_id": { + "type": "string" + }, + "baseline": { + "type": "boolean", + "x-stoplight": { + "id": "bhdfxt2zo1ccg" + } + }, + "metadata": { + "type": "object", + "additionalProperties": true + }, + "scorecard": { + "type": "object", + "x-stoplight": { + "id": "7cnufejjvh2xb" + }, + "properties": { + "max_score": { + "type": "string", + "x-stoplight": { + "id": "8rfm461fllni5" + } + }, + "avg_score": { + "type": "string", + "x-stoplight": { + "id": "rloj7ie5t1u6x" + } + } + } + } + } + }, + "ArtifactDetailResponse": { + "title": "ArtifactDetailResponse", + "type": "object", + "x-examples": {}, + "x-stoplight": { + "id": "px56xa89l9myy" + }, + "properties": { + "id": { + "type": "string", + "description": "Artifact Identifier" + }, + "name": { + "type": "string", + "description": "Name of the artifact" + }, + "url": { + "type": "string", + "description": "Registry url of the artifact" + }, + "tag": { + "type": "string", + "description": "Version of the artifact" + }, + "components_count": { + "type": "integer", + "description": "Count of the normalized components within the artifact" + }, + "updated": { + "type": "string", + "description": "Last Updated time of artifact" + }, + "prod_env_count": { + "type": "integer", + "description": "Count of production env in which artifact is deployed" + }, + "non_prod_env_count": { + "type": "integer", + "description": "Count of pre-production env in which artifact is deploye" + }, + "build_pipeline_id": { + "type": "string", + "description": "Pipeline id of build pipeline used to orchestrate the artifact" + }, + "build_pipeline_name": { + "type": "string", + "x-stoplight": { + "id": "rswo3za1467x2" + }, + "description": "Pipeline name of build pipeline used to orchestrate the artifact" + }, + "build_pipeline_execution_id": { + "type": "string", + "description": "Pipeline execution id of build pipeline used to orchestrate the artifact" + }, + "orchestration_id": { + "type": "string", + "description": "Orchestration step identifier" + }, + "scorecard": { + "type": "object", + "x-stoplight": { + "id": "m4r1asknhuioj" + }, + "properties": { + "max_score": { + "type": "string", + "x-stoplight": { + "id": "a3gfc89dp2mv9" + } + }, + "avg_score": { + "type": "string", + "x-stoplight": { + "id": "ukdzx8upko3wt" + } + } + } + }, + "metadata": { + "type": "object", + "additionalProperties": true + }, + "sto_issue_count": { + "$ref": "#/components/schemas/StoIssueCount" + } + }, + "required": [ + "id", + "name", + "tag" + ] + }, + "ArtifactComponentViewRequestBody": { + "title": "ArtifactComponentViewRequestBody", + "x-stoplight": { + "id": "x5f2v20n46hkz" + }, + "type": "object", + "properties": { + "component_filter": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComponentFilter" + } + }, + "license_filter": { + "$ref": "#/components/schemas/LicenseFilter" + }, + "package_supplier": { + "type": "string" + }, + "package_manager": { + "type": "string" + }, + "image_layer": { + "$ref": "#/components/schemas/LayerType" + } + } + }, + "DeleteRepositoriesRequestBody": { + "title": "DeleteRepositoriesRequestBody", + "x-stoplight": { + "id": "k5i9vmudevv6v" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/Repositories" + } + }, + "Repositories": { + "title": "Repositories", + "x-stoplight": { + "id": "g7mmcc1qasngi" + }, + "type": "object", + "required": [ + "repo_url", + "org_identifier", + "project_identifier" + ], + "properties": { + "repo_url": { + "type": "string", + "x-stoplight": { + "id": "veuh1bjeksk3g" + }, + "description": "URL of the repo to be deleted" + }, + "repo_branch": { + "type": "string", + "x-stoplight": { + "id": "udulq793jiljv" + } + }, + "org_identifier": { + "type": "string", + "x-stoplight": { + "id": "cefofd4glde0e" + }, + "description": "Org of the repository to be deleted." + }, + "project_identifier": { + "type": "string", + "x-stoplight": { + "id": "7muf87n2tf8pd" + }, + "description": "Project of the repository to be deleted." + } + } + }, + "ArtifactDeploymentViewRequestBody": { + "title": "ArtifactDeploymentViewRequestBody", + "x-stoplight": { + "id": "5qyutfccgf2o9" + }, + "type": "object", + "properties": { + "environment": { + "type": "string" + }, + "environment_type": { + "type": "string", + "enum": [ + "Prod", + "NonProd" + ] + }, + "policy_violation": { + "type": "string", + "enum": [ + "ALLOW", + "DENY", + "ANY", + "NONE" + ] + } + } + }, + "ArtifactComponentViewResponse": { + "title": "ArtifactComponentViewResponse", + "x-stoplight": { + "id": "ifxc5m0lb9u32" + }, + "type": "object", + "properties": { + "package_name": { + "type": "string" + }, + "package_version": { + "type": "string" + }, + "package_supplier": { + "type": "string" + }, + "package_manager": { + "type": "string" + }, + "purl": { + "type": "string" + }, + "package_license": { + "type": "string" + }, + "filter_tags": { + "type": "array", + "x-stoplight": { + "id": "disrwjq6ou28k" + }, + "items": { + "$ref": "#/components/schemas/LayerType" + } + } + } + }, + "ArtifactDeploymentViewResponse": { + "title": "ArtifactDeploymentViewResponse", + "x-stoplight": { + "id": "jugz9izzxuuvo" + }, + "type": "object", + "properties": { + "env_id": { + "type": "string", + "description": "Harness environment id" + }, + "env_name": { + "type": "string", + "description": "Environment name" + }, + "env_type": { + "type": "string", + "enum": [ + "PROD", + "NONPROD" + ], + "description": "Environment type" + }, + "pipeline_id": { + "type": "string", + "description": "Pipeline identifier of deployment pipeline" + }, + "pipeline_name": { + "type": "string", + "description": "Pipeline name of deployment pipeline" + }, + "pipeline_execution_id": { + "type": "string", + "description": "Pipeline execution identifier of deployment pipeline" + }, + "pipeline_sequence_id": { + "type": "string", + "description": "Pipeline Sequence id of deployment pipeline" + }, + "allow_list_violation_count": { + "type": "string", + "description": "Allow list type policy violation count" + }, + "deny_list_violation_count": { + "type": "string", + "description": "Deny list type policy violation count" + }, + "triggered_by": { + "type": "string", + "description": "Name of who trigger the deployment pipeline" + }, + "triggered_by_id": { + "type": "string", + "description": "Id of who trigger the deployment pipeline" + }, + "triggered_at": { + "type": "string", + "description": "Time of trigger of the deployment pipeline" + }, + "triggered_type": { + "type": "string", + "description": "Trigger type of the deployment pipeline" + }, + "enforcement_id": { + "type": "string", + "description": "Enforcement step identifier" + }, + "slsa_verification": { + "$ref": "#/components/schemas/Slsa" + } + }, + "x-examples": {} + }, + "Operator": { + "title": "Operator", + "x-stoplight": { + "id": "nxhoa45ajna2q" + }, + "enum": [ + "Equals", + "StartsWith", + "Contains", + "NotEquals", + "GreaterThan", + "GreaterThanEquals", + "LessThan", + "LessThanEquals" + ] + }, + "ComponentFilter": { + "title": "ComponentFilter", + "type": "object", + "properties": { + "field_name": { + "type": "string", + "enum": [ + "ComponentVersion", + "ComponentName" + ] + }, + "value": { + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + } + }, + "required": [ + "field_name", + "value", + "operator" + ], + "x-stoplight": { + "id": "p0u8koyls0i0c" + } + }, + "LicenseFilter": { + "title": "LicenseFilter", + "type": "object", + "properties": { + "value": { + "type": "string" + }, + "operator": { + "$ref": "#/components/schemas/Operator" + } + }, + "required": [ + "value", + "operator" + ], + "x-stoplight": { + "id": "ae7ieb3d1qze1" + } + }, + "Slsa": { + "title": "Slsa", + "x-stoplight": { + "id": "ay4nzhxmkraca" + }, + "type": "object", + "description": "Slsa Verification Data", + "properties": { + "provenance": { + "type": "string", + "x-stoplight": { + "id": "yyy7o9vx6ht3f" + }, + "description": "Slsa provenance data" + }, + "policy_outcome_status": { + "type": "string", + "x-stoplight": { + "id": "rany3wjtgl60e" + }, + "description": "Slsa policy outcome" + } + } + }, + "CategoryScorecard": { + "title": "CategoryScorecard", + "x-stoplight": { + "id": "6v2m98svtxdra" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "ra6pk1e1heg1n" + } + }, + "is_enabled": { + "type": "string", + "x-stoplight": { + "id": "3h269prrbiyft" + } + }, + "weightage": { + "type": "string", + "x-stoplight": { + "id": "mfraxqfwg9tcj" + } + }, + "max_score": { + "type": "string", + "x-stoplight": { + "id": "gk3c15sbckyt9" + } + }, + "score": { + "type": "string", + "x-stoplight": { + "id": "6k44spofqj7d1" + } + }, + "checks": { + "type": "array", + "x-stoplight": { + "id": "co4k2r34qb28u" + }, + "items": { + "$ref": "#/components/schemas/CategoryScorecardCheck" + } + } + } + }, + "ScorecardInfo": { + "title": "ScorecardInfo", + "x-stoplight": { + "id": "si4vj4j2zfbkr" + }, + "type": "object", + "properties": { + "tool_name": { + "type": "string", + "x-stoplight": { + "id": "m2ion268kdz4s" + } + }, + "tool_version": { + "type": "string", + "x-stoplight": { + "id": "jeauam61iap1k" + } + } + } + }, + "SbomDetailsForScorecard": { + "title": "SbomDetailsForScorecard", + "x-stoplight": { + "id": "c53wqz9j9llof" + }, + "type": "object", + "properties": { + "tool_name": { + "type": "string", + "x-stoplight": { + "id": "xtpb8ku3wkk5w" + } + }, + "tool_version": { + "type": "string", + "x-stoplight": { + "id": "icym30io16ncy" + } + }, + "sbom_file_name": { + "type": "string", + "x-stoplight": { + "id": "bsdkyhabiqeva" + } + }, + "sbom_format": { + "type": "string", + "x-stoplight": { + "id": "q1trja4shztqx" + } + }, + "sbom_version": { + "type": "string", + "x-stoplight": { + "id": "mhy9fbf7pwc9u" + } + }, + "file_format": { + "type": "string", + "x-stoplight": { + "id": "pm7s0v55ci4hj" + } + } + } + }, + "SbomScorecardResponseBody": { + "type": "object", + "x-examples": {}, + "title": "SbomScoreCardResponseBody", + "properties": { + "orchestration_id": { + "type": "string", + "x-stoplight": { + "id": "y861542jly6we" + } + }, + "account_id": { + "type": "string", + "x-stoplight": { + "id": "bzajsphwi4ssi" + } + }, + "org_id": { + "type": "string", + "x-stoplight": { + "id": "pco0ysoq49zp9" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "yjfm2swj8rjjs" + } + }, + "avg_score": { + "type": "string", + "x-stoplight": { + "id": "hj4v4pu3ktetr" + } + }, + "max_score": { + "type": "string", + "x-stoplight": { + "id": "nsf1v53wdt2o0" + } + }, + "creation_on": { + "type": "string", + "x-stoplight": { + "id": "zrt6ikywuxxjc" + } + }, + "sbom_details": { + "$ref": "#/components/schemas/SbomDetailsForScorecard" + }, + "score_card_info": { + "$ref": "#/components/schemas/ScorecardInfo" + }, + "category": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CategoryScorecard" + } + } + }, + "x-stoplight": { + "id": "ffcmct55bddmm" + } + }, + "SbomScorecardRequestBody": { + "title": "SbomScorecardRequestBody", + "x-stoplight": { + "id": "1hsts8ibsfe22" + }, + "type": "object", + "properties": { + "orchestration_id": { + "type": "string", + "x-stoplight": { + "id": "473tkkkjlmh9i" + } + }, + "account_id": { + "type": "string", + "x-stoplight": { + "id": "kiwjgwivgqyyg" + } + }, + "org_id": { + "type": "string", + "x-stoplight": { + "id": "9h3v65z90htgv" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "j9z1jh3en75ag" + } + }, + "avg_score": { + "type": "string", + "x-stoplight": { + "id": "inakcdrn67uz8" + } + }, + "max_score": { + "type": "string", + "x-stoplight": { + "id": "smpn3sv0sztni" + } + }, + "creation_on": { + "type": "string", + "x-stoplight": { + "id": "emolyvjgp9xxe" + } + }, + "sbom_details": { + "$ref": "#/components/schemas/SbomDetailsForScorecard" + }, + "score_card_info": { + "$ref": "#/components/schemas/ScorecardInfo" + }, + "category": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CategoryScorecard" + } + } + } + }, + "ConfigInfo": { + "title": "ConfigInfo", + "x-stoplight": { + "id": "580wu9wrkgt0r" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "ygal56c1ulaoo" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "3kxzpnr61yx3x" + } + }, + "config": { + "type": "array", + "x-stoplight": { + "id": "hfoistv7iy703" + }, + "items": { + "x-stoplight": { + "id": "4wwrulu2igigz" + }, + "type": "object", + "properties": { + "key": { + "type": "string", + "x-stoplight": { + "id": "1938pk1gbxhge" + } + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "2pmir0wexum5b" + } + } + } + } + } + } + }, + "ConfigRequestBody": { + "title": "Config", + "x-stoplight": { + "id": "9jg78indgdmi8" + }, + "type": "object", + "properties": { + "account_id": { + "type": "string", + "x-stoplight": { + "id": "8g8nrhuvd0sit" + } + }, + "org_id": { + "type": "string", + "x-stoplight": { + "id": "3g6unusnh57bp" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "i75mm1aqjwpda" + } + }, + "user_id": { + "type": "string", + "x-stoplight": { + "id": "p0oajkc2imyb3" + } + }, + "config_id": { + "type": "string", + "x-stoplight": { + "id": "fsbft09616skw" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "w8htw3ebyxow7" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "9wrk1dsfu645g" + } + }, + "creation_on": { + "type": "string", + "x-stoplight": { + "id": "zvxx5fp6ltmfb" + } + }, + "config_info": { + "x-stoplight": { + "id": "h6e2jds5jahst" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/ConfigInfo" + } + } + } + }, + "ExecutionLimitRequestBody": { + "title": "ExeuctionLimitConfig", + "type": "object", + "properties": { + "config_id": { + "type": "string" + }, + "configs": { + "x-stoplight": { + "id": "h6e2jds5jahst" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/ConfigInfo" + } + } + } + }, + "PipelineInfraConfigRequestBody": { + "title": "PipelineInfraConfig", + "x-stoplight": { + "id": "177a15306985b" + }, + "type": "object", + "required": [ + "spec" + ], + "properties": { + "org": { + "type": "string", + "description": "If the org id is not provided, infra is set at account-level." + }, + "project": { + "type": "string", + "description": "If the project id is not provided, infra is set at org-level." + }, + "spec": { + "type": "string", + "description": "Define the configuration of your infrastructure in JSON format. We now support both Kubernetes and Virtual Machines.", + "x-stoplight": { + "id": "wj3kwuape6zan" + } + }, + "allow_override": { + "type": "boolean", + "description": "When set to true, this setting enables configurations to be overridden at the project or organization level, regardless of whether they were previously defined at the account level.", + "x-stoplight": { + "id": "47ni9vvackpg0" + } + } + }, + "description": "Infra Config Details of Pipeline" + }, + "PipelineStoreConfigRequestBody": { + "title": "PipelineStoreConfig", + "type": "object", + "required": [ + "scan_type", + "repo", + "base_branch" + ], + "properties": { + "scan_type": { + "$ref": "#/components/schemas/ComplianceScanType" + }, + "connector_id": { + "type": "string" + }, + "repo": { + "type": "string" + }, + "base_branch": { + "type": "string" + }, + "yaml_path": { + "type": "string" + } + }, + "description": "Remote Config Details of Pipeline" + }, + "ConfigResponseBody": { + "title": "ConfigResponse", + "x-stoplight": { + "id": "5gjep7i88xomz" + }, + "type": "object", + "properties": { + "account_id": { + "type": "string", + "x-stoplight": { + "id": "1hpj7auq2gdi7" + } + }, + "org_id": { + "type": "string", + "x-stoplight": { + "id": "x6u5udext36h7" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "rcekofy1jhk9b" + } + }, + "user_id": { + "type": "string", + "x-stoplight": { + "id": "fjnu07i1cknvp" + } + }, + "config_id": { + "type": "string", + "x-stoplight": { + "id": "0k3r8wahjh3ig" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "m501ugdvusexa" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "blybei9t1z6n7" + } + }, + "creation_on": { + "type": "string", + "x-stoplight": { + "id": "9kfsoepf16mvj" + } + }, + "config_info": { + "type": "array", + "x-stoplight": { + "id": "ku34eojwp5k91" + }, + "items": { + "$ref": "#/components/schemas/ConfigInfo" + } + } + } + }, + "ExecutionLimitResponseBody": { + "title": "ExecutionLimitConfigResponse", + "type": "object", + "properties": { + "account_id": { + "type": "string", + "x-stoplight": { + "id": "1hpj7auq2gdi7" + } + }, + "config_id": { + "type": "string", + "x-stoplight": { + "id": "0k3r8wahjh3ig" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "m501ugdvusexa" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "blybei9t1z6n7" + } + }, + "configs": { + "type": "array", + "x-stoplight": { + "id": "ku34eojwp5k91" + }, + "items": { + "$ref": "#/components/schemas/ConfigInfo" + } + } + } + }, + "SaveResponse": { + "title": "SaveResponse", + "x-stoplight": { + "id": "uqzrp59icfge8" + }, + "type": "object", + "description": "response for Save/Update operations ", + "properties": { + "status": { + "type": "string", + "x-stoplight": { + "id": "0kwqjkjtppozz" + } + }, + "response": { + "$ref": "#/components/schemas/PluginResponseBody" + } + } + }, + "ComponentSummary": { + "type": "object", + "x-examples": { + "Example 1": { + "package_name": "string", + "package_version": "string", + "package_supplier": "string", + "package_manager": "string", + "purl": "string", + "package_license": "string", + "filter_tags": { + "type": "array", + "x-stoplight": { + "id": "7g4k2ra6i06bh" + }, + "items": { + "$ref": "#/components/schemas/LayerType" + } + } + } + }, + "title": "ComponentSummary", + "description": "Provides component summary", + "properties": { + "package_name": { + "type": "string", + "description": "Component Name" + }, + "package_version": { + "type": "string", + "description": "Component Version" + }, + "package_supplier": { + "type": "string", + "description": "Component Supplier" + }, + "package_manager": { + "type": "string", + "description": "Package manager of component" + }, + "purl": { + "type": "string", + "description": "purl of component" + }, + "package_license": { + "type": "string", + "description": "Licenses of component" + }, + "filter_tags": { + "type": "array", + "x-stoplight": { + "id": "7g4k2ra6i06bh" + }, + "items": { + "$ref": "#/components/schemas/LayerType" + } + } + }, + "x-stoplight": { + "id": "ml8xhgivh3dyk" + } + }, + "ComponentDrift": { + "type": "object", + "x-examples": { + "Example 1": { + "status": "ADDED / MODIFIED / DELETED", + "old_component": { + "package_name": "string", + "package_version": "string", + "package_supplier": "string", + "package_manager": "string", + "purl": "string", + "package_license": "string" + }, + "new_component": { + "package_name": "string", + "package_version": "string", + "package_supplier": "string", + "package_manager": "string", + "purl": "string", + "package_license": "string" + } + } + }, + "title": "Component Drift", + "description": "Compnent Drift model", + "properties": { + "status": { + "enum": [ + "modified", + "added", + "deleted" + ], + "description": "Provides status of component whether it got added, deleted or modified" + }, + "old_component": { + "$ref": "#/components/schemas/ComponentSummary" + }, + "new_component": { + "$ref": "#/components/schemas/ComponentSummary" + } + }, + "x-stoplight": { + "id": "uy3wrdn73yshg" + } + }, + "BaselineRequestBody": { + "title": "BaselineRequest", + "x-stoplight": { + "id": "34tfr05xc97g2" + }, + "type": "object", + "properties": { + "tag": { + "type": "string", + "x-stoplight": { + "id": "f1g80cyz8vsx1" + }, + "description": "Version of the Artifact" + } + } + }, + "BaselineResponseBody": { + "title": "BaselineResponseBody", + "x-stoplight": { + "id": "j7vau29flric4" + }, + "type": "object", + "properties": { + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "dtkxcner1lm4q" + }, + "description": "Id of the artifact" + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "lubtz5yi0ccc9" + }, + "description": "Version of the artifact" + } + } + }, + "ArtifactSbomDriftRequestBody": { + "title": "ArtifactSbomDriftRequestBody", + "x-stoplight": { + "id": "n0v1tljx2yttx" + }, + "type": "object", + "properties": { + "tag": { + "type": "string", + "x-stoplight": { + "id": "sl8ssim1u8uk5" + }, + "description": "Tag on which drift has to be calculated" + }, + "base_tag": { + "type": "string", + "x-stoplight": { + "id": "i4g6dfh1vcksu" + }, + "description": "Base tag to calculate drift from" + } + }, + "required": [ + "tag", + "base_tag" + ], + "description": "Request body for caclulating drift between 2 versions of artifact" + }, + "ArtifactSbomDriftResponse": { + "title": "ArtifactSbomDriftResponse", + "x-stoplight": { + "id": "8wtldj2bdrxbl" + }, + "type": "object", + "description": "Response body for sbom drift calculation between 2 artifact versions.", + "required": [ + "drift_id", + "tag", + "base_tag", + "artifact_name", + "total_drifts" + ], + "properties": { + "drift_id": { + "type": "string", + "x-stoplight": { + "id": "abkvlxxav7a0m" + }, + "description": "Drift ID to get the drift results" + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "r8jspopjepniy" + }, + "description": "Tag on which drift was calculated" + }, + "base_tag": { + "type": "string", + "x-stoplight": { + "id": "vp5s1sanmd26h" + }, + "description": "Base tag from which drift was calculated" + }, + "artifact_name": { + "type": "string", + "x-stoplight": { + "id": "v2iqwtzrsb78d" + }, + "description": "Artifact name" + }, + "total_drifts": { + "type": "integer", + "x-stoplight": { + "id": "qii5blwextc6b" + }, + "description": "Sum total of component and license drifts." + }, + "component_drift_summary": { + "$ref": "#/components/schemas/ComponentDriftSummary" + }, + "license_drift_summary": { + "$ref": "#/components/schemas/LicenseDriftSummary" + } + } + }, + "LicenseDrift": { + "title": "LicenseDrift", + "x-stoplight": { + "id": "t284iz1qxez0u" + }, + "type": "object", + "properties": { + "status": { + "x-stoplight": { + "id": "r2e6nepnq5d4i" + }, + "description": "Status of license\n", + "enum": [ + "added", + "deleted" + ] + }, + "license": { + "type": "string", + "x-stoplight": { + "id": "6qcrhmnaue2jt" + }, + "description": "License name" + }, + "components": { + "type": "array", + "x-stoplight": { + "id": "vrimmuw32htbc" + }, + "items": { + "$ref": "#/components/schemas/ComponentSummary" + } + } + }, + "description": "Element of license drift" + }, + "VulnerabilitySeverity": { + "title": "VulnerabilitySeverity", + "x-stoplight": { + "id": "6fxyyopskl7rp" + }, + "enum": [ + "INFO", + "LOW", + "MEDIUM", + "HIGH", + "CRITICAL" + ], + "description": "Severity of the Vulnerability." + }, + "ContactInfo": { + "title": "ContactInfo", + "x-stoplight": { + "id": "inl50bp7x1g5z" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "da9w1xqxv9z1k" + }, + "description": "Name of the contact person." + }, + "email": { + "type": "string", + "x-stoplight": { + "id": "3ty5nsl5eyl1x" + }, + "description": "Email of the Contact person." + } + }, + "description": "Contact Details." + }, + "RemediationCondition": { + "title": "RemediationCondition", + "x-stoplight": { + "id": "gq6jfg0tk3v08" + }, + "type": "object", + "properties": { + "version": { + "type": "string", + "x-stoplight": { + "id": "pes5gkkhd6b6d" + }, + "description": "Component Version for Remediation. For operator like less than, less than equals, range, semantic versioning is required.\n" + }, + "operator": { + "type": "string", + "enum": [ + "LessThan", + "LessThanEquals", + "Matches", + "All" + ], + "description": "Operator for Remediation Condition. " + } + }, + "required": [ + "operator" + ], + "description": "Removal of the following version indicates Artifact is remediated." + }, + "RemediationTrackerCreateResponseBody": { + "title": "RemediationTrackerCreateResponseBody", + "x-stoplight": { + "id": "ayed05b8fvi1n" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "jj8go337l14j6" + }, + "description": "Remediation Tracker Id." + } + }, + "required": [ + "id" + ] + }, + "VulnerabilityInfo": { + "title": "VulnerabilityInfo", + "x-stoplight": { + "id": "roc2n9mk3y5ga" + }, + "type": "object", + "discriminator": { + "propertyName": "type", + "mapping": { + "CVE": "#/components/schemas/CVEVulnerability", + "Default": "#/components/schemas/DefaultVulnerability" + } + }, + "properties": { + "component_name": { + "type": "string", + "x-stoplight": { + "id": "qjvq75h0i3ml3" + }, + "description": "Name of the component where vulnerability is found." + }, + "vulnerability_description": { + "type": "string", + "x-stoplight": { + "id": "lbzaacmud1q9z" + }, + "description": "Details of the vulnerability." + }, + "severity": { + "$ref": "#/components/schemas/VulnerabilitySeverity" + }, + "type": { + "enum": [ + "CVE", + "Default" + ] + } + }, + "required": [ + "component_name", + "severity", + "type" + ] + }, + "CVEVulnerability": { + "title": "CVEVulnerability", + "x-stoplight": { + "id": "p9o02alktq4kd" + }, + "x-discriminator-value": "CVE", + "allOf": [ + { + "$ref": "#/components/schemas/VulnerabilityInfo" + }, + { + "type": "object", + "properties": { + "cve": { + "type": "string", + "x-stoplight": { + "id": "06lpy3qb39n8x" + }, + "description": "CVE number of the vulnerability." + } + }, + "required": [ + "cve" + ] + } + ], + "required": [ + "type" + ] + }, + "DefaultVulnerability": { + "title": "DefaultVulnerability", + "x-stoplight": { + "id": "60vx5981dgwdx" + }, + "x-discriminator-value": "Default", + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/VulnerabilityInfo" + } + ] + }, + "RemediationTrackerCreateRequestBody": { + "title": "RemediationTrackerCreateRequestBody", + "x-stoplight": { + "id": "msfdp2vaxe25c" + }, + "type": "object", + "properties": { + "vulnerability_info": { + "$ref": "#/components/schemas/VulnerabilityInfo" + }, + "contact": { + "$ref": "#/components/schemas/ContactInfo" + }, + "comments": { + "type": "string", + "x-stoplight": { + "id": "z4kjp4gxjuieg" + }, + "description": "Description/comments for the tracker." + }, + "remediation_condition": { + "$ref": "#/components/schemas/RemediationCondition" + }, + "target_end_date": { + "type": "string", + "x-stoplight": { + "id": "fesu25cnud2g5" + }, + "format": "date", + "description": "Target End Date in UTC." + } + }, + "required": [ + "remediation_condition" + ], + "description": "Create Request Body For Remediation tracker." + }, + "ExcludeArtifactRequest": { + "title": "ExcludeArtifactRequest", + "x-stoplight": { + "id": "8zstw5pc37lei" + }, + "type": "object", + "properties": { + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "pq3635o6c8dbd" + }, + "description": "Artifact Id that needs to be excluded from the tracker." + } + }, + "required": [ + "artifact_id" + ] + }, + "OrchestrationStepDriftRequestBody": { + "title": "OrchestrationStepDriftRequestBody", + "x-stoplight": { + "id": "a10i10ic81mf2" + }, + "type": "object", + "properties": { + "base": { + "x-stoplight": { + "id": "hpnybas76g36y" + }, + "enum": [ + "baseline", + "last_generated_sbom", + "repository" + ], + "description": "Provide the baseline from which drift has to be calculated" + }, + "variant": { + "$ref": "#/components/schemas/ArtifactVariant" + } + }, + "required": [ + "base" + ] + }, + "OrchestrationDriftSummary": { + "title": "OrchestrationDriftSummary", + "x-stoplight": { + "id": "bt7iwlyxwvu6d" + }, + "type": "object", + "properties": { + "base": { + "x-stoplight": { + "id": "03jtqgpu3ytss" + }, + "type": "string" + }, + "total_drifts": { + "type": "integer", + "x-stoplight": { + "id": "1sh13lvpgzvsc" + } + }, + "license_drifts": { + "type": "integer", + "x-stoplight": { + "id": "yvchfgcgggjls" + } + }, + "component_drifts": { + "type": "integer", + "x-stoplight": { + "id": "420o9fow31y8c" + } + }, + "components_added": { + "type": "integer", + "x-stoplight": { + "id": "8bv6t3pcnutdu" + } + }, + "components_deleted": { + "type": "integer", + "x-stoplight": { + "id": "gk64fxw51grkm" + } + }, + "components_modified": { + "type": "integer", + "x-stoplight": { + "id": "m19qzum0f4ou9" + } + }, + "license_added": { + "type": "integer", + "x-stoplight": { + "id": "gvvpuqxzkwa9p" + } + }, + "license_deleted": { + "type": "integer", + "x-stoplight": { + "id": "7gla1b1oom7aj" + } + }, + "base_tag": { + "type": "string", + "x-stoplight": { + "id": "d66nz5mbgyfgd" + } + }, + "drift_id": { + "type": "string", + "x-stoplight": { + "id": "0to8vkd3bphkq" + } + } + } + }, + "OrchestrationScorecardSummary": { + "title": "OrchestrationScorecardSummary", + "x-stoplight": { + "id": "esgpy3s1ulj4r" + }, + "type": "object", + "properties": { + "avg_score": { + "type": "string", + "x-stoplight": { + "id": "x77dm8kju5gb2" + } + }, + "max_score": { + "type": "string", + "x-stoplight": { + "id": "1wyh0qaiyni1t" + } + } + } + }, + "RemediationTrackersOverallSummaryResponseBody": { + "title": "RemediationTrackersOverallSummaryResponseBody", + "x-stoplight": { + "id": "qego172jozoq6" + }, + "type": "object", + "properties": { + "mean_time_to_remediate_in_hours": { + "type": "number", + "x-stoplight": { + "id": "7fhckh6uidvwl" + }, + "format": "double", + "description": "Mean time to complete the Remediation in Hours." + }, + "remediation_counts": { + "x-stoplight": { + "id": "fh4ewst1z2xzw" + }, + "type": "array", + "description": "List of statuses and their counts.", + "items": { + "$ref": "#/components/schemas/RemediationCount" + } + }, + "deployments_count": { + "$ref": "#/components/schemas/DeploymentsCount" + } + } + }, + "RemediationStatus": { + "title": "RemediationStatus", + "x-stoplight": { + "id": "63pz8brn3jf4c" + }, + "enum": [ + "IN_PROGRESS", + "DONE" + ] + }, + "RemediationCount": { + "title": "RemediationCount", + "x-stoplight": { + "id": "sbx2cw30oiuxo" + }, + "type": "object", + "properties": { + "status": { + "$ref": "#/components/schemas/RemediationStatus" + }, + "count": { + "type": "integer", + "x-stoplight": { + "id": "kjek6z7qvo2ta" + }, + "format": "int64", + "default": 0, + "description": "Number of trackers having the status." + } + }, + "required": [ + "status", + "count" + ] + }, + "ComponentDriftSummary": { + "title": "ComponentDriftSummary", + "x-stoplight": { + "id": "b32uzhtuywe2w" + }, + "type": "object", + "description": "Component drift summary", + "properties": { + "total": { + "type": "integer", + "x-stoplight": { + "id": "hxyal6jm7n1op" + }, + "description": "Total number of component drifts." + }, + "added": { + "type": "integer", + "x-stoplight": { + "id": "r0v4mbai7xjnj" + }, + "description": "Number of components added." + }, + "deleted": { + "type": "integer", + "x-stoplight": { + "id": "cloho1oa3yqwg" + }, + "description": "Number of components deleted." + }, + "modified": { + "type": "integer", + "x-stoplight": { + "id": "eg71m292ud719" + }, + "description": "Number of components modified." + } + }, + "required": [ + "total", + "added", + "deleted", + "modified" + ] + }, + "LicenseDriftSummary": { + "title": "LicenseDriftSummary", + "x-stoplight": { + "id": "xqrznhby6s5pm" + }, + "type": "object", + "properties": { + "total": { + "type": "integer", + "x-stoplight": { + "id": "rv3e26us1gpns" + }, + "description": "Total number of license drifts." + }, + "added": { + "type": "integer", + "x-stoplight": { + "id": "i712aeyzprqnp" + }, + "description": "Total number of licenses added." + }, + "deleted": { + "type": "integer", + "x-stoplight": { + "id": "78xi96muf5dzy" + }, + "description": "Total number of licenses deleted" + } + }, + "required": [ + "total", + "added", + "deleted" + ], + "description": "Provides License Drift Summary" + }, + "RemediationListingRequestBody": { + "title": "RemediationListingRequestBody", + "x-stoplight": { + "id": "rksqf5o09fhae" + }, + "type": "object", + "properties": { + "component_name_filter": { + "x-stoplight": { + "id": "3tkq4ge9znqqs" + }, + "type": "object", + "description": "Filter for Component Name.", + "properties": { + "operator": { + "$ref": "#/components/schemas/NameOperator" + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "e3466w426g7dh" + } + } + }, + "required": [ + "operator", + "value" + ] + }, + "cve_filter": { + "x-stoplight": { + "id": "1sqdll9itus52" + }, + "type": "object", + "description": "Filter for CVE.", + "properties": { + "operator": { + "$ref": "#/components/schemas/NameOperator" + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "j1g5bilq86a3a" + } + } + }, + "required": [ + "operator", + "value" + ] + } + } + }, + "RemediationListingResponse": { + "title": "RemediationListingResponse", + "x-stoplight": { + "id": "vxldq239q3p78" + }, + "type": "object", + "x-examples": {}, + "properties": { + "id": { + "type": "string", + "description": "Tracker Id." + }, + "component": { + "type": "string", + "x-stoplight": { + "id": "3iof2uw444ynl" + }, + "description": "Component Name." + }, + "cve": { + "type": "string", + "x-stoplight": { + "id": "blcuikrxrhqth" + }, + "description": "CVE number." + }, + "artifacts": { + "type": "integer", + "x-stoplight": { + "id": "s5hdmaqt4f664" + }, + "description": "Total distinct artifacts included in the tracker.", + "format": "int64" + }, + "severity": { + "$ref": "#/components/schemas/VulnerabilitySeverity" + }, + "deployments_count": { + "$ref": "#/components/schemas/DeploymentsCount" + }, + "status": { + "$ref": "#/components/schemas/RemediationStatus" + }, + "contact": { + "$ref": "#/components/schemas/ContactInfo" + }, + "target_date": { + "type": "string", + "x-stoplight": { + "id": "o8s7v1phqs963" + }, + "description": "Target End Date set by the user." + }, + "schedule_status": { + "type": "string", + "x-stoplight": { + "id": "fhb8ew9zkzl8n" + }, + "description": "This indicates how we are going with schedule of target date.\n" + }, + "remediation_condition": { + "$ref": "#/components/schemas/RemediationCondition" + }, + "closed_by": { + "type": "string", + "x-stoplight": { + "id": "xwcbadxo27tdo" + }, + "description": "If tracker was closed manually , name of the person who closed it\n" + }, + "created_by": { + "type": "string", + "x-stoplight": { + "id": "fay5tmt3blo2g" + }, + "description": "Name of the person who created the tracker." + }, + "created_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "e5v40417cnl5a" + }, + "description": "Time when tracker was created." + } + }, + "required": [ + "id", + "component", + "artifacts", + "severity", + "deployments_count", + "status", + "schedule_status", + "remediation_condition", + "created_at", + "created_by" + ] + }, + "DeploymentsCount": { + "title": "DeploymentsCount", + "x-stoplight": { + "id": "mnpaggac1u7q1" + }, + "type": "object", + "properties": { + "pending_prod_count": { + "type": "integer", + "description": "Pending Prod Deployments to remediate.", + "format": "int64", + "nullable": true + }, + "pending_non_prod_count": { + "type": "integer", + "description": "Pending Non Prod Deployments to remediate.", + "format": "int64", + "nullable": true + }, + "new_pending_count": { + "type": "integer", + "description": "New Pending Deployments.", + "format": "int64", + "nullable": true + }, + "patched_prod_count": { + "type": "integer", + "description": "Patched Prod Deployments.", + "format": "int64", + "nullable": true + }, + "patched_non_prod_count": { + "type": "integer", + "description": "Patched Non Prod Deployments.", + "format": "int64", + "nullable": true + }, + "new_patched_count": { + "type": "integer", + "description": "New Patched Deployments.", + "format": "int64", + "nullable": true + } + } + }, + "NameOperator": { + "title": "NameOperator", + "x-stoplight": { + "id": "z7xam58090ncp" + }, + "enum": [ + "Equals", + "StartsWith", + "Contains" + ] + }, + "CreateTicketRequest": { + "type": "object", + "x-examples": { + "Example 1": { + "custom_fields": { + "custom_field_1": { + "id": "12345" + }, + "custom_field_2": [ + { + "value": "value1" + }, + { + "value": "value2" + } + ] + }, + "description": "This is the very long ticket description...", + "exists": false, + "external_id": "ABC-1234", + "identifiers": { + "id_name": [ + "value1", + "value2", + "value3" + ] + }, + "issue_type": "Bug", + "priority": "High", + "project_key": "ABC", + "title": "A new ticket" + } + }, + "properties": { + "custom_fields": { + "type": "object" + }, + "description": { + "type": "string" + }, + "exists": { + "type": "boolean" + }, + "external_id": { + "type": "string" + }, + "identifiers": { + "type": "object" + }, + "issue_type": { + "type": "string" + }, + "priority": { + "type": "string" + }, + "project_key": { + "type": "string" + }, + "title": { + "type": "string" + }, + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "ab59cnwosnqtj" + } + } + }, + "x-stoplight": { + "id": "xmrbbzi8s77gb" + } + }, + "RemediationArtifactDetailsResponse": { + "title": "RemediationArtifactDetailsResponse", + "x-stoplight": { + "id": "j1n29lhfn6ofq" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Artifact Id." + }, + "remediation_id": { + "type": "string", + "description": "Renmediation Tracker Id." + }, + "component": { + "type": "string", + "x-stoplight": { + "id": "l8olno2phx50z" + }, + "description": "Component Name." + }, + "cve": { + "type": "string", + "x-stoplight": { + "id": "dsbd8qytcr0c9" + }, + "description": "CVE number." + }, + "severity": { + "$ref": "#/components/schemas/VulnerabilitySeverity" + }, + "status": { + "$ref": "#/components/schemas/RemediationStatus" + }, + "deployments_count": { + "$ref": "#/components/schemas/DeploymentsCount" + }, + "artifact_name": { + "type": "string", + "x-stoplight": { + "id": "3aagj65ohtwgq" + }, + "description": "Name of the artifact." + }, + "latest_fixed_artifact": { + "type": "string", + "x-stoplight": { + "id": "3o3bn0hao6wwe" + }, + "description": "Latest Orchestrated Artifact with Fix." + }, + "contact": { + "$ref": "#/components/schemas/ContactInfo" + }, + "build_pipeline": { + "$ref": "#/components/schemas/PipelineInfo" + }, + "latest_build_tag": { + "type": "string", + "x-stoplight": { + "id": "h09vzd3khupci" + } + }, + "ticket": { + "$ref": "#/components/schemas/TicketInfo" + } + }, + "required": [ + "id", + "remediation_id", + "component", + "severity", + "status", + "deployments_count", + "artifact_name" + ] + }, + "RemediationDetailsResponse": { + "title": "RemediationDetailsResponse", + "x-stoplight": { + "id": "lgm3ozxcxijzl" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Remediation Id." + }, + "component": { + "type": "string", + "x-stoplight": { + "id": "jpqinfqcc5ao1" + }, + "description": "Component Name." + }, + "cve": { + "type": "string", + "x-stoplight": { + "id": "04w5pvfvqtaq3" + }, + "description": "CVE number." + }, + "severity": { + "$ref": "#/components/schemas/VulnerabilitySeverity" + }, + "status": { + "$ref": "#/components/schemas/RemediationStatus" + }, + "artifacts": { + "type": "integer", + "x-stoplight": { + "id": "d7h8y4sw4m16x" + }, + "description": "Total distinct artifacts included in the tracker.", + "format": "int64", + "minimum": 0 + }, + "artifacts_excluded": { + "type": "integer", + "x-stoplight": { + "id": "wfxtsxy6bw5he" + }, + "format": "int64", + "minimum": 0, + "description": "Total Number of Excluded Artifacts." + }, + "new_artifacts_count": { + "type": "integer", + "x-stoplight": { + "id": "4wqt3vl7ybnci" + }, + "format": "int64", + "minimum": 0, + "description": "Total Number of New Artifacts." + }, + "environments": { + "type": "integer", + "x-stoplight": { + "id": "t2qoukfumxxl3" + }, + "description": "Total environments included in the tracker.", + "format": "int64", + "minimum": 0 + }, + "new_environments_count": { + "type": "integer", + "x-stoplight": { + "id": "n6l8s9npjkb86" + }, + "format": "int64", + "minimum": 0, + "description": "Total Number of New Environments." + }, + "remediation_condition": { + "$ref": "#/components/schemas/RemediationCondition" + }, + "deployments_count": { + "$ref": "#/components/schemas/DeploymentsCount" + }, + "vulnerability_description": { + "type": "string", + "x-stoplight": { + "id": "j0vfqz5pefzq1" + }, + "description": "Details of the vulnerability." + }, + "comments": { + "type": "string", + "x-stoplight": { + "id": "q6wmcgtr1z8yz" + }, + "description": "Description/comments for the tracker." + }, + "ticket": { + "$ref": "#/components/schemas/TicketInfo" + }, + "start_time_milli": { + "type": "integer", + "x-stoplight": { + "id": "uje0d8kys48lk" + }, + "format": "int64", + "minimum": 0 + }, + "end_time_milli": { + "type": "integer", + "x-stoplight": { + "id": "u4n155d0c36l6" + }, + "format": "int64", + "minimum": 0, + "nullable": true + }, + "contact": { + "$ref": "#/components/schemas/ContactInfo" + }, + "created_by_name": { + "type": "string", + "x-stoplight": { + "id": "5qlr2ws3u7oi9" + }, + "description": "Name of the User who created the Remediation Tracker." + }, + "created_by_email": { + "type": "string", + "x-stoplight": { + "id": "1i587hn9x44wl" + }, + "description": "Email of the User who created the Remediation Tracker." + }, + "closed_by": { + "type": "string", + "x-stoplight": { + "id": "rrnb6lgm5k06n" + }, + "description": "If Remediation Tracker was closed manually , name of the user who closed it." + }, + "target_date": { + "type": "string", + "x-stoplight": { + "id": "ej0x3hdn7g2zs" + }, + "description": "End date set by the user." + } + }, + "required": [ + "id", + "component", + "severity", + "status", + "artifacts", + "artifacts_excluded", + "new_artifacts_count", + "environments", + "new_environments_count", + "deployments_count", + "start_time_milli", + "remediation_condition" + ] + }, + "PipelineInfo": { + "title": "PipelineInfo", + "x-stoplight": { + "id": "v9stjwvu2ulvu" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "dl352mt8yqdxt" + }, + "description": "Name of the pipeline." + }, + "execution_id": { + "type": "string", + "x-stoplight": { + "id": "tevm6bc13y3hi" + }, + "description": "Execution Id of the pipeline." + }, + "id": { + "type": "string", + "x-stoplight": { + "id": "7s1mu1n1dan0s" + }, + "description": "Id of the pipeline." + }, + "triggered_by": { + "type": "string", + "description": "Name of who trigger the deployment pipeline" + }, + "triggered_by_id": { + "type": "string", + "description": "Id of who trigger the deployment pipeline" + }, + "triggered_at": { + "type": "integer", + "description": "Time of trigger of the deployment pipeline", + "format": "int64", + "nullable": true + }, + "triggered_type": { + "type": "string", + "description": "Trigger type of the deployment pipeline" + } + } + }, + "RemediationArtifactListingResponse": { + "title": "RemediationArtifactListingResponse", + "x-stoplight": { + "id": "orocfqbopzjik" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "mxz6snb9d3oq6" + }, + "description": "Artifact Id." + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "ofik1gmhv6nsx" + }, + "description": "Artifact Name." + }, + "deployments": { + "$ref": "#/components/schemas/DeploymentsCount" + }, + "is_excluded": { + "type": "boolean", + "x-stoplight": { + "id": "uc571ew7vstax" + }, + "description": "Whether the artifact is excluded." + }, + "is_new": { + "type": "boolean", + "x-stoplight": { + "id": "p9diecz5s4vmb" + }, + "description": "Whether the artifact is new." + }, + "ticket": { + "$ref": "#/components/schemas/TicketInfo" + } + }, + "required": [ + "id", + "name", + "deployments", + "is_excluded" + ] + }, + "TicketInfo": { + "title": "TicketInfo", + "x-stoplight": { + "id": "cwruxfom4rfcx" + }, + "type": "object", + "description": "Ticket Details.", + "properties": { + "external_id": { + "type": "string", + "x-stoplight": { + "id": "ex86pido7jo69" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "gywmzyljeu184" + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "j45rig13j82ss" + } + }, + "id": { + "type": "string", + "x-stoplight": { + "id": "9tpd12on9q3xs" + } + } + }, + "required": [ + "external_id" + ] + }, + "RemediationArtifactDeploymentsListingResponse": { + "title": "RemediationArtifactDeploymentsListingResponse", + "x-stoplight": { + "id": "8ubnvb2b71yhv" + }, + "type": "object", + "properties": { + "type": { + "$ref": "#/components/schemas/EnvironmentType2" + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "i1t5z87fgwylv" + }, + "description": "Name of the Environment." + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "dv7gxnaj1kpmf" + }, + "description": "Identifier of the Environment." + }, + "digest": { + "type": "string", + "x-stoplight": { + "id": "6z1v5z1z1z1z1" + }, + "description": "Digest of the artifact." + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "66ruc3h15zi4y" + }, + "description": "Tag deployed in the environment." + }, + "status": { + "$ref": "#/components/schemas/RemediationStatus" + }, + "deployment_pipeline": { + "$ref": "#/components/schemas/PipelineInfo" + }, + "component_version": { + "type": "string", + "x-stoplight": { + "id": "v39a9bzbs6ha5" + }, + "description": "The version of the impacted components used in this artifact." + } + }, + "required": [ + "type", + "name", + "identifier", + "tag", + "status", + "deployment_pipeline", + "component_version" + ] + }, + "RemediationTrackerUpdateRequestBody": { + "title": "RemediationTrackerUpdateRequestBody", + "x-stoplight": { + "id": "f75veqdadq005" + }, + "type": "object", + "properties": { + "contact": { + "$ref": "#/components/schemas/ContactInfo" + }, + "comments": { + "type": "string", + "x-stoplight": { + "id": "4bxs4lw4t4kgb" + }, + "description": "Description/comments for the tracker." + }, + "target_end_date": { + "type": "string", + "x-stoplight": { + "id": "7q27i501xeec6" + }, + "format": "date", + "description": "Target End Date in UTC." + }, + "vulnerability_description": { + "type": "string", + "x-stoplight": { + "id": "asy2wup0wipt9" + }, + "description": "Details of the vulnerability." + }, + "severity": { + "$ref": "#/components/schemas/VulnerabilitySeverity" + } + }, + "required": [ + "contact", + "comments", + "target_end_date", + "vulnerability_description", + "severity" + ] + }, + "RemediationTrackerUpdateResponseBody": { + "title": "RemediationTrackerUpdateResponseBody", + "x-stoplight": { + "id": "t14atvve77l8w" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "q1bcb1t7i6eew" + }, + "description": "Remediation Tracker Id." + } + }, + "required": [ + "id" + ] + }, + "RemediationArtifactListingRequestBody": { + "title": "RemediationArtifactListingRequestBody", + "x-stoplight": { + "id": "qu034pbirnp2u" + }, + "type": "object", + "properties": { + "deployment_status": { + "type": "string", + "x-stoplight": { + "id": "0eodz14ae6y3f" + }, + "enum": [ + "Prod", + "PreProd" + ] + }, + "remediation_status": { + "type": "string", + "x-stoplight": { + "id": "vda48wyasqwzo" + }, + "enum": [ + "Done", + "In_Progress" + ] + } + } + }, + "RemediationArtifactDeploymentsListingRequestBody": { + "title": "RemediationArtifactDeploymentsListingRequestBody", + "x-stoplight": { + "id": "uhlyjg0ie3q7n" + }, + "type": "object", + "properties": { + "env_identifier": { + "type": "string", + "x-stoplight": { + "id": "wlwtwo71eqdhx" + } + }, + "env_type": { + "$ref": "#/components/schemas/EnvironmentTypeFilter" + } + } + }, + "ArtifactAndDeploymentsResponseBody": { + "title": "ArtifactAndDeploymentsResponseBody", + "x-stoplight": { + "id": "kyxd9vg0xko63" + }, + "type": "object", + "properties": { + "is_valid": { + "type": "boolean", + "x-stoplight": { + "id": "5hth153x3d2z0" + }, + "default": false + }, + "message": { + "type": "string", + "x-stoplight": { + "id": "uruyn057krd4w" + } + } + } + }, + "EnvironmentInfo": { + "title": "EnvironmentInfo", + "x-stoplight": { + "id": "f673knxyn1t3b" + }, + "type": "object", + "properties": { + "identifier": { + "type": "string", + "x-stoplight": { + "id": "6j1r342qw2q2g" + }, + "description": "Identifier of the Environment." + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "d1uquwd53cydg" + }, + "description": "Name of the Environment." + }, + "type": { + "$ref": "#/components/schemas/EnvironmentType2" + } + }, + "required": [ + "identifier", + "name", + "type" + ] + }, + "CreateTicketResponse": { + "title": "CreateTicketResponse", + "x-stoplight": { + "id": "6j8ei25vvgcmt" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "pyz5amzlbutor" + }, + "description": "Ticket Identifier" + } + }, + "required": [ + "id" + ] + }, + "ExemptionInitiatorDTO": { + "type": "object", + "x-stoplight": { + "id": "ps02pr2nesa5m" + }, + "x-examples": {}, + "title": "ExemptionInitiatorDTO", + "properties": { + "project_identifier": { + "type": "string", + "x-stoplight": { + "id": "s4jyr2h417qgt" + } + }, + "enforcement_id": { + "type": "string", + "x-stoplight": { + "id": "nwpqxpx81btr0" + } + }, + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "gnzd8c6qusr3p" + } + } + } + }, + "ExemptionDurationDTO": { + "type": "object", + "x-stoplight": { + "id": "gwea7nn03kd7b" + }, + "x-examples": {}, + "title": "ExemptionDurationDTO", + "properties": { + "always_exempt": { + "type": "boolean", + "x-stoplight": { + "id": "0gnxtzccq3n5d" + } + }, + "days": { + "type": "integer" + } + } + }, + "ExemptionStatusDTO": { + "x-stoplight": { + "id": "5jdd05223xfdn" + }, + "type": "string", + "enum": [ + "PENDING", + "APPROVED", + "REJECTED", + "EXPIRED" + ], + "title": "ExemptionStatusDTO" + }, + "ExemptionResponseDTO": { + "type": "object", + "x-stoplight": { + "id": "qhlradvqdsoka" + }, + "x-examples": {}, + "title": "ExemptionResponseDTO", + "properties": { + "component_name": { + "type": "string", + "x-stoplight": { + "id": "yoobm06ffppgf" + } + }, + "component_version": { + "type": "string", + "x-stoplight": { + "id": "92jdhofe26h2u" + } + }, + "version_operator": { + "$ref": "#/components/schemas/Operator" + }, + "reason": { + "type": "string" + }, + "exemption_duration": { + "$ref": "#/components/schemas/ExemptionDurationDTO" + }, + "exemption_status": { + "$ref": "#/components/schemas/ExemptionStatusDTO" + }, + "uuid": { + "type": "string" + }, + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "x22p27k9urw84" + } + }, + "account_id": { + "type": "string", + "x-stoplight": { + "id": "i54s7qtrmnt2j" + } + }, + "org_identifier": { + "type": "string", + "x-stoplight": { + "id": "s1g762zgwnq1a" + } + }, + "project_identifier": { + "type": "string", + "x-stoplight": { + "id": "4haq8eju77mtp" + } + }, + "created_by_user_id": { + "type": "string", + "x-stoplight": { + "id": "a19ykfdcx14am" + } + }, + "created_by_name": { + "type": "string", + "x-stoplight": { + "id": "24ht62fxl5olb" + } + }, + "reviewed_by_user_id": { + "type": "string", + "x-stoplight": { + "id": "jsavsciecjikp" + } + }, + "reviewed_by_name": { + "type": "string", + "x-stoplight": { + "id": "4pr8z1usbabey" + } + }, + "updated_by": { + "type": "string", + "x-stoplight": { + "id": "9lxgpvwcsrmun" + } + }, + "review_comment": { + "type": "string", + "x-stoplight": { + "id": "mwqkzg4jbz7md" + } + }, + "created_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "m05xxmxxzgzkz" + } + }, + "updated_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "5zci7bmqul8xl" + } + }, + "valid_until": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "fby36b6and04x" + } + }, + "reviewed_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "2sl9aqhubqket" + } + }, + "exemption_initiator": { + "$ref": "#/components/schemas/ExemptionInitiatorDTO" + } + } + }, + "ExemptionRequestDTO": { + "type": "object", + "x-examples": {}, + "properties": { + "component_name": { + "type": "string", + "x-stoplight": { + "id": "yc0pzdwxtjgad" + } + }, + "component_version": { + "type": "string", + "x-stoplight": { + "id": "lly9gx9ion1xh" + } + }, + "version_operator": { + "$ref": "#/components/schemas/Operator" + }, + "reason": { + "type": "string" + }, + "exemption_duration": { + "$ref": "#/components/schemas/ExemptionDurationDTO" + }, + "exemption_initiator": { + "$ref": "#/components/schemas/ExemptionInitiatorDTO" + } + }, + "x-stoplight": { + "id": "9jp76e9ramh63" + } + }, + "ExemptionReviewRequestDTO": { + "type": "object", + "x-examples": {}, + "properties": { + "exemption_status": { + "$ref": "#/components/schemas/ExemptionStatusDTO" + }, + "review_comment": { + "type": "string", + "x-stoplight": { + "id": "0i96zm7yk9awf" + } + } + }, + "x-stoplight": { + "id": "f28re4dygdmwl" + } + }, + "RepositoryArtifactMetadata": { + "title": "RepositoryArtifactMetadata", + "x-stoplight": { + "id": "r2eorx2z237fq" + }, + "type": "object", + "properties": { + "branch": { + "type": "string", + "x-stoplight": { + "id": "xvjq4scosgnvt" + }, + "description": "Branch name of the repository being orchestrated." + }, + "git_tag": { + "type": "string", + "x-stoplight": { + "id": "rsjgkyoljktk1" + }, + "description": "Git tag of the repository being orchestrated." + }, + "commit_sha": { + "type": "string", + "x-stoplight": { + "id": "3mcf3dzcbsznt" + }, + "description": "Commit ID of the repository being orchestrated." + } + } + }, + "ContainerArtifactMetadata": { + "title": "ContainerArtifactMetadata", + "x-stoplight": { + "id": "si5tcv3884wtu" + }, + "type": "object" + }, + "ArtifactListingResponseV2": { + "type": "object", + "x-stoplight": { + "id": "oqobxoa0w5k6d" + }, + "x-examples": {}, + "properties": { + "id": { + "type": "string", + "description": "Artifact ID" + }, + "name": { + "type": "string", + "description": "Artifact Name" + }, + "url": { + "type": "string", + "description": "Artifact Origin URL" + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "puscy5vqienvv" + }, + "description": "artifact type", + "enum": [ + "image", + "repository" + ] + }, + "variant": { + "$ref": "#/components/schemas/ArtifactVariant" + }, + "metadata": { + "type": "object", + "additionalProperties": true + }, + "components_count": { + "type": "integer", + "description": "Number of components of the artifact" + }, + "updated": { + "type": "string", + "description": "Last updated time of the artifact" + }, + "baseline": { + "type": "boolean", + "description": "Flag denoting if current artifact is baseline" + }, + "scorecard": { + "type": "object", + "properties": { + "max_score": { + "type": "string", + "description": "Maximum score of the artifact SBOM" + }, + "avg_score": { + "type": "string", + "description": "Average score of the artifact SBOM" + } + } + }, + "policy_enforcement": { + "type": "object", + "x-stoplight": { + "id": "gy1y5dicgpypq" + }, + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "n4wdtm6y3ifje" + }, + "description": "Enforcement Step Id for the artifact lastest enfrocement." + }, + "allow_list_violation_count": { + "type": "string", + "x-stoplight": { + "id": "93fyhq0f48926" + }, + "description": "Count of the allow list policy violations" + }, + "deny_list_violation_count": { + "type": "string", + "x-stoplight": { + "id": "qkv64n8a15xb3" + }, + "description": "Count of the deny list policy violations" + } + } + }, + "deployment": { + "type": "object", + "x-stoplight": { + "id": "fybqbfp2x69l3" + }, + "properties": { + "activity": { + "type": "string", + "enum": [ + "DEPLOYED", + "GENERATED" + ], + "x-stoplight": { + "id": "9z1oefzulp1zq" + }, + "description": "Latest deployment activity of the artifact" + }, + "prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "wux3zmbktqqs0" + }, + "description": "Count of production environment this artifact is currently deployed." + }, + "non_prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "vqey9t8s156s4" + }, + "description": "Count of pre-production environment this artifact is currently deployed." + } + } + }, + "orchestration": { + "type": "object", + "x-stoplight": { + "id": "hchdgdaay5ros" + }, + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "hwqaymud6ahig" + }, + "description": "Orchestration step execution ID for the aritfact." + }, + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "t6jtif1llpafh" + }, + "description": "Build pipeline Id used for orchestration of the artifact" + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "ojs3ry10yq7em" + }, + "description": "Build pipeline execution Id used for orchestration of the artifact" + } + } + }, + "sto_issue_count": { + "$ref": "#/components/schemas/StoIssueCount" + } + } + }, + "ArtifactVariant": { + "title": "ArtifactVariant", + "x-stoplight": { + "id": "uyb3jwhgs9wjh" + }, + "type": "object", + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "2r8lmxejmwqbf" + }, + "enum": [ + "tag", + "branch", + "gitTag", + "commit" + ], + "description": "type of the variant of the artifact." + }, + "value": { + "type": "string", + "x-stoplight": { + "id": "hd1p3s7bugn88" + }, + "description": "Value of the variant of the artifact." + } + } + }, + "ComponentDTO": { + "title": "Component", + "x-stoplight": { + "id": "xi0g0zfek2kev" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "56tepandvuzlx" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "vaesi5rigs7nx" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "f6m867s10lp7k" + } + } + } + }, + "StoIssueCount": { + "title": "StoIssueCount", + "x-stoplight": { + "id": "f6ujzuy4ee24s" + }, + "type": "object", + "description": "The count of Security Issues, by severity code, for a given Harness Pipeline Execution along with this execution info", + "properties": { + "critical": { + "type": "integer", + "x-stoplight": { + "id": "hr4evvvkdwlaj" + }, + "description": "The number of Critical-severity Issues" + }, + "high": { + "type": "integer", + "x-stoplight": { + "id": "xku8fdplguqn8" + }, + "description": "The number of High-severity Issues" + }, + "ignored": { + "type": "integer", + "x-stoplight": { + "id": "pugpn1qpfuiz2" + }, + "description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts" + }, + "info": { + "type": "integer", + "x-stoplight": { + "id": "uq1mu3ju7hqvj" + }, + "description": "The number of Informational Issues" + }, + "last_scanned": { + "type": "string", + "x-stoplight": { + "id": "31o2aroslpv8t" + }, + "description": "Timestamp at which the target variant was last scanned" + }, + "low": { + "type": "integer", + "x-stoplight": { + "id": "0ke8tj8nksxb0" + }, + "description": "The number of Low-severity Issues" + }, + "medium": { + "type": "integer", + "x-stoplight": { + "id": "dgxoss72dtrpd" + }, + "description": "The number of Medium-severity Issues" + }, + "total": { + "type": "integer", + "x-stoplight": { + "id": "dgxoss72dtrpd" + }, + "description": "The number of total-severity Issues" + }, + "target_id": { + "type": "string", + "x-stoplight": { + "id": "77ehb4jdd7e4e" + }, + "description": "Associated Target ID" + }, + "target_name": { + "type": "string", + "x-stoplight": { + "id": "qmyrjo5stdfwh" + }, + "description": "Name of the Scan Target" + }, + "target_variant_id": { + "type": "string", + "x-stoplight": { + "id": "md8z2e8kl4sdb" + }, + "description": "Associated Target Variant ID" + }, + "target_variant_name": { + "type": "string", + "x-stoplight": { + "id": "eky1hzk5ljwed" + }, + "description": "Name of the Scan Target" + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "6w9cfeu92rj4d" + }, + "enum": [ + "image", + "repository" + ], + "description": "Scan Target's type" + }, + "tool": { + "type": "string", + "x-stoplight": { + "id": "6w9cfeu92rj4d" + }, + "description": "The name of the tool that performed the scan" + }, + "execution_id": { + "type": "string", + "x-stoplight": { + "id": "w8x5d831w1s0f" + }, + "description": "Harness Execution ID" + }, + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "knvaykwgq2syk" + }, + "description": "Harness Pipeline Id" + }, + "pipeline_details": { + "$ref": "#/components/schemas/PipelineDetails" + } + } + }, + "SSCASummary": { + "title": "SSCASummary", + "x-stoplight": { + "id": "nxdskdfanqumz" + }, + "type": "object", + "description": "Summary Information for SSCA Tab", + "properties": { + "artifacts": { + "type": "object", + "x-stoplight": { + "id": "91l0sh6kha2zv" + }, + "properties": { + "containers": { + "type": "integer", + "x-stoplight": { + "id": "oxd1zvncj6awh" + } + }, + "repositories": { + "type": "integer", + "x-stoplight": { + "id": "6xxw06b4hfsld" + } + } + } + }, + "drifts": { + "type": "object", + "x-stoplight": { + "id": "hw1zb5ejf1w1i" + }, + "properties": { + "components": { + "type": "integer", + "x-stoplight": { + "id": "3iy0vc2a04hxp" + } + }, + "licenses": { + "type": "integer", + "x-stoplight": { + "id": "hhnol4fe7ernr" + } + } + } + }, + "policy_violations": { + "type": "object", + "x-stoplight": { + "id": "ei3f7t0ecocop" + }, + "properties": { + "allow_list": { + "type": "integer", + "x-stoplight": { + "id": "wwlnvezrq03nf" + } + }, + "deny_list": { + "type": "integer", + "x-stoplight": { + "id": "h6yvi446m6gyk" + } + } + } + }, + "slsa_verifications": { + "type": "object", + "x-stoplight": { + "id": "5vvs0i80gklzr" + }, + "properties": { + "successes": { + "type": "integer", + "x-stoplight": { + "id": "9lr6ydad1ymyc" + } + }, + "failures": { + "type": "integer", + "x-stoplight": { + "id": "u3it6zwcsf9yk" + } + } + } + }, + "verification": { + "type": "object", + "x-stoplight": { + "id": "po2bjbscxrm9e" + }, + "properties": { + "success_count": { + "type": "integer", + "x-stoplight": { + "id": "z5xbbgwxo87vu" + } + }, + "failure_count": { + "type": "integer", + "x-stoplight": { + "id": "a68y3zknjhgm8" + } + } + } + } + } + }, + "ArtifactListingPipelineResponse": { + "title": "ArtifactListingPipelineResponse", + "x-stoplight": { + "id": "aeh4bb2etl1zj" + }, + "type": "object", + "properties": { + "org_id": { + "type": "string", + "x-stoplight": { + "id": "otu437vy8o9m4" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "iqi70origyrml" + } + }, + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "j4q0jvsik5xfl" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "8xlxngqfeu81e" + } + }, + "artifact": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + }, + "orchestration": { + "$ref": "#/components/schemas/OrchestrationModelPipeline" + }, + "enforcement": { + "$ref": "#/components/schemas/EnforcementModelPipeline" + }, + "slsa": { + "$ref": "#/components/schemas/SlsaModelPipeline" + }, + "verification": { + "$ref": "#/components/schemas/IntegrityVerificationModelPipeline" + } + } + }, + "ArtifactModelPipeline": { + "title": "ArtifactModelPipeline", + "x-stoplight": { + "id": "61ctnoe7t4ss3" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "yefth9vlf9svq" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "tv59jsryuwpbn" + }, + "enum": [ + "image", + "repository" + ] + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "1pqx5aj5zkzlf" + } + }, + "registry_url": { + "type": "string", + "x-stoplight": { + "id": "2d0pchss1tcw3" + } + }, + "variant": { + "$ref": "#/components/schemas/ArtifactVariant" + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "69micl0vn4rn8" + } + }, + "digest": { + "type": "string", + "x-stoplight": { + "id": "6z1z7v5v1zv5z" + } + }, + "metadata": { + "type": "object", + "additionalProperties": true, + "x-stoplight": { + "id": "bcmiu856m2sf8" + } + }, + "source_id": { + "type": "string", + "x-stoplight": { + "id": "fstrqsl3noow2" + } + } + } + }, + "OrchestrationModelPipeline": { + "title": "OrchestrationModePipeline", + "x-stoplight": { + "id": "61x767p8t90t2" + }, + "type": "object", + "properties": { + "scorecard": { + "type": "object", + "x-stoplight": { + "id": "ci34722bpbodk" + }, + "properties": { + "avg_score": { + "type": "string", + "x-stoplight": { + "id": "ewa6ci4p65agj" + } + }, + "max_score": { + "type": "string", + "x-stoplight": { + "id": "3nj5re44p2k22" + } + } + } + }, + "orchestration_id": { + "type": "string", + "x-stoplight": { + "id": "u1o02n7nepeuy" + } + }, + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "vplf4ny64cwtg" + } + }, + "stage_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "o99jmwgk54yzx" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "9k096jp7uh1tj" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "11j0xvak1mwzi" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "vcpzjyxv1p82p" + } + }, + "step_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "x63abctu3ltn5" + } + }, + "drift": { + "$ref": "#/components/schemas/ArtifactSbomDriftResponse" + } + } + }, + "EnforcementModelPipeline": { + "title": "EnforcementModelPipeline", + "x-stoplight": { + "id": "ut3o0hygwe7ix" + }, + "type": "object", + "properties": { + "enforcement_id": { + "type": "string", + "x-stoplight": { + "id": "b2hgfv4mj8241" + } + }, + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "oz5ws0a02laui" + } + }, + "stage_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "whewc03m3qozi" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "ikgtltwwdg0rw" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "orepr0579uyzj" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "kbee31r1eoczc" + } + }, + "step_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "yjzg8nk78u4iu" + } + }, + "violations": { + "type": "object", + "x-stoplight": { + "id": "rvy4v3poiwxzh" + }, + "properties": { + "allow_list_violation_count": { + "type": "integer", + "x-stoplight": { + "id": "t7h07x2uykclv" + } + }, + "deny_list_violation_count": { + "type": "integer", + "x-stoplight": { + "id": "x443igjdrgko3" + } + } + } + } + } + }, + "LicenseUsageResponse": { + "title": "LicenseUsageResponse", + "x-stoplight": { + "id": "c36braq0f3evu" + }, + "type": "object", + "properties": { + "usage_data": { + "type": "object", + "x-stoplight": { + "id": "bot9tmrtxm152" + }, + "required": [ + "count", + "display_name" + ], + "properties": { + "count": { + "type": "integer", + "x-stoplight": { + "id": "pe3bi8gacqu49" + }, + "format": "int64" + }, + "display_name": { + "type": "string", + "x-stoplight": { + "id": "4eiel8gv2jxyo" + } + }, + "references": { + "type": "object", + "x-stoplight": { + "id": "jmhjop6pvx67w" + }, + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "ckuo9wyjqg2xv" + } + }, + "identifier": { + "type": "string", + "x-stoplight": { + "id": "65762ek67pl3z" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "2vk0svvxj975y" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "t1ydg69ht7ii9" + } + }, + "account": { + "type": "string", + "x-stoplight": { + "id": "60ibjwoyuorkb" + } + }, + "count": { + "type": "string", + "x-stoplight": { + "id": "lbo24xvew0we9" + } + } + } + } + } + }, + "active_developers": { + "type": "object", + "x-stoplight": { + "id": "hxum0rydu8tl1" + }, + "properties": { + "count": { + "type": "integer", + "format": "int64" + }, + "display_name": { + "type": "string", + "x-stoplight": { + "id": "22bipiwuhcqck" + } + } + } + } + } + }, + "SlsaModelPipeline": { + "title": "SlsaModelPipeline", + "x-stoplight": { + "id": "1z6mnbbfer07f" + }, + "type": "object", + "properties": { + "provenance": { + "type": "object", + "x-stoplight": { + "id": "29j0fyhin0nuj" + }, + "properties": { + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "rqs5xr64xzbxo" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "6ybgbfkjwuufx" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "arvcco3se0mxz" + } + }, + "stage_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "yz44a4c1khoxk" + } + }, + "step_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "gbr8qzstojw7k" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "pnrz6vu99auuc" + } + } + } + }, + "verification": { + "type": "object", + "x-stoplight": { + "id": "ikcpg6cglf5wi" + }, + "properties": { + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "4az31tpd3pkqi" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "bp57ajwvnyaxp" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "djmajul37bqb9" + } + }, + "stage_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "8u6s0pzqjd3vf" + } + }, + "step_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "yhftfabswfwb2" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "lmhd1iss860xs" + } + }, + "verification_details": { + "type": "object", + "x-stoplight": { + "id": "qvol899j1bvrm" + }, + "properties": { + "verification_status": { + "type": "string", + "x-stoplight": { + "id": "2vckjnzizsiaf" + }, + "enum": [ + "passed", + "failed" + ] + }, + "policy_enforcement_status": { + "type": "string", + "x-stoplight": { + "id": "mjtplnggn4n6m" + } + } + } + } + } + } + } + }, + "ArtifactListingPipelineRequestBody": { + "title": "ArtifactListingPipelineRequestBody", + "x-stoplight": { + "id": "d4ha2g16j957p" + }, + "type": "object", + "properties": { + "search_term": { + "type": "string", + "x-stoplight": { + "id": "dlr5jr8z718u8" + }, + "description": "Search Artifact By name" + }, + "artifact_type": { + "type": "string", + "x-stoplight": { + "id": "w4rkgep4sfhkl" + }, + "description": "Filter Artifacts By type", + "enum": [ + "image", + "repository" + ] + } + } + }, + "SLSAVerificationRequestBody": { + "title": "SLSAVerificationRequestBody", + "x-stoplight": { + "id": "8t7dukf8hgxhy" + }, + "type": "object", + "properties": { + "org": { + "type": "string", + "x-stoplight": { + "id": "f9j8whl2ap87r" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "7xexwfd9yzhob" + } + }, + "pipeline": { + "type": "string", + "x-stoplight": { + "id": "qvmd24rnyqbhr" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "ufenkf0qyywbl" + } + }, + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "6g9gqvcnpp9n3" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "2ztsfqskl6q25" + } + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "wf9a2j94b5qrk" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "3efo8vqhonnn0" + } + }, + "stage_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "49tn13u10i0bc" + } + }, + "step_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "rxkn3zxxzsfb0" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "1v0an7wa3axp3" + } + }, + "artifact": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + }, + "verification_status": { + "type": "string", + "x-stoplight": { + "id": "qqz5h836cnx7p" + }, + "enum": [ + "passed", + "failed" + ] + }, + "provenance": { + "type": "string", + "x-stoplight": { + "id": "0hfc9st05b64o" + } + } + } + }, + "SLSAVerificationRequestBodyV2": { + "title": "SLSAVerificationRequestBody", + "x-stoplight": { + "id": "8t7dukf8hgxhy" + }, + "type": "object", + "required": [ + "provenance_data" + ], + "properties": { + "artifact": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + }, + "verification_status": { + "type": "string", + "x-stoplight": { + "id": "qqz5h836cnx7p" + }, + "enum": [ + "passed", + "failed" + ] + }, + "provenance_data": { + "type": "string", + "x-stoplight": { + "id": "0hfc9st05b64o" + } + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + } + } + }, + "ProvenanceRequestBody": { + "title": "ProvenanceRequestBody", + "x-stoplight": { + "id": "7fk0tu5tr18ey" + }, + "type": "object", + "properties": { + "org": { + "type": "string", + "x-stoplight": { + "id": "u3gqutc6vlo6v" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "2z51gqtxdq39v" + } + }, + "pipeline": { + "type": "string", + "x-stoplight": { + "id": "pgg4s4tnf1plj" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "fblunix2vocn2" + } + }, + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "flprgshzh6e67" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "hju8gww2fjn05" + } + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "dr7zlbpy69e90" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "6c9o2p3443die" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "otzukpaffwzds" + } + }, + "stage_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "ge6l6xduq9gas" + } + }, + "step_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "8z5ck5yv128zc" + } + }, + "artifact": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + } + }, + "provenance": { + "type": "string", + "x-stoplight": { + "id": "dhufvf7s3aoh6" + } + } + } + }, + "ProvenanceRequestBodyV2": { + "title": "ProvenanceRequestBody", + "x-stoplight": { + "id": "7fk0tu5tr18ey" + }, + "type": "object", + "required": [ + "provenance_data" + ], + "properties": { + "artifact": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + } + }, + "provenance_data": { + "type": "string", + "x-stoplight": { + "id": "dhufvf7s3aoh6" + } + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + } + } + }, + "ProvenanceResponseBody": { + "title": "ProvenanceResponseBody", + "x-stoplight": { + "id": "4ha9dk07nj6sy" + }, + "type": "object", + "properties": { + "provenance": { + "type": "string", + "x-stoplight": { + "id": "z7ob40xv3x4gx" + } + } + } + }, + "PolicyViolationRequestBody": { + "title": "PolicyViolationRequestBody", + "x-stoplight": { + "id": "jfyn73ecqkty5" + }, + "type": "object", + "properties": { + "violations": { + "type": "integer", + "x-stoplight": { + "id": "fh5lq1tv0m3ng" + } + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "clpjrz44aod7m" + } + } + }, + "/v1/orgs/{org}/projects/{project}/ssca-config/pipeline-store": null + }, + "parameters": [ + { + "$ref": "#/components/parameters/OrgParam" + }, + { + "$ref": "#/components/parameters/ProjectParam" + } + ], + "post": { + "summary": "Save SPM Pipeline Remote Configs", + "operationId": "savePipelineRemoteConfig", + "tags": [ + "PipelineStoreConfig" + ], + "responses": { + "200": { + "description": "Shared Response" + }, + "400": { + "description": "Bad Request" + }, + "500": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Error" + } + } + }, + "description": "Internal Server Error" + } + }, + "security": [ + { + "x-api-key": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/AccountHeader" + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/PipelineStoreConfigRequestBody" + } + }, + "CategoryScorecardCheck": { + "title": "CategoryScorecardCheck", + "x-stoplight": { + "id": "plkv9ik7nxsj7" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "omu3b0fjthf9l" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "ujytl7crx3jfj" + } + }, + "score": { + "type": "string", + "x-stoplight": { + "id": "hyd61bdewsrqp" + } + }, + "max_score": { + "type": "string", + "x-stoplight": { + "id": "xjw7p46j8yo1t" + } + }, + "is_enabled": { + "type": "string", + "x-stoplight": { + "id": "b66zw233nwij6" + } + } + } + }, + "SbomMetadataV2": { + "title": "SbomMetadataV2", + "x-stoplight": { + "id": "4na922okidtvc" + }, + "type": "object", + "required": [ + "name", + "format", + "tool_name", + "tool_version" + ], + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "0160bbgwts3sz" + } + }, + "format": { + "type": "string", + "minLength": 3, + "example": "spdx-json" + }, + "tool_name": { + "type": "string", + "minLength": 3, + "example": "synk", + "x-stoplight": { + "id": "ic4qf7a3stbw7" + } + }, + "tool_version": { + "type": "string", + "x-stoplight": { + "id": "1mfkoo8p7i071" + } + }, + "created": { + "type": "number", + "x-stoplight": { + "id": "ldh7rwijoj89o" + } + }, + "sbom_version": { + "type": "string", + "x-stoplight": { + "id": "feovw69zekn4x" + } + }, + "tool_vendor": { + "type": "string", + "x-stoplight": { + "id": "cbdqudq2dotry" + } + } + } + }, + "ExecutionContext": { + "title": "ExecutionContext", + "x-stoplight": { + "id": "7o6l08qrn9k92" + }, + "type": "object", + "required": [ + "pipeline_id", + "stage_id", + "sequence_id", + "pipeline_execution_id", + "step_id", + "step_execution_id", + "stage_execution_id" + ], + "properties": { + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "2ggh8qbfitm2h" + } + }, + "stage_id": { + "type": "string", + "x-stoplight": { + "id": "nr3flmafic61d" + } + }, + "sequence_id": { + "type": "string", + "x-stoplight": { + "id": "eahgdg9y3657d" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "9pmcytlzquu73" + } + }, + "step_id": { + "type": "string", + "example": "Orchestrate", + "x-stoplight": { + "id": "v1lrfnusqdk4s" + } + }, + "build_url": { + "type": "string", + "example": "https://app.harness.io/ng/#/account/acc/ci/orgs/org/projects/dummyProject/pipelines/CKO_SSCA_Pipeline/executions/q940CvjoQj-GEInJQfWiwg/pipeline?storeType=INLINE" + }, + "step_execution_id": { + "type": "string", + "example": "betatest1" + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "agubor4ho34r5" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "r1ir58caw421i" + } + }, + "stage_execution_id": { + "type": "string", + "x-stoplight": { + "id": "u8z5q12sxlz7a" + } + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "h8ulrl6swxcbf" + }, + "description": "Stage type of the step\n" + } + } + }, + "SaveOrchestrationRequest": { + "title": "SaveOrchestrationRequest", + "x-stoplight": { + "id": "5tb5gd8m5ehto" + }, + "type": "object", + "required": [ + "artifact", + "sbom_metadata", + "attestation" + ], + "properties": { + "components": { + "type": "array", + "x-stoplight": { + "id": "x8wtamg34sbym" + }, + "items": { + "$ref": "#/components/schemas/SbomComponentRequestDTO" + } + }, + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "sbom_metadata": { + "$ref": "#/components/schemas/SbomMetadataV2" + }, + "attestation": { + "$ref": "#/components/schemas/Attestation" + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionContext" + } + } + }, + "SaveOrchestrationRequestV2": { + "title": "SaveOrchestrationRequest", + "x-stoplight": { + "id": "5tb5gd8m5ehto" + }, + "type": "object", + "required": [ + "artifact", + "sbom_metadata", + "attestation" + ], + "properties": { + "components": { + "type": "array", + "x-stoplight": { + "id": "x8wtamg34sbym" + }, + "items": { + "$ref": "#/components/schemas/SbomComponentRequestDTO" + } + }, + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "sbom_metadata": { + "$ref": "#/components/schemas/SbomMetadataV2" + }, + "attestation": { + "$ref": "#/components/schemas/Attestation" + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + } + } + }, + "SaveOrchestrationResponseBody": { + "title": "SaveOrchestrationResponseBody", + "x-stoplight": { + "id": "ud8owob6dy3nb" + }, + "type": "object", + "required": [ + "artifact_id" + ], + "properties": { + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "wrz7jes211t3j" + } + } + } + }, + "PluginResponseBody": { + "title": "PluginResponseBody", + "type": "object", + "required": [ + "source_id", + "artifact", + "response_url" + ], + "properties": { + "source_id": { + "type": "string", + "x-stoplight": { + "id": "itkxv1ghux6aa" + } + }, + "artifact": { + "type": "object", + "x-stoplight": { + "id": "ysaq85xiuzjsw" + }, + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "sgyd78hu7w5gl" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "khrj2i162jh3x" + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "zgc35mjt90crt" + } + } + } + }, + "response_url": { + "type": "string", + "x-stoplight": { + "id": "uadidz06nvmyn" + } + } + } + }, + "ArtifactComponentsRequestBody": { + "title": "ArtifactComponentsRequestBody", + "x-stoplight": { + "id": "45pb19tb7yncu" + }, + "type": "object", + "required": [ + "artifact" + ], + "properties": { + "artifact": { + "$ref": "#/components/schemas/ContainerArtifactFilter" + } + } + }, + "ArtifactComponentsResponseBody": { + "title": "ArtifactComponentsResponseBody", + "x-stoplight": { + "id": "bc82hi7wvhio9" + }, + "type": "object", + "properties": { + "artifact": { + "$ref": "#/components/schemas/Artifact1" + }, + "org_id": { + "type": "string", + "x-stoplight": { + "id": "uah149juuwja2" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "3m8u5nranuszo" + } + }, + "components": { + "type": "array", + "x-stoplight": { + "id": "w29wzy3d6tr5f" + }, + "items": { + "$ref": "#/components/schemas/ComponentSummary" + } + } + } + }, + "ContainerArtifactFilter": { + "title": "ContainerArtifactFilter", + "x-stoplight": { + "id": "r5j97yhalgdbh" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "26o2s59783s4x" + } + }, + "digest": { + "type": "string", + "x-stoplight": { + "id": "0oo6468e7gqkk" + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "iei6g8hzcf59y" + } + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "b638u1kytv431" + } + } + } + }, + "LayerType": { + "title": "LayerType", + "enum": [ + "BASE", + "APP", + "DISTRO" + ], + "x-stoplight": { + "id": "151c5cf8ekave" + } + }, + "Integration": { + "title": "Integration", + "x-stoplight": { + "id": "6axbafhrofhlj" + }, + "type": "object", + "properties": { + "connector_id": { + "type": "string", + "x-stoplight": { + "id": "eo22hombv1onr" + } + }, + "type": { + "x-stoplight": { + "id": "cdadkkovsokz0" + }, + "type": "string", + "enum": [ + "GITHUB", + "HARNESS" + ] + }, + "status": { + "x-stoplight": { + "id": "agclruavjfdgd" + }, + "type": "string", + "enum": [ + "ACTIVE", + "INACTIVE" + ] + }, + "last_scan_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "xq0ekqwxfs0h2" + } + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "gp06vsh5ipdb7" + } + }, + "id": { + "type": "string", + "x-stoplight": { + "id": "v881x9gudjrn9" + } + } + } + }, + "UpdateIntegration": { + "description": "Example response", + "type": "object", + "properties": { + "all_repos_configured": { + "type": "boolean", + "x-stoplight": { + "id": "mzqfyvpcwazsh" + } + }, + "missing_repos": { + "type": "object", + "x-stoplight": { + "id": "ojbz7bwfxr7nc" + }, + "properties": { + "count": { + "type": "integer", + "x-stoplight": { + "id": "ig8gb6hujl1ao" + } + }, + "names": { + "type": "array", + "x-stoplight": { + "id": "bkwtvt92gi2mp" + }, + "items": { + "type": "string", + "x-stoplight": { + "id": "p58wnzr4nvs0a" + } + } + }, + "reason": { + "type": "string", + "x-stoplight": { + "id": "s8khufnak4py8" + } + } + } + } + }, + "x-examples": { + "Example 1": { + "integration_id": "alksdfjals98-23malsdf", + "all_repos_configured": false, + "missing_repos": { + "count": 2, + "names": [ + "repo1", + "repo2" + ], + "reason": "Repo not found" + } + } + } + }, + "CreateIntegrationRequest": { + "title": "CreateIntegrationRequest", + "x-stoplight": { + "id": "eny9m50k3l3m7" + }, + "type": "object", + "properties": { + "installation_id": { + "type": "string", + "x-stoplight": { + "id": "gd9u12jql4ynt" + } + }, + "connector_id": { + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/IntegrationType" + } + } + }, + "Error2": { + "title": "Response ErrorDTO", + "type": "object", + "properties": { + "status": { + "type": "integer" + }, + "code": { + "type": "string" + }, + "message": { + "type": "string" + } + }, + "required": [ + "code", + "message" + ] + }, + "RepoDetailsDTO": { + "title": "RepoDetailsDTO", + "x-stoplight": { + "id": "eihp15s8nv92s" + }, + "type": "object", + "required": [ + "name" + ], + "properties": { + "visibility": { + "x-stoplight": { + "id": "ez0edh2q63cx2" + }, + "type": "string", + "enum": [ + "PUBLIC", + "PRIVATE", + "INTERNAL" + ] + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "nxbdl5uhz9o08" + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "7d09rjt1h1dgf" + } + }, + "owner": { + "type": "string", + "x-stoplight": { + "id": "x5vboqzmz2d6e" + } + }, + "branch": { + "type": "string", + "x-stoplight": { + "id": "oi7kymx5agh5l" + } + }, + "id": { + "type": "string", + "x-stoplight": { + "id": "0rxqrs8wzvqk7" + } + }, + "size": { + "type": "string", + "x-stoplight": { + "id": "0rxqrs8wfvqk7" + } + } + } + }, + "IntegrationType": { + "title": "IntegrationType", + "x-stoplight": { + "id": "esn5ncpsf2q8l" + }, + "enum": [ + "GITHUB", + "HARNESS" + ] + }, + "ComplianceCheck": { + "type": "object", + "x-examples": { + "Example 1": { + "can_execute": true, + "compliance_id": "1.2.1", + "category": "Source Code", + "category_id": "1", + "sub_category": "Repository Management", + "sub_category_id": "1.2", + "title": "Ensure all public repositories contain a SECURITY.md file", + "severity": "LOW", + "type": "SCM", + "entity": "REPOSITORY", + "description": "SECURITY.md file is a security policy file, which gives people instructions when they are reporting security vulnerabilities in a project. When someone creates an issue in that project, a link to the SECURITY.md file will be shown.", + "remediation": "For each repository in use, create a SECURITY.md file and save it in the documents or root directory of the repository.", + "integrations": [ + "GITHUB" + ], + "standards": [ + "CIS" + ], + "tags": [ + "CIS-1.2.1" + ], + "url": "https://avd.aquasec.com/compliance/softwaresupplychain/cis-1.0/cis-1.0-sourcecode/1.2", + "scan_type": "REPOSITORY" + } + }, + "description": "Represents Single SSCA Compliance Check", + "required": [ + "compliance_id", + "category", + "category_id", + "title", + "severity", + "type", + "entity", + "description", + "standards", + "sub_category", + "sub_category_id", + "can_execute", + "scan_type" + ], + "properties": { + "compliance_id": { + "type": "string", + "x-stoplight": { + "id": "ak9y7kwry6e2o" + } + }, + "category": { + "type": "string", + "x-stoplight": { + "id": "zvq34yh1ak6nz" + } + }, + "category_id": { + "type": "string", + "x-stoplight": { + "id": "v0fnkw247n211" + } + }, + "title": { + "type": "string" + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "type": { + "$ref": "#/components/schemas/ComplianceCheckType" + }, + "entity": { + "$ref": "#/components/schemas/ComplianceCheckEntityType" + }, + "description": { + "type": "string" + }, + "remediation": { + "type": "string" + }, + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "tags": { + "type": "array", + "items": { + "type": "string", + "x-stoplight": { + "id": "kd1ktfq6vjcvf" + } + } + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "0q36p62mq8bur" + } + }, + "sub_category": { + "type": "string", + "x-stoplight": { + "id": "2iczkwuwdnahe" + } + }, + "sub_category_id": { + "type": "string", + "x-stoplight": { + "id": "hoh6mm0iogk3u" + } + }, + "integrations": { + "type": "array", + "x-stoplight": { + "id": "8fb60msdrzd09" + }, + "items": { + "type": "string" + } + }, + "can_execute": { + "type": "boolean", + "x-stoplight": { + "id": "q0qq16vpi1pf6" + } + }, + "scan_type": { + "$ref": "#/components/schemas/ComplianceScanType" + } + }, + "x-stoplight": { + "id": "vlfta3sppng1w" + } + }, + "ComplianceCheckType": { + "title": "ComplianceCheckType", + "type": "string", + "x-stoplight": { + "id": "172pz2p0c2bc1" + }, + "enum": [ + "SCM", + "ARTIFACT", + "BUILD", + "DEPENDENCIES" + ], + "description": "Represents Type of Compliance Check" + }, + "ComplianceFilter": { + "title": "ComplianceFilter", + "x-stoplight": { + "id": "2s5vjjncxduj6" + }, + "type": "object", + "properties": { + "standards": { + "x-stoplight": { + "id": "93rw59dvxegw7" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "type": { + "$ref": "#/components/schemas/ComplianceCheckType" + }, + "entity": { + "$ref": "#/components/schemas/ComplianceCheckEntityType" + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "search_term": { + "type": "string", + "x-stoplight": { + "id": "l10xdz7ssp9vn" + } + }, + "integrations_filter": { + "type": "array", + "x-stoplight": { + "id": "9vnhu1ikeqtxh" + }, + "items": { + "$ref": "#/components/schemas/ComplianceStandardsFilterEntity" + } + } + } + }, + "ComplianceCheckEntityType": { + "title": "ComplianceCheckEntityType", + "type": "string", + "x-stoplight": { + "id": "c9u1ph0w9r2pc" + }, + "enum": [ + "REPOSITORY", + "ORGANIZATION", + "BRANCH", + "PACKAGEREGISTRY", + "PIPELINE", + "DEPENDENCIES", + "All" + ], + "description": "Represents entity type on which compliance check is applicable" + }, + "ComplianceStandardType": { + "title": "ComplianceStandardType", + "type": "string", + "x-stoplight": { + "id": "hqwyia5x65e2x" + }, + "enum": [ + "CIS", + "OWASP" + ] + }, + "ArtifactSourcesListingResponse": { + "title": "ArtifactSourcesListingResponse", + "x-stoplight": { + "id": "0ledarfaonfm8" + }, + "type": "object", + "properties": { + "source_id": { + "type": "string", + "x-stoplight": { + "id": "uyispgbipmns3" + }, + "description": "Identifier of the Artifact Source" + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "4683hqfn3uwk4" + }, + "description": "Artifact Registry url" + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "l0ig1j04d1icc" + }, + "description": "Artifact name" + }, + "count": { + "type": "integer", + "x-stoplight": { + "id": "b1z2ixivcm5kv" + }, + "description": "Count of artifacts with the given url and name." + }, + "deployments": { + "$ref": "#/components/schemas/Deployments" + }, + "sto_issue_count": { + "$ref": "#/components/schemas/StoIssueCount" + } + } + }, + "ArtifactV2ListingResponse": { + "type": "object", + "x-stoplight": { + "id": "963kgsf6l6o5x" + }, + "x-examples": {}, + "title": "ArtifactV2ListingResponse", + "properties": { + "id": { + "type": "string", + "description": "Artifact ID" + }, + "digest": { + "type": "string", + "x-stoplight": { + "id": "05r9msnbxlpwq" + }, + "description": "Digest of the Artifact" + }, + "name": { + "type": "string", + "description": "Artifact Name" + }, + "tags": { + "type": "array", + "x-stoplight": { + "id": "6qeg5nzw8an2j" + }, + "items": { + "x-stoplight": { + "id": "fnvzg8zbc8iun" + }, + "type": "string" + } + }, + "url": { + "type": "string", + "description": "Artifact Origin URL" + }, + "metadata": { + "type": "object" + }, + "components_count": { + "type": "integer", + "description": "Number of components of the artifact" + }, + "updated": { + "type": "string", + "description": "Last updated time of the artifact" + }, + "scorecard": { + "type": "object", + "properties": { + "max_score": { + "type": "string", + "description": "Maximum score of the artifact SBOM" + }, + "avg_score": { + "type": "string", + "description": "Average score of the artifact SBOM" + } + } + }, + "policy_enforcement": { + "type": "object", + "x-stoplight": { + "id": "gy1y5dicgpypq" + }, + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "n4wdtm6y3ifje" + }, + "description": "Enforcement Step Id for the artifact lastest enfrocement." + }, + "allow_list_violation_count": { + "type": "string", + "x-stoplight": { + "id": "93fyhq0f48926" + }, + "description": "Count of the allow list policy violations" + }, + "deny_list_violation_count": { + "type": "string", + "x-stoplight": { + "id": "qkv64n8a15xb3" + }, + "description": "Count of the deny list policy violations" + } + } + }, + "deployment": { + "type": "object", + "x-stoplight": { + "id": "fybqbfp2x69l3" + }, + "properties": { + "prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "wux3zmbktqqs0" + }, + "description": "Count of production environment this artifact is currently deployed." + }, + "non_prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "vqey9t8s156s4" + }, + "description": "Count of pre-production environment this artifact is currently deployed." + } + } + }, + "orchestration": { + "type": "object", + "x-stoplight": { + "id": "hchdgdaay5ros" + }, + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "hwqaymud6ahig" + }, + "description": "Orchestration step execution ID for the aritfact." + }, + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "t6jtif1llpafh" + }, + "description": "Build pipeline Id used for orchestration of the artifact" + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "ojs3ry10yq7em" + }, + "description": "Build pipeline execution Id used for orchestration of the artifact" + } + } + }, + "sto_issue_count": { + "$ref": "#/components/schemas/StoIssueCount" + }, + "signing": { + "$ref": "#/components/schemas/IntegrityVerification" + } + } + }, + "ConfigureReposRequest": { + "title": "ConfigureReposRequest", + "x-stoplight": { + "id": "uyhoz22jjl5wa" + }, + "type": "object", + "properties": { + "include_all_repos": { + "type": "boolean", + "x-stoplight": { + "id": "xymwue0lwsv5i" + }, + "default": false + }, + "repositories": { + "type": "array", + "x-stoplight": { + "id": "hntwo5gylga5s" + }, + "items": { + "$ref": "#/components/schemas/RepoDetailsDTO" + } + } + }, + "description": "" + }, + "BaselineV2RequestBody": { + "title": "BaselineV2RequestBody", + "x-stoplight": { + "id": "y60iad0s15yud" + }, + "type": "object", + "properties": { + "artifact_id": { + "type": "string", + "x-stoplight": { + "id": "b0k4daa1bufjy" + }, + "description": "Artifact Id of artifact to be set as baseline" + } + } + }, + "ComplianceResult": { + "type": "object", + "x-examples": {}, + "required": [ + "compliance_id", + "compliance_val", + "category", + "category_id", + "standards", + "severity", + "reason", + "status", + "remediation", + "entity", + "sub_category", + "sub_category_id" + ], + "properties": { + "compliance_id": { + "type": "string", + "x-stoplight": { + "id": "l9pks9athcp51" + } + }, + "compliance_val": { + "type": "integer", + "x-stoplight": { + "id": "u21ksorb3iewy" + }, + "example": 110 + }, + "title": { + "type": "string" + }, + "category": { + "type": "string" + }, + "category_id": { + "type": "string", + "x-stoplight": { + "id": "kg7ooi3esk292" + } + }, + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "description": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "reason": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/ComplianceResultStatus" + }, + "remediation": { + "type": "string" + }, + "url": { + "type": "string" + }, + "entity": { + "$ref": "#/components/schemas/ComplianceCheckEntityType" + }, + "sub_category": { + "type": "string", + "x-stoplight": { + "id": "t6uyz63sy5k68" + } + }, + "sub_category_id": { + "type": "string", + "x-stoplight": { + "id": "gz47g56itzdmu" + } + }, + "occurrences": { + "type": "array", + "x-stoplight": { + "id": "zgqjsm3l2x3xr" + }, + "items": { + "$ref": "#/components/schemas/ComplianceOccurrenceDTO" + } + } + }, + "x-stoplight": { + "id": "sxoz6cpmag92w" + } + }, + "ComplianceResultFilter": { + "type": "object", + "x-examples": { + "Example 1": { + "standards": [ + "OSWAP" + ], + "severity": "High", + "result": "Pass/Fail/Unknown", + "compliance_id": "1.1.1" + } + }, + "x-stoplight": { + "id": "vi62tlx38whfy" + }, + "properties": { + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "status": { + "$ref": "#/components/schemas/ComplianceResultStatus" + }, + "compliance_id": { + "type": "string" + }, + "search_term": { + "type": "string", + "x-stoplight": { + "id": "42wz9mcka07j4" + } + }, + "scan_types": { + "x-stoplight": { + "id": "kp8bgb4ba4i1q" + }, + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceScanType" + } + } + } + }, + "ComplianceResultDTO": { + "type": "object", + "x-examples": {}, + "required": [ + "compliance_id", + "scm_platform", + "title", + "category", + "category_id", + "standards", + "description", + "severity", + "reason", + "status", + "remediation", + "entity", + "type", + "sub_category", + "sub_category_id" + ], + "properties": { + "repo_url": { + "type": "string" + }, + "compliance_id": { + "type": "string" + }, + "scm_platform": { + "type": "string" + }, + "title": { + "type": "string" + }, + "category": { + "type": "string" + }, + "category_id": { + "type": "string" + }, + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "description": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "reason": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/ComplianceResultStatus" + }, + "remediation": { + "type": "string" + }, + "url": { + "type": "string" + }, + "entity": { + "$ref": "#/components/schemas/ComplianceCheckEntityType" + }, + "type": { + "$ref": "#/components/schemas/ComplianceCheckType" + }, + "sub_category": { + "type": "string", + "x-stoplight": { + "id": "n601b1is8kj1o" + } + }, + "sub_category_id": { + "type": "string", + "x-stoplight": { + "id": "9a1i8xv2h02g2" + } + } + }, + "x-stoplight": { + "id": "d289c0pet70he" + } + }, + "ListIntegrationReposResponse": { + "title": "ListIntegrationReposResponse", + "x-stoplight": { + "id": "jx70puazwzas1" + }, + "type": "object", + "properties": { + "include_all_repos": { + "type": "boolean", + "x-stoplight": { + "id": "0k4btbe9o81ux" + } + }, + "repositories": { + "type": "array", + "x-stoplight": { + "id": "nnbw016e2blci" + }, + "items": { + "$ref": "#/components/schemas/RepoDetailsDTO" + } + } + } + }, + "CreateComplianceResult": { + "type": "object", + "x-examples": { + "Example 1": { + "repo_url": "string", + "repo_org": "string", + "repo_name": "string", + "default_branch": "string", + "pipeline_execution_identifier": "string", + "step_execution_identifier": "string", + "scm_platform": "string", + "results": [ + { + "compliance_id": "string", + "title": "string", + "category": "string", + "category_id": "string", + "type": "SCM", + "standards": [ + "CIS" + ], + "description": "string", + "tags": [ + "string" + ], + "severity": "string", + "reason": "string", + "status": "string", + "remediation": "string", + "url": "string", + "entity": "REPOSITORY" + } + ], + "stage_execution_identifier": "string", + "pipeline": "string" + } + }, + "x-stoplight": { + "id": "crbwzlzs27g42" + }, + "properties": { + "repo_url": { + "type": "string" + }, + "repo_org": { + "type": "string" + }, + "repo_name": { + "type": "string" + }, + "default_branch": { + "type": "string" + }, + "pipeline_execution_identifier": { + "type": "string" + }, + "step_execution_identifier": { + "type": "string" + }, + "scm_platform": { + "type": "string" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceResult" + } + }, + "stage_execution_identifier": { + "type": "string" + }, + "pipeline": { + "type": "string" + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "us5qtvrch01yx" + } + } + } + }, + "CreateComplianceResultV2": { + "type": "object", + "x-stoplight": { + "id": "16fsbiusxpwm1" + }, + "x-examples": { + "Example 1": { + "url": "https://github.com/repo-posture/cicd-goat", + "org": "repo-posture", + "source_platform": "GITHUB", + "scan_type": "CICD", + "name": "release.yml", + "full_fqn": "https://github.com/repo-posture/cicd-goat/blob/master/.github/workflows/release.yml", + "default_branch": "master", + "pipeline_execution_identifier": "string", + "step_execution_identifier": "string", + "stage_execution_identifier": "string", + "pipeline_identifier": "string", + "results": [ + { + "compliance_id": "string", + "compliance_val": 123, + "title": "string", + "category": "string", + "category_id": "string", + "type": "SCM", + "standards": [ + "CIS" + ], + "description": "string", + "tags": [ + "string" + ], + "severity": "string", + "reason": "string", + "status": "string", + "remediation": "string", + "url": "string", + "entity": "REPOSITORY", + "occurrences": [ + { + "snippet": "string", + "snippet_url": "string", + "line_number": 123 + } + ] + } + ], + "plugins": [ + { + "name": "actions/checkout", + "version": "v2", + "path_from_root": "string" + } + ] + } + }, + "title": "CreateComplianceResultV2", + "required": [ + "url", + "name", + "scan_type", + "source_platform", + "results" + ], + "properties": { + "url": { + "type": "string", + "x-stoplight": { + "id": "jnajrpongor60" + }, + "description": "Represents Source URL." + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "4v0893lp7mtr8" + }, + "description": "Represents organization." + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "gsuu5ghgjctvu" + }, + "description": "Name of entity for compliance results." + }, + "full_fqn": { + "type": "string", + "x-stoplight": { + "id": "urjujxeot10dk" + }, + "description": "Fully qualified name of entity. \nUses entire URL and name to depict same." + }, + "default_branch": { + "type": "string", + "description": "Branch for scan." + }, + "scan_type": { + "$ref": "#/components/schemas/ComplianceScanType" + }, + "source_platform": { + "x-stoplight": { + "id": "9v0at3udg36rh" + }, + "type": "string", + "enum": [ + "GITHUB", + "HARNESS" + ], + "description": "Source platform enum. \nExample: GITHUB, HARNESS" + }, + "step_execution_identifier": { + "type": "string" + }, + "pipeline_execution_identifier": { + "type": "string" + }, + "pipeline_identifier": { + "type": "string", + "x-stoplight": { + "id": "jypmkd8wicqlh" + } + }, + "stage_execution_identifier": { + "type": "string" + }, + "results": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceResult" + } + }, + "plugins": { + "type": "array", + "x-stoplight": { + "id": "8ti0weon56jlx" + }, + "items": { + "$ref": "#/components/schemas/PluginDTO" + } + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "zyzsfpyieg5to" + } + } + } + }, + "ComplianceCheckSeverity": { + "title": "ComplianceCheckSeverity", + "type": "string", + "x-stoplight": { + "id": "kpbii4pjiw1ff" + }, + "enum": [ + "CRITICAL", + "HIGH", + "MEDIUM", + "LOW" + ] + }, + "ComplianceResultStatus": { + "title": "ComplianceResultStatus", + "type": "string", + "x-stoplight": { + "id": "g7eq9rgfjalfb" + }, + "enum": [ + "PASSED", + "FAILED", + "UNKNOWN" + ] + }, + "ArtifactV2Overview": { + "type": "object", + "x-examples": null, + "title": "ArtifactV2Overview", + "x-stoplight": { + "id": "mupnp70njtgn7" + }, + "required": [ + "name", + "url" + ], + "properties": { + "id": { + "type": "string", + "description": "Artifact Identifier" + }, + "name": { + "type": "string", + "description": "Artifact Name" + }, + "url": { + "type": "string", + "description": "Artifact URL" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "digest": { + "type": "string", + "description": "digest of the artifact" + }, + "updated": { + "type": "string", + "description": "Last Updated time of artifact" + }, + "metadata": { + "type": "object" + }, + "sto_issue_count": { + "$ref": "#/components/schemas/StoIssueCount" + }, + "deployments": { + "$ref": "#/components/schemas/Deployments" + }, + "sbom_details": { + "$ref": "#/components/schemas/SBOMInfo" + }, + "pipeline_details": { + "$ref": "#/components/schemas/PipelineDetails" + }, + "violations": { + "$ref": "#/components/schemas/Violations" + }, + "scorecard": { + "$ref": "#/components/schemas/Scorecard1" + }, + "slsa_details": { + "$ref": "#/components/schemas/SLSADetails1" + }, + "source_id": { + "type": "string", + "x-stoplight": { + "id": "i8uxq3e1vcpkh" + } + }, + "signing": { + "$ref": "#/components/schemas/IntegrityVerification" + } + } + }, + "RunnerDetail": { + "title": "RunnerDetail", + "x-stoplight": { + "id": "az0wfdkk6eanj" + }, + "type": "object", + "discriminator": { + "propertyName": "type", + "mapping": { + "harness": "#/components/schemas/HarnessRunnerDetail", + "github": "#/components/schemas/GithubRunnerDetail" + } + }, + "properties": { + "type": { + "type": "string", + "enum": [ + "harness", + "github" + ] + } + } + }, + "HarnessRunnerDetail": { + "title": "HarnessRunnerDetail", + "x-discriminator-value": "harness", + "allOf": [ + { + "$ref": "#/components/schemas/RunnerDetail" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "harness" + ], + "description": "This specifies the type of Runner" + }, + "trigger_type": { + "type": "string", + "x-stoplight": { + "id": "rzkmd5bqoc9r9" + } + }, + "trigger_by_id": { + "type": "string", + "x-stoplight": { + "id": "b36ytjxzv2yq6" + } + }, + "trigger_by_name": { + "type": "string", + "x-stoplight": { + "id": "a7g4t02vts8gf" + } + } + } + } + ] + }, + "GithubRunnerDetail": { + "title": "GithubRunnerDetail", + "x-discriminator-value": "github", + "allOf": [ + { + "$ref": "#/components/schemas/RunnerDetail" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "github" + ], + "description": "This specifies the type of Runner" + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "x0aeloqpvaybd" + } + }, + "account_id": { + "type": "string", + "x-stoplight": { + "id": "aod8pc43fmjbt" + } + } + } + } + ] + }, + "ExecutionContextV2": { + "title": "ExecutionContextV2", + "type": "object", + "description": "Details of the Execution Context", + "required": [ + "type" + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "harness": "#/components/schemas/HarnessExecutionContext", + "github": "#/components/schemas/GithubExecutionContext" + } + }, + "properties": { + "type": { + "type": "string", + "enum": [ + "harness", + "github" + ] + } + } + }, + "HarnessExecutionContext": { + "title": "HarnessExecutionContext", + "x-discriminator-value": "harness", + "allOf": [ + { + "$ref": "#/components/schemas/ExecutionContextV2" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "harness" + ], + "description": "This specifies the type of context" + }, + "org": { + "type": "string", + "x-stoplight": { + "id": "zf78rh1u21y55" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "lghyhop0hsg0f" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "svsw1myd4slwa" + } + }, + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "6ms1cohmjf8rv" + } + }, + "pipeline_name": { + "type": "string", + "x-stoplight": { + "id": "qecka5f2dfvxx" + } + }, + "sequence_id": { + "type": "string", + "x-stoplight": { + "id": "tvb3c7trq28pt" + } + }, + "step_id": { + "type": "string", + "x-stoplight": { + "id": "bj8ul3cpt9061" + } + }, + "step_execution_id": { + "type": "string", + "x-stoplight": { + "id": "eyon9kxjzpuu5" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "li446ik3qfg8l" + } + }, + "stage_id": { + "type": "string", + "x-stoplight": { + "id": "uk4e6msb1annk" + } + }, + "stage_execution_id": { + "type": "string", + "x-stoplight": { + "id": "ltrcdcpqky4rv" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "n27q5wlhtrd65" + } + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "22ha61i5fiwzc" + }, + "description": "Stage type in which the step executed", + "enum": [ + "BUILD", + "DEPLOY", + "SECURITY" + ] + }, + "runner_detail": { + "$ref": "#/components/schemas/RunnerDetail" + } + }, + "required": [ + "type" + ] + } + ], + "description": "Harness Pipeline Execution Details" + }, + "GithubExecutionContext": { + "title": "GithubExecutionContext", + "x-discriminator-value": "github", + "x-stoplight": { + "id": "nfcbibnr1z2rw" + }, + "allOf": [ + { + "$ref": "#/components/schemas/ExecutionContextV2" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "github" + ], + "description": "This specifies the type of context" + }, + "repository": { + "type": "string", + "x-stoplight": { + "id": "sac861lasuewn" + } + }, + "github_action": { + "type": "string", + "x-stoplight": { + "id": "l8azkn1th708h" + } + }, + "action_path": { + "type": "string", + "x-stoplight": { + "id": "twcllxr8bibkc" + } + }, + "job_id": { + "type": "string", + "x-stoplight": { + "id": "gxvhjwmosdutz" + } + }, + "run_id": { + "type": "string", + "x-stoplight": { + "id": "cunrcn7ohnpy2" + } + }, + "workflow_ref": { + "type": "string", + "x-stoplight": { + "id": "gnclwe27klokp" + } + }, + "runner_detail": { + "$ref": "#/components/schemas/RunnerDetail" + } + }, + "required": [ + "type" + ] + } + ], + "description": "Github Pipeline Execution Details" + }, + "PipelineDetails": { + "title": "PipelineDetails", + "x-stoplight": { + "id": "rr6hfyn7yqya8" + }, + "type": "object", + "properties": { + "org_id": { + "type": "string", + "x-stoplight": { + "id": "tevm6bc13y3hi" + }, + "description": "Organisation where pipeline is present." + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "7s1mu1n1dan0s" + }, + "description": "Project where pipeline is present." + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "dl352mt8yqdxt" + }, + "description": "Name of the pipeline." + }, + "execution_id": { + "type": "string", + "x-stoplight": { + "id": "tevm6bc13y3hi" + }, + "description": "Execution Id of the pipeline." + }, + "id": { + "type": "string", + "x-stoplight": { + "id": "7s1mu1n1dan0s" + }, + "description": "Id of the pipeline." + }, + "triggered_by": { + "type": "string", + "description": "Name of who trigger the deployment pipeline" + }, + "triggered_by_id": { + "type": "string", + "description": "Id of who trigger the deployment pipeline" + }, + "triggered_at": { + "type": "integer", + "description": "Time of trigger of the deployment pipeline", + "format": "int64", + "nullable": true + }, + "triggered_type": { + "type": "string", + "description": "Trigger type of the deployment pipeline" + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "qqz5h836cnx8e" + }, + "enum": [ + "PASSED", + "FAILED", + "UNKNOWN" + ] + }, + "stage_execution_id": { + "type": "string", + "x-stoplight": { + "id": "68i7ms2hxjctl" + }, + "description": "Execution Id for the Stage" + }, + "step_execution_id": { + "type": "string", + "x-stoplight": { + "id": "22ha61i5fiwzc" + }, + "description": "Execution Id for the step" + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "22ha61i5fiwzc" + }, + "description": "Stage type in which the step executed", + "enum": [ + "BUILD", + "DEPLOY", + "SECURITY" + ] + } + } + }, + "SBOMInfo": { + "title": "SBOMInfo", + "x-stoplight": { + "id": "2dzt0ov3lmusq" + }, + "type": "object", + "properties": { + "orchestration_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "org_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "components_count": { + "type": "integer", + "x-stoplight": { + "id": "peqspkq16qkwq" + } + }, + "drift_id": { + "type": "string", + "x-stoplight": { + "id": "7n8p0njpodkus" + } + }, + "total_drifts": { + "type": "integer", + "x-stoplight": { + "id": "62jr4hroubi5s" + } + }, + "pipeline_details": { + "$ref": "#/components/schemas/PipelineDetails" + } + } + }, + "SLSADetails1": { + "title": "SLSADetails", + "x-stoplight": { + "id": "fl0ysc7r5hupw" + }, + "type": "object", + "properties": { + "status": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "provenance_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "project_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "org_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "pipeline_details": { + "$ref": "#/components/schemas/PipelineDetails" + } + } + }, + "Violations": { + "title": "Violations", + "x-stoplight": { + "id": "8khk0g7i7jidc" + }, + "type": "object", + "properties": { + "enforcement_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "allow_list_violations": { + "type": "integer", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "deny_list_violations": { + "type": "integer", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "pipeline_details": { + "$ref": "#/components/schemas/PipelineDetails" + } + } + }, + "Scorecard1": { + "title": "Scorecard", + "x-stoplight": { + "id": "102ivoz6d9d0e" + }, + "type": "object", + "properties": { + "max_score": { + "type": "string", + "x-stoplight": { + "id": "thfkvwow3l96k" + } + }, + "avg_score": { + "type": "string", + "x-stoplight": { + "id": "0mcqty415kzb6" + } + } + } + }, + "Deployments": { + "title": "Deployments", + "x-stoplight": { + "id": "3gv4s6tifivpk" + }, + "type": "object", + "properties": { + "prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "gqp8yu3px6k5x" + } + }, + "non_prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "8bm3sz8deaxk6" + } + }, + "env_type": { + "x-stoplight": { + "id": "d7ixva9h2b6ou" + }, + "enum": [ + "PreProduction", + "Production" + ] + }, + "env_identifier": { + "type": "string", + "x-stoplight": { + "id": "5j5td0cjoezth" + } + }, + "env_name": { + "type": "string", + "x-stoplight": { + "id": "ll2uo89ao3j7w" + } + }, + "pipeline_details": { + "$ref": "#/components/schemas/PipelineDetails" + } + } + }, + "PipelineConfigUpdateRequest": { + "title": "PipelineConfigUpdateRequest", + "x-stoplight": { + "id": "7q44javuz8cmu" + }, + "type": "object", + "properties": { + "target_version": { + "type": "integer", + "x-stoplight": { + "id": "i6f81t0vobitw" + }, + "description": "Target version for the pipeline.\nIf empty, we reset the version." + } + } + }, + "CodeRepositoryListingRequest": { + "title": "CodeRepositoryListingRequest", + "x-stoplight": { + "id": "kwftd5c6q7bdp" + }, + "type": "object", + "x-examples": {}, + "properties": { + "search_term": { + "type": "string" + }, + "dependency_filter": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComponentFilter" + } + }, + "license_filter": { + "$ref": "#/components/schemas/LicenseFilter" + } + } + }, + "CICDWorkflowListingRequest": { + "title": "CICDWorkflowListingRequest", + "x-stoplight": { + "id": "091iwl7nn4zwr" + }, + "type": "object", + "x-examples": {}, + "properties": { + "search_term": { + "type": "string" + }, + "platform_type": { + "$ref": "#/components/schemas/ComplianceSourcePlatform" + } + }, + "description": "CI/CD Workflow Listing Request." + }, + "CodeRepositoryListingResponse": { + "title": "CodeRepositoryListingResponse", + "x-stoplight": { + "id": "8zy4qxmksmwvo" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Code Respository ID" + }, + "name": { + "type": "string", + "description": "Code Repository Name" + }, + "variant": { + "$ref": "#/components/schemas/ArtifactVariant" + }, + "url": { + "type": "string", + "description": "Code Repository URL" + }, + "dependencies_count": { + "type": "integer", + "description": "Number of dependencies of the repository", + "x-stoplight": { + "id": "i9fzdxv730dmj" + } + }, + "orchestration_id": { + "type": "string", + "x-stoplight": { + "id": "zz2jdp70vk2gm" + } + }, + "last_scan": { + "$ref": "#/components/schemas/PipelineDetails" + }, + "scorecard": { + "$ref": "#/components/schemas/Scorecard1" + }, + "sto_issue_count": { + "$ref": "#/components/schemas/StoIssueCount" + }, + "risk_and_compliance": { + "$ref": "#/components/schemas/RiskAndCompliance" + }, + "repository_platform": { + "$ref": "#/components/schemas/RepositoryPlatform" + } + } + }, + "CICDWorkflowListingResponse": { + "title": "CICDWorkflowListingResponse", + "x-stoplight": { + "id": "tt2e1jm0ioc1x" + }, + "type": "object", + "required": [ + "id", + "name", + "last_scan", + "compliance_summary", + "source" + ], + "properties": { + "id": { + "type": "string", + "description": "Workflow Id" + }, + "name": { + "type": "string", + "description": "Workflow Name" + }, + "last_scan": { + "type": "integer", + "format": "int64" + }, + "compliance_summary": { + "$ref": "#/components/schemas/ComplianceEvaluationSummary" + }, + "source": { + "$ref": "#/components/schemas/WorkflowSource" + } + } + }, + "RiskAndCompliance": { + "title": "RiskAndCompliance", + "x-stoplight": { + "id": "sbozxasiq8bmn" + }, + "type": "object", + "properties": { + "critical": { + "type": "integer", + "x-stoplight": { + "id": "hr4evvvkdwlak" + }, + "description": "The number of Critical-severity compliance Issues" + }, + "high": { + "type": "integer", + "x-stoplight": { + "id": "xku8fdplguqn9" + }, + "description": "The number of High-severity compliance Issues" + }, + "low": { + "type": "integer", + "x-stoplight": { + "id": "0ke8tj8nksxb1" + }, + "description": "The number of Low-severity compliance Issues" + }, + "medium": { + "type": "integer", + "x-stoplight": { + "id": "dgxoss72dtrpl" + }, + "description": "The number of Medium-severity compliance Issues" + }, + "last_scanned": { + "type": "string", + "x-stoplight": { + "id": "31o2aroslpv8u" + }, + "description": "Timestamp at which the Respository was last scanned" + }, + "pipeline_details": { + "$ref": "#/components/schemas/PipelineDetails" + } + } + }, + "CodeRepositoryOverview": { + "title": "CodeRepositoryOverview", + "x-stoplight": { + "id": "r5fq2x812oovu" + }, + "type": "object", + "required": [ + "name", + "url", + "repo_identifier" + ], + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "auivbtpn91g2n" + } + }, + "variant": { + "$ref": "#/components/schemas/ArtifactVariant" + }, + "last_commit": { + "type": "string", + "x-stoplight": { + "id": "izg01mscyrnw9" + } + }, + "last_evaluation": { + "type": "integer", + "x-stoplight": { + "id": "ygpcbwdl2ynle" + }, + "format": "int64" + }, + "vulnerabilities": { + "$ref": "#/components/schemas/StoIssueCount" + }, + "sbom_details": { + "$ref": "#/components/schemas/SBOMInfo" + }, + "compliance_summary": { + "$ref": "#/components/schemas/ComplianceEvaluationSummary" + }, + "scorecard": { + "$ref": "#/components/schemas/Scorecard1" + }, + "drift_summary": { + "$ref": "#/components/schemas/DriftDetailsDTO" + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "ifscwlxl1220j" + } + }, + "repo_identifier": { + "type": "string", + "x-stoplight": { + "id": "fzrff9oem4esc" + } + }, + "repository_platform": { + "$ref": "#/components/schemas/RepositoryPlatform" + } + } + }, + "ComplianceEvaluationSummary": { + "title": "ComplianceEvaluationSummary", + "x-stoplight": { + "id": "w6bm50zzc4qvm" + }, + "type": "object", + "properties": { + "passed": { + "type": "integer", + "x-stoplight": { + "id": "n9eea7yuwgj2p" + } + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "o6dgewchk2r19" + } + }, + "criticial_failures": { + "type": "integer", + "x-stoplight": { + "id": "67cnmw5x5e0rg" + } + }, + "medium_failures": { + "type": "integer", + "x-stoplight": { + "id": "8cd6cagnioamc" + } + }, + "high_failures": { + "type": "integer", + "x-stoplight": { + "id": "lapzcy8o2c5ty" + } + }, + "low_failures": { + "type": "integer", + "x-stoplight": { + "id": "v5iq4o1mkm0wo" + } + }, + "evaluation_time": { + "type": "integer", + "x-stoplight": { + "id": "55r1eicwd51tm" + }, + "format": "int64" + } + } + }, + "IntegrationConfigRequestBody": { + "title": "IntegrationConfigRequestBody", + "x-stoplight": { + "id": "uta1hy2bk34s3" + }, + "type": "object", + "required": [ + "cron_expression" + ], + "properties": { + "org": { + "type": "string", + "description": "If the org id is not provided, scan is set at account-level.", + "x-stoplight": { + "id": "ugaig2wwl9kfo" + } + }, + "project": { + "type": "string", + "description": "If the project id is not provided, scan is set at org-level.", + "x-stoplight": { + "id": "4mopq9ilj38pb" + } + }, + "cron_expression": { + "type": "string", + "description": "Quartz expression supported only.", + "x-stoplight": { + "id": "5e1dl69h39k6j" + } + }, + "allow_override": { + "type": "boolean", + "x-stoplight": { + "id": "wmfezfo2dzz2g" + } + } + } + }, + "CodeRepoRulesEvaluation": { + "title": "CodeRepoRulesEvaluation", + "x-stoplight": { + "id": "2z4ffjuz75iaq" + }, + "type": "object", + "properties": { + "time": { + "type": "integer", + "x-stoplight": { + "id": "a85ncco7pw9lc" + }, + "format": "int64" + }, + "passed": { + "type": "integer", + "x-stoplight": { + "id": "fvt6a0zpmnv01" + } + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "cai8vl453z7x5" + } + } + }, + "description": "" + }, + "CICDRulesEvaluation": { + "title": "CICDRulesEvaluation", + "x-stoplight": { + "id": "rsati2b6dopf3" + }, + "type": "object", + "properties": { + "time": { + "type": "integer", + "x-stoplight": { + "id": "a85ncco7pw9lc" + }, + "format": "int64" + }, + "passed": { + "type": "integer", + "x-stoplight": { + "id": "fvt6a0zpmnv01" + } + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "cai8vl453z7x5" + } + } + }, + "description": "" + }, + "SeverityComplianceMetrics": { + "title": "SeverityComplianceMetrics", + "x-stoplight": { + "id": "i4qcivi1ic7hu" + }, + "type": "object", + "description": "Stores severity vs failure count ", + "properties": { + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "yu6c57ls9hgps" + } + } + } + }, + "ComplianceResultsEvaluationBreakdown": { + "title": "ComplianceResultsEvaluationBreakdown", + "x-stoplight": { + "id": "j3aiueawgux7b" + }, + "type": "object", + "description": "Powers Compliance Result EvaluationBreakdown", + "properties": { + "passed": { + "type": "integer", + "x-stoplight": { + "id": "3zs88xgwugylw" + } + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "249xuf23b0qjx" + } + }, + "severity_breakdown": { + "type": "array", + "x-stoplight": { + "id": "m2ju4nhsgkoub" + }, + "items": { + "$ref": "#/components/schemas/SeverityComplianceMetrics" + } + } + } + }, + "ArtifactComplianceMetrics": { + "title": "ArtifactComplianceMetrics", + "x-stoplight": { + "id": "242scbkezm5gm" + }, + "type": "object", + "x-tags": [ + "ComplianceResults" + ], + "description": "Stores artifact type vs passed failed count", + "properties": { + "artifactType": { + "type": "string", + "enum": [ + "REPOSITORY", + "WORKFLOW" + ] + }, + "passed": { + "type": "integer", + "x-stoplight": { + "id": "b5cstllpizhou" + } + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "2kv0hqe1s1ove" + } + } + } + }, + "ComplianceChecksMetrics": { + "title": "ComplianceChecksMetrics", + "x-stoplight": { + "id": "ot48foz9dg8kj" + }, + "type": "object", + "description": "Stores Compliance Checks vs failure count", + "x-tags": [ + "ComplianceResults" + ], + "properties": { + "compliance_id": { + "type": "string", + "x-stoplight": { + "id": "o7yevh9673o0b" + } + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "lqtwjy17p9p4m" + } + }, + "tags": { + "type": "array", + "x-stoplight": { + "id": "6jdp7bf65d36h" + }, + "items": { + "x-stoplight": { + "id": "6bwje7kr6z4xq" + }, + "type": "string" + } + }, + "standards": { + "type": "array", + "x-stoplight": { + "id": "8g3btgxi6g11o" + }, + "items": { + "x-stoplight": { + "id": "sctata4ze1rmz" + }, + "type": "string" + } + }, + "title": { + "type": "string", + "x-stoplight": { + "id": "vhtwdq312xu3r" + } + } + } + }, + "ComplianceResultAggregationByType": { + "type": "object", + "x-examples": {}, + "required": [ + "compliance_id", + "scm_platform", + "title", + "standards", + "tags", + "severity", + "entity" + ], + "properties": { + "compliance_id": { + "type": "string" + }, + "scm_platform": { + "type": "string" + }, + "title": { + "type": "string" + }, + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "description": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "entity": { + "$ref": "#/components/schemas/ComplianceCheckEntityType" + }, + "executions": { + "$ref": "#/components/schemas/ComplianceExecutionByType" + } + }, + "x-stoplight": { + "id": "aih2jjkriqgq8" + } + }, + "ComplianceExecutionByType": { + "type": "object", + "x-examples": { + "Example 1": { + "type": "REPOSITORY", + "count": 30, + "passed": 30, + "failed": 40 + } + }, + "properties": { + "type": { + "$ref": "#/components/schemas/ComplianceScanType" + }, + "count": { + "type": "integer" + }, + "passed": { + "type": "integer" + }, + "failed": { + "type": "integer" + } + }, + "x-stoplight": { + "id": "vj4sakhy4qexz" + } + }, + "DriftDetailsDTO": { + "title": "DriftDetailsDTO", + "x-stoplight": { + "id": "uq8fhf8ekmm44" + }, + "type": "object", + "required": [ + "org_identifier", + "project_identifier" + ], + "properties": { + "org_identifier": { + "type": "string", + "x-stoplight": { + "id": "igphvl6gqe37p" + } + }, + "project_identifier": { + "type": "string", + "x-stoplight": { + "id": "iry0l09etzye9" + } + }, + "drift_summary": { + "$ref": "#/components/schemas/OrchestrationDriftSummary" + } + } + }, + "ComplianceEvaluationHistory": { + "type": "object", + "x-examples": { + "Example 1": { + "pipelineId": "string", + "pipelineExecutionId": "string", + "status": "FAILED" + } + }, + "properties": { + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "oj1ww5qb81ale" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "ij8zjdiofyxkn" + } + }, + "status": { + "$ref": "#/components/schemas/ComplianceResultStatus" + }, + "stage_execution_id": { + "type": "string", + "x-stoplight": { + "id": "j9vrceq5ahuaa" + } + }, + "step_execution_id": { + "type": "string", + "x-stoplight": { + "id": "nmej7ya11phwe" + } + }, + "reason": { + "type": "string", + "x-stoplight": { + "id": "vv78jrxqedsek" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "5eh2g6hen0gd6" + } + }, + "remediation": { + "type": "string", + "x-stoplight": { + "id": "22nyp1fet611d" + } + }, + "created_at": { + "type": "integer", + "x-stoplight": { + "id": "i93b23g4ejxnb" + }, + "format": "int64" + }, + "occurrences": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceOccurrenceDTO" + } + } + }, + "x-stoplight": { + "id": "s8krm8zvlz556" + } + }, + "FetchComplianceResultByArtifactResponseBody": { + "type": "object", + "x-examples": { + "Example 1": { + "complianceId": "4.3.5", + "title": "Ensure webhooks of the package registry are secured", + "standards": [ + "CIS" + ], + "severity": "LOW", + "status": "PASSED", + "evaluationTime": 1718040836473, + "evaluationHistory": [ + { + "pipelineId": "string", + "pipelineExecutionId": "string", + "status": "PASSED" + }, + { + "pipelineId": "string", + "pipelineExecutionId": "string", + "status": "FAILED" + } + ] + } + }, + "properties": { + "compliance_id": { + "type": "string", + "x-stoplight": { + "id": "3a0fxwhfip1jx" + } + }, + "title": { + "type": "string" + }, + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "tags": { + "type": "array", + "x-stoplight": { + "id": "lw9r9bfmoedxe" + }, + "items": { + "x-stoplight": { + "id": "tj8w83zbr2ov9" + }, + "type": "string" + } + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "status": { + "$ref": "#/components/schemas/ComplianceResultStatus" + }, + "evaluation_time": { + "type": "integer", + "x-stoplight": { + "id": "5jumm3w1luvnd" + }, + "format": "int64" + }, + "evaluation_history": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceEvaluationHistory" + } + }, + "reason": { + "type": "string", + "x-stoplight": { + "id": "b8exmlc6fek9m" + } + }, + "description": { + "type": "string", + "x-stoplight": { + "id": "qkjezwyyt94eo" + } + }, + "remediation": { + "type": "string", + "x-stoplight": { + "id": "2k070gxzjlse5" + } + }, + "pipelineExecutionId": { + "type": "string", + "x-stoplight": { + "id": "lnlvofaibaqsv" + } + }, + "occurrences": { + "type": "array", + "x-stoplight": { + "id": "95mz9coytjsgg" + }, + "items": { + "$ref": "#/components/schemas/ComplianceOccurrenceDTO" + } + } + }, + "x-stoplight": { + "id": "oa9y4fc633tsf" + } + }, + "ComplianceArtifactWithExecution": { + "type": "object", + "x-examples": { + "Example 2": { + "name": "string", + "type": { + "id": "GITHUB" + }, + "compliance_id": "string", + "title": "string", + "severity": "CRITICAL", + "description": "string", + "remediation": "string", + "standards": [ + "CIS" + ], + "tags": [ + "string" + ], + "updatedAt": "string", + "status": { + "compliance_id": "string", + "title": "string", + "category": "string", + "category_id": "string", + "standards": [ + "CIS" + ], + "description": "string", + "tags": [ + "string" + ], + "severity": "CRITICAL", + "reason": "string", + "status": "PASSED", + "remediation": "string", + "url": "string", + "entity": "REPOSITORY", + "sub_category": "string", + "sub_category_id": "string" + }, + "executions": { + "pipeline_id": "string", + "pipeline_excution_id": "string", + "step_execution_id": "string", + "stage_execution_id": "string", + "status": "PASSED" + }, + "reason": "string", + "scan_type": "CICD" + } + }, + "x-stoplight": { + "id": "grcx43cx5x44a" + }, + "required": [ + "name", + "type", + "compliance_id", + "severity", + "standards", + "tags" + ], + "properties": { + "url": { + "type": "string", + "x-stoplight": { + "id": "mq8x0fp10968z" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "d5g0voke9neqg" + } + }, + "type": { + "type": "string" + }, + "compliance_id": { + "type": "string", + "x-stoplight": { + "id": "sq0u450bxch3w" + } + }, + "title": { + "type": "string" + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "description": { + "type": "string" + }, + "remediation": { + "type": "string" + }, + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "tags": { + "type": "array", + "items": { + "type": "string" + } + }, + "updatedAt": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/ComplianceResultStatus" + }, + "executions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceEvaluationHistory" + } + }, + "reason": { + "type": "string", + "x-stoplight": { + "id": "6wg3st0686v9y" + } + }, + "occurrences": { + "type": "array", + "x-stoplight": { + "id": "9gi2t6cvl4axw" + }, + "items": { + "$ref": "#/components/schemas/ComplianceOccurrenceDTO" + } + }, + "scan_type": { + "$ref": "#/components/schemas/ComplianceScanType" + } + } + }, + "ComplianceArtifactType": { + "title": "ComplianceArtifactType", + "x-stoplight": { + "id": "e9e8k7zswayjf" + }, + "type": "object", + "properties": { + "id": { + "x-stoplight": { + "id": "o320rtkx22dbq" + }, + "enum": [ + "GITHUB", + "GITLAB" + ] + } + } + }, + "ComplianceResultByArtifactFilter": { + "title": "ComplianceResultByArtifactFilter", + "x-stoplight": { + "id": "p67prnxfefvdl" + }, + "type": "object", + "properties": { + "standards": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceStandardType" + } + }, + "severity": { + "$ref": "#/components/schemas/ComplianceCheckSeverity" + }, + "status": { + "type": "array", + "x-stoplight": { + "id": "mt4kx8wt1ufyv" + }, + "items": { + "$ref": "#/components/schemas/ComplianceResultStatus" + } + }, + "compliance_id": { + "type": "string", + "x-stoplight": { + "id": "lm68szljbrvg9" + } + }, + "search_term": { + "type": "string", + "x-stoplight": { + "id": "0ykysaw7g4s2h" + } + } + } + }, + "RepositoriesSummary": { + "title": "RepositoriesSummary", + "x-stoplight": { + "id": "owmyb6p9mw1y3" + }, + "type": "object", + "properties": { + "total": { + "type": "integer", + "x-stoplight": { + "id": "4nhfx0bl3oy9r" + } + }, + "vulnerabilities": { + "$ref": "#/components/schemas/StoIssueCount" + }, + "evaluation_summary": { + "$ref": "#/components/schemas/ComplianceEvaluationSummary" + } + } + }, + "CICDWorkflowSummary": { + "title": "CICDWorkflowSummary", + "x-stoplight": { + "id": "akvm9g9wf3zhe" + }, + "type": "object", + "properties": { + "total_workflows": { + "type": "integer", + "x-stoplight": { + "id": "dypacgi0s04bs" + } + }, + "compliance_summary": { + "$ref": "#/components/schemas/ComplianceEvaluationSummary" + } + } + }, + "IntegrationConfig": { + "title": "IntegrationConfig", + "x-stoplight": { + "id": "xzh0yo3j4ysld" + }, + "type": "object", + "properties": { + "url": { + "type": "string", + "x-stoplight": { + "id": "w8n6vwhem4mve" + } + } + }, + "description": "Integrations Config" + }, + "ArtifactChainOfCustody": { + "title": "ArtifactChainOfCustody", + "x-stoplight": { + "id": "1yqfetazjhj4v" + }, + "type": "object", + "x-internal": false, + "properties": { + "ActivityType": { + "type": "string", + "x-stoplight": { + "id": "sduoo18ns9yfj" + }, + "enum": [ + "ORCHESTRATION", + "ENFORCEMENT", + "PROVENANCE", + "VERIFICATION", + "COMPLIANCE", + "VULNERABILITY", + "DEPLOYMENT" + ] + }, + "created_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "6j7z7j7z7z7z7" + } + }, + "orchestration": { + "$ref": "#/components/schemas/SBOMInfo" + }, + "enforcement": { + "$ref": "#/components/schemas/Violations" + }, + "provenance": { + "$ref": "#/components/schemas/SLSADetails1" + }, + "verification": { + "$ref": "#/components/schemas/SLSADetails1" + }, + "deployment": { + "$ref": "#/components/schemas/Deployments" + }, + "vulnerability": { + "$ref": "#/components/schemas/StoIssueCount" + }, + "compliance": { + "$ref": "#/components/schemas/RiskAndCompliance" + }, + "artifact_details": { + "$ref": "#/components/schemas/ArtifactV2Details" + } + } + }, + "ArtifactChainOfCustodyV2": { + "title": "ArtifactChainOfCustodyV2", + "x-stoplight": { + "id": "1yqfetazjhj4v" + }, + "type": "object", + "x-internal": false, + "properties": { + "activity": { + "$ref": "#/components/schemas/ActivityDetails" + }, + "created_at": { + "type": "integer", + "format": "int64", + "x-stoplight": { + "id": "6j7z7j7z7z7z7" + } + }, + "artifact_details": { + "$ref": "#/components/schemas/ArtifactV2Details" + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionContextV2" + } + } + }, + "ArtifactV2Details": { + "title": "ArtifactV2Details", + "x-stoplight": { + "id": "5zlypggn3bwyq" + }, + "type": "object", + "properties": { + "id": { + "type": "string", + "x-stoplight": { + "id": "gh0lt8mpnz6d9" + } + }, + "name": { + "type": "string", + "x-stoplight": { + "id": "qtwszj5cg3ym7" + } + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "bnv86x8lbybf6" + } + }, + "tag": { + "type": "string", + "x-stoplight": { + "id": "p8f2vqnb4tf78" + } + }, + "digest": { + "type": "string", + "x-stoplight": { + "id": "kg5m7buhuyhpb" + } + } + } + }, + "ComplianceEvaluationTrend": { + "title": "ComplianceEvaluationTrend", + "x-stoplight": { + "id": "pjgvs47v5rtej" + }, + "type": "object", + "description": "Data point for compliane evaluation trend api", + "properties": { + "window_start_time": { + "type": "string", + "x-stoplight": { + "id": "rmrtkj4ikb0ov" + } + }, + "window_end_time": { + "type": "string", + "x-stoplight": { + "id": "159g6x7sv80gx" + } + }, + "passed": { + "type": "integer", + "x-stoplight": { + "id": "3plfwztlj4pki" + } + }, + "failed": { + "type": "integer", + "x-stoplight": { + "id": "5prsa89cck6v6" + } + } + } + }, + "VersionInfo": { + "title": "VersionInfo", + "x-stoplight": { + "id": "4fl7tuh0ii7f9" + }, + "type": "object", + "properties": { + "commit": { + "type": "string", + "x-stoplight": { + "id": "r9h0brk01io35" + } + }, + "version": { + "type": "string", + "x-stoplight": { + "id": "gaw1386jrgrc5" + } + } + } + }, + "PluginDTO": { + "title": "PluginDTO", + "x-stoplight": { + "id": "6h45p8xhj8nyq" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "imeroxjtaijgs" + } + }, + "version": { + "type": "string", + "x-stoplight": { + "id": "emdtllba1deoe" + } + }, + "path_from_root": { + "type": "string", + "x-stoplight": { + "id": "j7spynufi3rvf" + } + } + }, + "description": "Represents workflow images/plugin/actions found for CI/CD workflows scan." + }, + "ComplianceOccurrenceDTO": { + "title": "ComplianceOccurrenceDTO", + "x-stoplight": { + "id": "5kz1r0wmqqtb9" + }, + "type": "object", + "properties": { + "snippet": { + "type": "string", + "x-stoplight": { + "id": "tou5xin4shjem" + }, + "description": "Depicts occurrence snippet." + }, + "snippet_url": { + "type": "string", + "x-stoplight": { + "id": "elke0tcie443g" + }, + "description": "URL to go to snippet" + }, + "line_number": { + "type": "integer", + "x-stoplight": { + "id": "r956qlsf9zrc0" + }, + "description": "Line number of snippet." + } + } + }, + "WorkflowSource": { + "title": "WorkflowSource", + "x-stoplight": { + "id": "tdne5ehs4aif7" + }, + "type": "object", + "description": "Represent Workflow Source", + "required": [ + "name", + "url", + "type" + ], + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "al23pegshrknr" + }, + "description": "Source Name" + }, + "url": { + "type": "string", + "x-stoplight": { + "id": "pz4qsjkmnmf3e" + }, + "description": "Source URL" + }, + "type": { + "type": "string", + "x-stoplight": { + "id": "s2x2mpxkirx73" + }, + "enum": [ + "GITHUB", + "HARNESS" + ], + "description": "Workflow Source Type" + } + } + }, + "CICDOverviewResponseBody": { + "title": "CiCdOverviewResponseBody", + "x-stoplight": { + "id": "wl7zxtr0dmbft" + }, + "type": "object", + "required": [ + "id", + "name", + "last_scan", + "compliance_summary", + "source" + ], + "properties": { + "id": { + "type": "string", + "description": "Workflow Id", + "x-stoplight": { + "id": "z5a9z4zmzhryu" + } + }, + "name": { + "type": "string", + "description": "Workflow Name" + }, + "last_scan": { + "type": "integer", + "format": "int64" + }, + "compliance_summary": { + "$ref": "#/components/schemas/ComplianceEvaluationSummary" + }, + "source": { + "$ref": "#/components/schemas/WorkflowSource" + } + } + }, + "CICDHarnessPipelineYamlResponseBody": { + "title": "CICDHarnessPipelineYamlResponseBody", + "x-stoplight": { + "id": "ver2dyae9lsfn" + }, + "type": "object", + "required": [ + "pipeline_yaml" + ], + "properties": { + "pipeline_yaml": { + "type": "string", + "x-stoplight": { + "id": "h1ik5naj7j0td" + } + }, + "harness_pipeline_settings": { + "$ref": "#/components/schemas/HarnessPipelineSettings" + } + } + }, + "HarnessPipelineIntegrationResponse": { + "title": "HarnessPipelineIntegrationResponse", + "x-stoplight": { + "id": "99y4wqer2tzx7" + }, + "type": "object", + "required": [ + "enabled" + ], + "properties": { + "enabled": { + "type": "boolean", + "x-stoplight": { + "id": "h1ik5naj7j0tl" + } + } + } + }, + "CICDWorklfowPluginsResponse": { + "title": "CICDWorklfowPluginsResponse", + "x-stoplight": { + "id": "5wdvs00p4wa00" + }, + "type": "object", + "properties": { + "plugin_name": { + "type": "string", + "x-stoplight": { + "id": "emdtllba1deoe" + } + } + } + }, + "HarnessPipelineSettings": { + "title": "HarnessPipelineSettings", + "x-stoplight": { + "id": "tghaftaxk6w16" + }, + "type": "object", + "properties": { + "is_auth_enabled_for_custom_webhook": { + "type": "boolean", + "x-stoplight": { + "id": "86cw8l9rmrpjg" + } + } + } + }, + "IntegrationStepConfig": { + "title": "IntegrationStepConfig", + "x-stoplight": { + "id": "e68xul7elow84" + }, + "type": "object", + "x-examples": {}, + "required": [ + "name", + "enable", + "parallel" + ], + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "0ffgruret4fiq" + } + }, + "enable": { + "type": "boolean", + "x-stoplight": { + "id": "7o4yqb8h4wrwo" + } + }, + "parallel": { + "type": "boolean", + "x-stoplight": { + "id": "6h0ob99bao11t" + } + }, + "resource": { + "type": "string", + "x-stoplight": { + "id": "d0oh1mq8sqsyz" + } + }, + "settings": { + "type": "string", + "x-stoplight": { + "id": "gu7w8jka37mto" + } + }, + "parameters": { + "type": "object", + "x-stoplight": { + "id": "vuy0dk6ifo0aq" + }, + "additionalProperties": { + "x-stoplight": { + "id": "tg81kj7kvnpml" + }, + "type": "string" + } + }, + "auto_infra": { + "type": "array", + "x-stoplight": { + "id": "fb4ax8u61g502" + }, + "items": { + "$ref": "#/components/schemas/InfraLayout" + } + } + } + }, + "IntegrationStepConfigRequestBody": { + "title": "IntegrationStepConfigRequestBody", + "x-stoplight": { + "id": "2u7c73xk9k3v9" + }, + "type": "object", + "properties": { + "name": { + "x-stoplight": { + "id": "ab9pcgmqaah0o" + }, + "enum": [ + "RSPM", + "CICD" + ] + }, + "config": { + "type": "array", + "x-stoplight": { + "id": "660988p2kqc1a" + }, + "items": { + "$ref": "#/components/schemas/IntegrationStepConfig" + } + } + } + }, + "InfraLayout": { + "title": "InfraLayout", + "x-stoplight": { + "id": "0bf1jtp5gxi7w" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "59o9qqs6a07yt" + } + }, + "cpu": { + "type": "string", + "x-stoplight": { + "id": "50gznrzb2jy9z" + } + }, + "memory": { + "type": "string", + "x-stoplight": { + "id": "1oifzqpxfsiny" + } + }, + "repo_size": { + "type": "string", + "x-stoplight": { + "id": "9pfwbmeham6y1" + } + } + } + }, + "ComplianceStandardsFilterEntity": { + "title": "ComplianceStandardsFilterEntity", + "x-stoplight": { + "id": "0mc5ygoyq3h1c" + }, + "type": "object", + "x-examples": { + "Example 1": { + "scan_type": "CICD", + "integrations": [ + "GITHUB", + "HARNESS" + ] + } + }, + "description": "Type of SPM support and platforms integrated", + "x-internal": false, + "required": [ + "scan_type", + "integrations" + ], + "properties": { + "scan_type": { + "$ref": "#/components/schemas/ComplianceScanType" + }, + "integrations": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceSourcePlatform" + } + } + } + }, + "ComplianceScanType": { + "title": "ComplianceScanType", + "x-stoplight": { + "id": "xofqrlg94b1o5" + }, + "type": "string", + "enum": [ + "REPOSITORY", + "CICD" + ], + "description": "Type of scan on the source like Repository scan or Worklfow scan" + }, + "ComplianceSourcePlatform": { + "title": "ComplianceSourcePlatform", + "x-stoplight": { + "id": "mu4qb4tnrii02" + }, + "type": "string", + "enum": [ + "GITHUB", + "HARNESS" + ], + "description": "Source platform enum. Example: GITHUB, HARNESS" + }, + "HarnessRunner": { + "title": "HarnessRunner", + "x-stoplight": { + "id": "vfsaqcya7qwfx" + }, + "type": "object", + "properties": { + "trigger_type": { + "type": "string", + "x-stoplight": { + "id": "rzkmd5bqoc9r9" + } + }, + "trigger_by_id": { + "type": "string", + "x-stoplight": { + "id": "b36ytjxzv2yq6" + } + }, + "trigger_by_name": { + "type": "string", + "x-stoplight": { + "id": "a7g4t02vts8gf" + } + } + } + }, + "GithubRunner": { + "title": "GithubRunner", + "x-stoplight": { + "id": "32axq2gn4gemv" + }, + "type": "object", + "properties": { + "name": { + "type": "string", + "x-stoplight": { + "id": "x0aeloqpvaybd" + } + }, + "account_id": { + "type": "string", + "x-stoplight": { + "id": "aod8pc43fmjbt" + } + } + } + }, + "HarnessExecutionDetail": { + "title": "HarnessExecutionDetail", + "x-stoplight": { + "id": "26kpn09zundb0" + }, + "type": "object", + "properties": { + "org": { + "type": "string", + "x-stoplight": { + "id": "zf78rh1u21y55" + } + }, + "project": { + "type": "string", + "x-stoplight": { + "id": "lghyhop0hsg0f" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "svsw1myd4slwa" + } + }, + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "6ms1cohmjf8rv" + } + }, + "pipeline_name": { + "type": "string", + "x-stoplight": { + "id": "qecka5f2dfvxx" + } + }, + "sequence_id": { + "type": "string", + "x-stoplight": { + "id": "tvb3c7trq28pt" + } + }, + "step_id": { + "type": "string", + "x-stoplight": { + "id": "bj8ul3cpt9061" + } + }, + "step_execution_id": { + "type": "string", + "x-stoplight": { + "id": "eyon9kxjzpuu5" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "li446ik3qfg8l" + } + }, + "stage_id": { + "type": "string", + "x-stoplight": { + "id": "uk4e6msb1annk" + } + }, + "stage_execution_id": { + "type": "string", + "x-stoplight": { + "id": "ltrcdcpqky4rv" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "n27q5wlhtrd65" + } + }, + "stage_type": { + "type": "string", + "x-stoplight": { + "id": "22ha61i5fiwzc" + }, + "description": "Stage type in which the step executed" + }, + "runner_detail": { + "$ref": "#/components/schemas/HarnessRunner" + } + }, + "description": "Harness Pipeline Execution Details" + }, + "GithubExecutionDetail": { + "title": "GithubExecutionDetail", + "x-stoplight": { + "id": "nfcbibnr1z2rw" + }, + "type": "object", + "properties": { + "repository": { + "type": "string", + "x-stoplight": { + "id": "sac861lasuewn" + } + }, + "github_action": { + "type": "string", + "x-stoplight": { + "id": "l8azkn1th708h" + } + }, + "action_path": { + "type": "string", + "x-stoplight": { + "id": "twcllxr8bibkc" + } + }, + "job_id": { + "type": "string", + "x-stoplight": { + "id": "gxvhjwmosdutz" + } + }, + "run_id": { + "type": "string", + "x-stoplight": { + "id": "cunrcn7ohnpy2" + } + }, + "workflow_ref": { + "type": "string", + "x-stoplight": { + "id": "gnclwe27klokp" + } + }, + "runner_detail": { + "$ref": "#/components/schemas/GithubRunner" + } + }, + "description": "Github Pipeline Execution Details" + }, + "ExecutionType": { + "type": "string", + "enum": [ + "harness", + "github" + ] + }, + "ExecutionDetail": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "$ref": "#/components/schemas/ExecutionType" + }, + "github": { + "$ref": "#/components/schemas/GithubExecutionDetail" + }, + "harness": { + "$ref": "#/components/schemas/HarnessExecutionDetail" + } + } + }, + "ActivityDetails": { + "title": "ActivityDetails", + "type": "object", + "required": [ + "type" + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "orchestration": "#/components/schemas/OrchestrationActivity", + "vulnerability": "#/components/schemas/VulnerabilityActivity", + "enforcement": "#/components/schemas/EnforcementActivity", + "provenance": "#/components/schemas/ProvenanceActivity", + "verification": "#/components/schemas/VerificationActivity", + "deployment": "#/components/schemas/DeploymentActivity", + "signing": "#/components/schemas/SigningActivity", + "integrity_verification": "#/components/schemas/IntegrityVerificationActivity" + } + }, + "properties": { + "type": { + "type": "string", + "enum": [ + "orchestration", + "vulnerability", + "enforcement", + "provenance", + "verification", + "deployment", + "signing", + "integrity_verification" + ] + } + } + }, + "OrchestrationActivity": { + "title": "OrchestrationActivity", + "x-discriminator-value": "orchestration", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "orchestration" + ], + "description": "This specifies the type of activity" + }, + "orchestration_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "components_count": { + "type": "integer", + "x-stoplight": { + "id": "peqspkq16qkwq" + } + }, + "drift_id": { + "type": "string", + "x-stoplight": { + "id": "7n8p0njpodkus" + } + }, + "total_drifts": { + "type": "integer", + "x-stoplight": { + "id": "62jr4hroubi5s" + } + } + }, + "required": [ + "type" + ] + } + ] + }, + "SigningActivity": { + "title": "SigningActivity", + "x-stoplight": { + "id": "21dd8d68a15a6" + }, + "x-discriminator-value": "signing", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "signing" + ], + "description": "This specifies the type of activity" + }, + "signing": { + "$ref": "#/components/schemas/IntegrityVerification" + } + }, + "required": [ + "type" + ] + } + ] + }, + "IntegrityVerificationActivity": { + "title": "IntegrityVerificationActivity", + "x-discriminator-value": "integrity_verification", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "integrity_verification" + ], + "description": "This specifies the type of activity" + }, + "signing": { + "$ref": "#/components/schemas/IntegrityVerification" + } + } + } + ] + }, + "ProvenanceActivity": { + "title": "ProvenanceActivity", + "x-discriminator-value": "provenance", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "provenance" + ], + "description": "This specifies the type of activity" + }, + "provenance_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + } + }, + "required": [ + "type" + ] + } + ] + }, + "VerificationActivity": { + "title": "VerificationActivity", + "x-discriminator-value": "verification", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "verification" + ], + "description": "This specifies the type of activity" + }, + "status": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "provenance_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + } + }, + "required": [ + "type" + ] + } + ] + }, + "EnforcementActivity": { + "title": "EnforcementActivity", + "x-discriminator-value": "enforcement", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "enforcement" + ], + "description": "This specifies the type of activity" + }, + "enforcement_id": { + "type": "string", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "allow_list_violations": { + "type": "integer", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + }, + "deny_list_violations": { + "type": "integer", + "x-stoplight": { + "id": "ju6d8j0ulhw4t" + } + } + }, + "required": [ + "type" + ] + } + ] + }, + "DeploymentActivity": { + "title": "DeploymentActivity", + "x-stoplight": { + "id": "1cdf66d1dcb18" + }, + "x-discriminator-value": "deployment", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "deployment" + ], + "description": "This specifies the type of activity" + }, + "prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "gqp8yu3px6k5x" + } + }, + "non_prod_env_count": { + "type": "integer", + "x-stoplight": { + "id": "8bm3sz8deaxk6" + } + }, + "env_type": { + "x-stoplight": { + "id": "d7ixva9h2b6ou" + }, + "enum": [ + "PreProduction", + "Production" + ] + }, + "env_identifier": { + "type": "string", + "x-stoplight": { + "id": "5j5td0cjoezth" + } + }, + "env_name": { + "type": "string", + "x-stoplight": { + "id": "ll2uo89ao3j7w" + } + } + }, + "required": [ + "type" + ] + } + ] + }, + "VulnerabilityActivity": { + "title": "VulnerabilityActivity", + "x-discriminator-value": "vulnerability", + "allOf": [ + { + "$ref": "#/components/schemas/ActivityDetails" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "vulnerability" + ], + "description": "This specifies the type of activity" + }, + "critical": { + "type": "integer", + "x-stoplight": { + "id": "hr4evvvkdwlaj" + }, + "description": "The number of Critical-severity Issues" + }, + "high": { + "type": "integer", + "x-stoplight": { + "id": "xku8fdplguqn8" + }, + "description": "The number of High-severity Issues" + }, + "ignored": { + "type": "integer", + "x-stoplight": { + "id": "pugpn1qpfuiz2" + }, + "description": "The number of Issues ignored due to Exemptions, and therefore not included in other counts" + }, + "info": { + "type": "integer", + "x-stoplight": { + "id": "uq1mu3ju7hqvj" + }, + "description": "The number of Informational Issues" + }, + "last_scanned": { + "type": "string", + "x-stoplight": { + "id": "31o2aroslpv8t" + }, + "description": "Timestamp at which the target variant was last scanned" + }, + "low": { + "type": "integer", + "x-stoplight": { + "id": "0ke8tj8nksxb0" + }, + "description": "The number of Low-severity Issues" + }, + "medium": { + "type": "integer", + "x-stoplight": { + "id": "dgxoss72dtrpd" + }, + "description": "The number of Medium-severity Issues" + }, + "total": { + "type": "integer", + "x-stoplight": { + "id": "dgxoss72dtrpd" + }, + "description": "The number of total-severity Issues" + }, + "tool": { + "type": "string", + "x-stoplight": { + "id": "6w9cfeu92rj4d" + }, + "description": "The name of the tool that performed the scan" + } + }, + "required": [ + "type" + ] + } + ] + }, + "RepositoryPlatform": { + "type": "string", + "title": "RepositoryPlatform", + "x-stoplight": { + "id": "prybalroyw6dc" + }, + "enum": [ + "HARNESS", + "GITHUB", + "BITBUCKET", + "GITLAB", + "GIT", + "AZURE" + ] + }, + "RekorLog": { + "title": "RekorLogDataModel", + "x-stoplight": { + "id": "2tz0t40gohsnp" + }, + "type": "object", + "properties": { + "hash": { + "type": "string", + "x-stoplight": { + "id": "pw8nommavkh17" + } + }, + "t_log_index": { + "type": "string", + "x-stoplight": { + "id": "3h63tu9ilxhaq" + } + }, + "signature": { + "type": "string", + "x-stoplight": { + "id": "f2uvqh6uh4dj0" + } + }, + "entry_uuid": { + "type": "string", + "x-stoplight": { + "id": "04859pdq51kvo" + } + }, + "signed_at": { + "type": "string", + "x-stoplight": { + "id": "w0tobwpwa3kcs" + } + }, + "signed_by": { + "type": "string", + "x-stoplight": { + "id": "x13syvivwlh3c" + } + } + } + }, + "IntegrityVerification": { + "title": "IntegrityVerification", + "x-stoplight": { + "id": "o67gzhl92dluh" + }, + "type": "object", + "properties": { + "rekor": { + "$ref": "#/components/schemas/RekorLog" + }, + "error_message": { + "type": "string", + "x-stoplight": { + "id": "n4kkqgdolwbxh" + } + }, + "status": { + "$ref": "#/components/schemas/VerificationStatus" + }, + "pipeline_id": { + "type": "string", + "x-stoplight": { + "id": "1oh36wopxh7ek" + } + }, + "pipeline_execution_id": { + "type": "string", + "x-stoplight": { + "id": "wqwwxp6452gmd" + } + } + } + }, + "VerificationStatus": { + "type": "string", + "enum": [ + "PASSED", + "FAILED" + ] + }, + "SaveSignatureRequestBody": { + "title": "SaveSignatureRequestBody", + "x-stoplight": { + "id": "xqsj8bysobufx" + }, + "type": "object", + "properties": { + "rekor": { + "$ref": "#/components/schemas/RekorLog" + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + }, + "artifact": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + } + } + }, + "SaveIntegrityVerificationRequestBody": { + "title": "SaveIntegrityVerificationRequestBody", + "x-stoplight": { + "id": "pf3dx1teu7wvk" + }, + "type": "object", + "properties": { + "artifact": { + "$ref": "#/components/schemas/ArtifactModelPipeline" + }, + "verification_status": { + "$ref": "#/components/schemas/VerificationStatus" + }, + "execution_context": { + "$ref": "#/components/schemas/ExecutionDetail" + }, + "rekor": { + "$ref": "#/components/schemas/RekorLog" + }, + "error_message": { + "type": "string", + "x-stoplight": { + "id": "3x5w4fiiawwmd" + } + } + } + }, + "DownloadSbomRequest": { + "title": "DownloadSbomRequest", + "x-stoplight": { + "id": "j599v86b1z4ah" + }, + "type": "object", + "required": [ + "spec" + ], + "properties": { + "spec": { + "$ref": "#/components/schemas/ArtifactSpec" + } + } + }, + "ArtifactSpec": { + "title": "ArtifactSpec", + "type": "object", + "required": [ + "type" + ], + "discriminator": { + "propertyName": "type", + "mapping": { + "IMAGE": "#/components/schemas/ImageSpec", + "REPOSITORY": "#/components/schemas/RepositorySpec" + } + }, + "properties": { + "type": { + "type": "string", + "enum": [ + "IMAGE", + "REPOSITORY" + ] + } + }, + "x-stoplight": { + "id": "4sjky3kbho5p2" + } + }, + "ImageSpec": { + "title": "ImageSpec", + "x-discriminator-value": "IMAGE", + "description": "The spec for container images", + "x-stoplight": { + "id": "oez8eq74r95a6" + }, + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactSpec" + }, + { + "type": "object", + "required": [ + "type", + "image_name" + ], + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "al79vwwko48jx" + }, + "enum": [ + "IMAGE" + ] + }, + "image_name": { + "type": "string", + "x-stoplight": { + "id": "tqkt23n39zxk5" + }, + "description": "The FQN (fully-qualified name) Image name. This includes image Url and shouldn't include tag.\nFor example: us.gcr.io/playground/quickstart-image.\nIncase digest and tag both are absent, the latest orchestrated image will be considered.\n" + }, + "digest": { + "type": "string", + "x-stoplight": { + "id": "kghbgr0yagnt8" + }, + "description": "Digest of the artifact." + }, + "image_tag": { + "type": "string", + "x-stoplight": { + "id": "cpu02ujruxhj7" + }, + "description": "Image Tag" + } + } + } + ] + }, + "RepositorySpec": { + "title": "RepositorySpec", + "x-discriminator-value": "REPOSITORY", + "x-stoplight": { + "id": "4sjky3kbho5p1" + }, + "type": "object", + "description": "The spec for Repository Artifact", + "allOf": [ + { + "$ref": "#/components/schemas/ArtifactSpec" + }, + { + "type": "object", + "required": [ + "type", + "repo_url" + ], + "properties": { + "type": { + "type": "string", + "x-stoplight": { + "id": "ah6etw58yh0ki" + }, + "enum": [ + "REPOSITORY" + ] + }, + "repo_url": { + "type": "string", + "x-stoplight": { + "id": "ohz162f4bbptp" + }, + "description": "Provide the fully qualified repository URL, excluding the 'https://' prefix. For example github.com/nginxinc/docker-nginx." + }, + "branch": { + "type": "string", + "x-stoplight": { + "id": "t8jf1fskiim01" + }, + "description": "Branch Name" + } + } + } + ] + }, + "IntegrityVerificationModelPipeline": { + "title": "IntegrityVerificationModelPipeline", + "x-stoplight": { + "id": "xwfsxgb9yu8ji" + }, + "type": "object", + "properties": { + "stage_identifier": { + "type": "string", + "x-stoplight": { + "id": "gr8axhf45jpge" + } + }, + "stage_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "kcmobatnnddtg" + } + }, + "stage_name": { + "type": "string", + "x-stoplight": { + "id": "q6f06mp4lmtxz" + } + }, + "step_name": { + "type": "string", + "x-stoplight": { + "id": "w6m4q6vh272rm" + } + }, + "step_identifier": { + "type": "string", + "x-stoplight": { + "id": "w33jxve6yupz8" + } + }, + "step_execution_identifier": { + "type": "string", + "x-stoplight": { + "id": "84al2ba43212l" + } + }, + "integrity_verification": { + "$ref": "#/components/schemas/IntegrityVerification" + } + } + }, + "DownloadSignatureResponseBody": { + "title": "DownloadSignatureResponseBody", + "x-stoplight": { + "id": "7xqgkkfbpj3n7" + }, + "type": "object", + "properties": { + "signature": { + "type": "string", + "x-stoplight": { + "id": "bfj4ki8kbdm8l" + } + }, + "payload": { + "type": "string", + "x-stoplight": { + "id": "io6zuexbmmn4s" + } + }, + "rekor": { + "$ref": "#/components/schemas/RekorLog" + } + } + } + }, + "responses": { + "RolesListResponse": { + "description": "Roles List Response body", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RolesResponse" + } + }, + "examples": { + "role-list-response": { + "value": [ + { + "identifier": "example_role", + "name": "Example_Role", + "permissions": [ + "core_resource_view" + ], + "allowed_scope_levels": [ + "account" + ], + "description": "This is an Example Role", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "scope": { + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managed": true + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RolesResponse" + } + }, + "examples": { + "role-list-response": { + "value": "- identifier: example_role\n name: Example_Role\n permissions:\n - core_resource_view\n allowed_scope_levels:\n - account\n description: This is an Example Role\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n scope:\n account: sample_account\n org: sample_organization\n project: sample_project\n created: 1234567890\n updated: 1234567890\n harness_managed: true\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "RoleResponse": { + "description": "Role Response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RolesResponse" + }, + "examples": { + "role-response": { + "value": { + "identifier": "example_role", + "name": "Example_Role", + "permissions": [ + "core_resource_view" + ], + "allowed_scope_levels": [ + "account" + ], + "description": "This is an Example Role", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "scope": { + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managed": true + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RolesResponse" + }, + "examples": { + "role-response": { + "value": "identifier: example_role\nname: Example_Role\npermissions:\n - core_resource_view\nallowed_scope_levels:\n - account\ndescription: This is an Example Role\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nscope:\n account: sample_account\n org: sample_organization\n project: sample_project\ncreated: 1234567890\nupdated: 1234567890\nharness_managed: true\n" + } + } + } + } + }, + "RoleAssignmentResponse": { + "description": "Role assignment response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentResponse" + }, + "examples": { + "role-assignment-response-json": { + "value": { + "role-assignment": { + "identifier": "example_role_assignment", + "resource_group": "example_resource_group_identifier", + "role": "example_role_identifier", + "principal": { + "scope": "ACCOUNT", + "identifier": "example_principal_identifier", + "type": "USER" + }, + "disabled": false, + "managed": false + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managaed": false + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RoleAssignmentResponse" + }, + "examples": { + "role-assignment-response-yaml": { + "value": "role-assignment:\n identifier: example_role_assignment\n resource_group: example_resource_group_identifier\n role: example_role_identifier\n principal:\n scope: ACCOUNT\n identifier: example_principal_identifier\n type: USER\n disabled: false\n managed: false\ncreated: 1234567890\nupdated: 1234567890\nharness_managaed: false\n" + } + } + } + } + }, + "RoleAssignmentListResponse": { + "description": "Role Assignment List Response body", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RoleAssignmentResponse" + } + }, + "examples": { + "role-assignment-response-json": { + "value": [ + { + "role-assignment": { + "identifier": "example_role_assignment", + "resource_group": "example_resource_group_identifier", + "role": "example_role_identifier", + "principal": { + "scope": "ACCOUNT", + "identifier": "example_principal_identifier", + "type": "USER" + }, + "disabled": false, + "managed": false + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managaed": false + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RoleAssignmentResponse" + } + }, + "examples": { + "role-assignment-response-json": { + "value": "- role-assignment:\n identifier: example_role_assignment\n resource_group: example_resource_group_identifier\n role: example_role_identifier\n principal:\n scope: ACCOUNT\n identifier: example_principal_identifier\n type: USER\n disabled: false\n managed: false\n created: 1234567890\n updated: 1234567890\n harness_managaed: false\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "PublicAccessResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "AccessPolicyAnalysisResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessPolicyAnalysisResponseWrapper" + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "PublicAccessCheckResponse": { + "description": "This returns if a list of resource identifiers is public or not.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicAccessCheckResponse" + } + } + } + }, + "LicenseUsageActivity": { + "description": "Response for License Usage Activity", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LicenseUsageActivity" + } + } + } + } + }, + "ServiceListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceResponse" + } + }, + "examples": { + "example-1": { + "value": [ + { + "service": { + "account": "sample_account", + "identifier": "example_service", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ServiceResponse" + } + }, + "examples": { + "example-1": { + "value": "- service:\n account: sample_account\n identifier: example_service\n org: sample_organization\n project: sample_project\n name: Example_service\n description: This is a example service\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n yaml: |\n service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n created: 1234567890\n updated: 1234567890\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "ServiceResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceResponse" + }, + "examples": { + "example-1": { + "value": { + "service": { + "account": "sample_account", + "identifier": "example_service", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceResponse" + }, + "examples": { + "example-1": { + "value": "service:\n account: sample_account\n identifier: example_service\n org: sample_organization\n project: sample_project\n name: Example_service\n description: This is a example service\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n yaml: |\n service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\ncreated: 1234567890\nupdated: 1234567890\n" + } + } + } + } + }, + "EnvironmentListResponse": { + "description": "Example environment list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnvironmentResponse" + } + }, + "examples": { + "example-1": { + "value": [ + { + "service": { + "account": "sample_account", + "identifier": "example_environment", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_service", + "description": "This is a example environment", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnvironmentResponse" + } + }, + "examples": { + "example-1": { + "value": "- environment:\n account: sample_account\n identifier: example_environment\n org: sample_organization\n project: sample_project\n name: Example_environment\n description: This is a example environment\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n yaml: |\n environment:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\n created: 1234567890\n updated: 1234567890\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "EnvironmentResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentResponse" + }, + "examples": { + "example-1": { + "value": { + "environment": { + "account": "sample_account", + "identifier": "example_", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_environment", + "description": "This is a example environment", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentResponse" + }, + "examples": { + "example-1": { + "value": "environment:\n account: sample_account\n identifier: example_environment\n org: sample_organization\n project: sample_project\n name: Example_environment\n description: This is a example environment\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n yaml: |\n environment:\n name: \"Example_environment\"\n identifier: \"example_environment\"\n tags: {}\ncreated: 1234567890\nupdated: 1234567890\n" + } + } + } + } + }, + "InfrastructureResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InfrastructureResponse" + }, + "examples": { + "example-1": { + "value": { + "infrastructure": { + "account": "sample_account", + "identifier": "example_", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_infrastructure", + "description": "This is a example infrastructure", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InfrastructureResponse" + }, + "examples": { + "example-1": { + "value": "infrastructure:\n account: sample_account\n identifier: example_infrastructure\n org: sample_organization\n project: sample_project\n name: Example_environment\n description: This is a example infrastructure\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n yaml: |\n environment:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\ncreated: 1234567890\nupdated: 1234567890\n" + } + } + } + } + }, + "InfrastructureListResponse": { + "description": "Example infrastructure list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InfrastructureResponse" + } + }, + "examples": { + "example-1": { + "value": [ + { + "infrastructure": { + "account": "sample_account", + "identifier": "example_infrastructure", + "org": "sample_organization", + "project": "sample_project", + "name": "Example_service", + "description": "This is a example infrastructure", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "infrastructure:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\n" + }, + "created": 1234567890, + "updated": 1234567890 + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InfrastructureResponse" + } + }, + "examples": { + "example-1": { + "value": "- infrastructure:\n account: sample_account\n identifier: example_infrastructure\n org: sample_organization\n project: sample_project\n name: Example_infrastructure\n description: This is a example infrastructure\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n yaml: |\n infrastructure:\n name: \"Example_infrastructure\"\n identifier: \"example_infrastructure\"\n tags: {}\n created: 1234567890\n updated: 1234567890\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "OrganizationResponse": { + "description": "Organization response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrganizationResponse" + }, + "examples": { + "example-organization-response-json": { + "value": { + "org": { + "identifier": "example_organization", + "name": "Example Organization", + "description": "This is an example organization", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + } + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managed": true + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/OrganizationResponse" + }, + "examples": { + "example-organization-response-yaml": { + "value": "org:\n identifier: example_organization\n name: Example Organization\n description: This is an example organization\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\ncreated: 1234567890\nupdated: 1234567890\nharness_managed: true\n" + } + } + } + } + }, + "ProjectResponse": { + "description": "Project response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectResponse" + }, + "examples": { + "example-project-response-json": { + "value": { + "project": { + "org": "example_org_identifier", + "identifier": "example_project_identifier", + "name": "example-project-name", + "color": "#0063F7", + "modules": [ + "CD" + ], + "description": "This is a example project", + "tags": { + "property1": "value1", + "property2": "value2" + } + }, + "created": 1234567890, + "updated": 1234567890, + "isFavorite": true + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ProjectResponse" + }, + "examples": { + "example-project-response-yaml": { + "value": "project:\n org: example_org_identifier\n identifier: example_project_identifier\n name: example-project-name\n color: '#0063F7'\n modules:\n - CD\n description: This is a example project\n tags:\n property1: value1\n property2: value2\ncreated: 1234567890\nupdated: 1234567890\nisFavorite: true\n" + } + } + } + } + }, + "FavoriteResponse": { + "description": "Favorite response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FavoriteResponse" + }, + "examples": { + "example-Favorite-response-json": { + "value": { + "Favorite": { + "org": "sample_organization", + "project": "sample_project", + "user_id": "example_userId", + "resource_type": "Example_resourceType", + "resource_id": "Example_resourceId" + }, + "created": 1234567890 + } + } + } + } + } + }, + "FavoriteListResponse": { + "description": "Favorite list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FavoriteResponse" + } + }, + "examples": { + "example-Favorite-list-response-json": { + "value": [ + { + "Favorite": { + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project", + "user_id": "example_userId", + "resource_type": "Example_resourceType", + "resource_id": "Example_resourceId" + }, + "created": 1234567890 + } + ] + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "ProjectListResponse": { + "description": "Project list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectResponse" + } + }, + "examples": { + "example-project-list-response-json": { + "value": [ + { + "project": { + "org": "example_org_identifier", + "identifier": "example_project_identifier", + "name": "example-project-name", + "color": "#0063F7", + "modules": [ + "CD" + ], + "description": "This is a example project", + "tags": { + "property1": "value1", + "property2": "value2" + } + }, + "created": 1234567890, + "updated": 1234567890, + "isFavorite": true + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectResponse" + } + }, + "examples": { + "example-project-list-response-yaml": { + "value": "- project:\n org: example_org_identifier\n identifier: example_project_identifier\n name: example-project-name\n color: '#0063F7'\n modules:\n - CD\n description: This is a example project\n tags:\n property1: value1\n property2: value2\n created: 1234567890\n updated: 1234567890\n isFavorite: true\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "OrganizationListResponse": { + "description": "Organization list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OrganizationResponse" + } + }, + "examples": { + "example-organizations-list-response-json": { + "value": [ + { + "org": { + "identifier": "example_organization", + "name": "Example Organization", + "description": "This is an example organization", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + } + }, + "created": 1234567890, + "updated": 1234567890, + "harness_managed": true + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OrganizationResponse" + } + }, + "examples": { + "example-organizations-list-response-yaml": { + "value": "- org:\n identifier: example_organization\n name: Example Organization\n description: This is an example organization\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n created: 1234567890\n updated: 1234567890\n harness_managed: true\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "SecretResponse": { + "description": "Secret response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretResponse" + }, + "examples": { + "example-secret-response-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SSHKeyPath", + "port": 80, + "username": "example_secret", + "key_path": "example_secret", + "encrypted_passphrase": "account.example_secret" + } + }, + "created": 1234567890, + "updated": 1234567890, + "draft": false + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretResponse" + }, + "examples": { + "example-secret-response-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SSHKeyPath\n port: 80\n username: example_secret\n key_path: example_secret\n encrypted_passphrase: account.example_secret\ncreated: 1234567890\nupdated: 1234567890\ndraft: false\n" + } + } + } + } + }, + "SecretListResponse": { + "description": "Secret list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SecretResponse" + } + }, + "examples": { + "example-list-secret-response-json": { + "value": [ + { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SSHKeyPath", + "port": 80, + "username": "example_secret", + "key_path": "example_secret", + "encrypted_passphrase": "account.example_secret" + } + }, + "created": 1234567890, + "updated": 1234567890, + "draft": false + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SecretResponse" + } + }, + "examples": { + "example-list-secret-response-yaml": { + "value": "- secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SSHKeyPath\n port: 80\n username: example_secret\n key_path: example_secret\n encrypted_passphrase: account.example_secret\n created: 1234567890\n updated: 1234567890\n draft: false\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "ModuleVersionsListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ModuleVersionsResponse" + } + }, + "examples": {} + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "SecretValidationResponse": { + "description": "Response of the secret reference validation ", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretValidationResponse" + }, + "examples": { + "Example 1": { + "value": { + "success": true, + "message": "Validation is Successful, Secret can be referenced" + } + } + } + } + } + }, + "EulaSignResponse": { + "description": "Response of signing End User License Agreement", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EulaSignResponse" + } + } + } + }, + "IPAllowlistConfigResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IPAllowlistConfigResponse" + } + } + } + }, + "IPAllowlistConfigListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/IPAllowlistConfigResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "IPAllowlistConfigValidateResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IPAllowlistConfigValidateResponse" + } + } + } + }, + "IPAllowlistValidateUniqueIdentifierResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "RancherListClustersResponse": { + "description": "Response containing list of rancher cluster names", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RancherClusterItem" + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "ReleaseDetailsResponse": { + "description": "Batch Release Details response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BatchReleaseDetailsResponse" + } + }, + "examples": { + "Example 1": { + "value": [ + [ + { + "_id": {}, + "account": "account", + "org": "org", + "project": "project", + "release_key": "release_key", + "service_details": { + "service_id": "k8sservice", + "service_name": "k8s service", + "org": "orgid", + "project": "projectid" + }, + "environment_details": { + "env_id": "k8senv", + "env_name": "k8s env", + "org": "orgid", + "project": "projectid", + "connector_ref": "string", + "infra_name": "infra_name", + "infra_id": "infra_id", + "infrastructure_kind": "K8sDirect" + } + } + ] + ] + } + } + }, + "application/xml": { + "schema": { + "$ref": "#/components/schemas/BatchReleaseDetailsResponse" + } + } + } + }, + "ManifestsResponseDTO": { + "description": "Response containing a list of eligible manifest identifiers that can be applied as primary manifest.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ManifestsResponseDTO" + }, + "examples": { + "Example 1": { + "value": { + "identifiers": [ + "id1", + "id2" + ] + } + } + } + }, + "application/xml": { + "schema": { + "type": "object", + "properties": {} + } + } + } + }, + "CreateGitXWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateGitXWebhookResponse" + }, + "examples": { + "Example 1": { + "value": { + "webhook_identifier": "" + } + } + } + } + } + }, + "UpdateGitXWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateGitXWebhookResponse" + }, + "examples": { + "Example 1": { + "value": { + "webhook_identifier": "" + } + } + } + } + } + }, + "GetGitXWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitXWebhookResponse" + }, + "examples": { + "Example 1": { + "value": { + "webhook_identifier": "", + "webhook_name": "", + "connector_ref": "", + "repo_name": "", + "folder_paths": [ + "" + ], + "is_enabled": true, + "event_trigger_time": 0 + } + } + } + } + } + }, + "ListGitXWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitXWebhookResponse" + } + }, + "examples": { + "Example 1": { + "value": [ + { + "webhook_identifier": "", + "webhook_name": "", + "connector_ref": "", + "repo_name": "", + "folder_paths": [ + "" + ], + "is_enabled": true, + "event_trigger_time": 0 + } + ] + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "GitXWebhookEventResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "ListGitXWebhookEventResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GitXWebhookEventResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "UpdateGitXWebhookEventResponse": { + "description": "Update GitX Webhook Event Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitXWebhookEventResponse" + } + } + } + }, + "DeleteGitXWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteGitXWebhookResponse" + }, + "examples": { + "Example 1": { + "value": { + "webhook_identifier": "" + } + } + } + } + } + }, + "BannerResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BannerResponseDTO" + } + } + } + }, + "BannerListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BannerResponseDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "string" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "string" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "string" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "BannerBooleanResponse": { + "description": "This Response body is used in validate banner identifier endpoint & /v1/banners/allowed", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "CertificateResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CertificateResponseDTO" + } + } + } + }, + "CertificateListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CertificateResponseDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "CertificateValidateUniqueIdentifierResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "LdapSettingsResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapSettingsResponse" + } + } + } + }, + "LdapValidateResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapValidateResponseDTO" + } + } + } + }, + "LdapGroupResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapGroupResponseDTO" + } + } + } + }, + "LinkGroupToLdapSettings": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroupDTO" + } + } + }, + "headers": {} + }, + "UnlinkGroupToLdapSettings": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserGroupDTO" + } + } + } + }, + "LinkGroupResponse": { + "description": "" + }, + "LdapSettingsIterationsResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapSettingsIterations" + } + } + } + }, + "LdapTestLoginResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapTestLoginResponseDTO" + } + } + } + }, + "LdapTestLoginRequest": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapTestLoginRequestDTO" + } + } + } + }, + "GetGitXWebhookEventFileValidationResponse": { + "description": "Get GitX Webhook Event File Validation Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GetGitXWebhookEventFileValidationResponse" + } + } + } + } + }, + "PrometheusMetricsResponse": { + "type": "object", + "additionalProperties": { + "type": "object" + } + }, + "ListGitXWebhookBranchesResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListGitXWebhookBranchesDTO" + } + } + } + }, + "ListWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WebhookResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "CreateWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateWebhookResponse" + } + } + }, + "headers": {} + }, + "GetWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WebhookResponse" + } + } + } + }, + "UpdateWebhookResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateWebhookResponse" + } + } + } + }, + "OidcProviderResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OidcProviderDTO" + } + } + } + }, + "OidcProvidersResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/OidcProviderDTO" + } + } + } + } + }, + "MsTeamsTokenResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "properties": { + "token_type": { + "type": "string", + "enum": [ + "Bearer" + ] + }, + "scope": { + "type": "string" + }, + "expires_in": { + "type": "integer" + }, + "ext_expires_in": { + "type": "integer" + }, + "access_token": { + "type": "string" + }, + "refresh_token": { + "type": "string" + } + } + } + } + } + }, + "ConfluenceTokenResponse": { + "description": "Confluence Token Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "access_token": { + "type": "string" + }, + "scope": { + "type": "string" + }, + "expires_in": { + "type": "integer" + }, + "token_type": { + "type": "string" + }, + "refresh_token": { + "type": "string" + } + } + } + } + } + }, + "SlackTokenResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "properties": { + "ok": { + "type": "boolean", + "description": "Indicates whether the request was successful." + }, + "app_id": { + "type": "string", + "description": "The ID of the Slack application." + }, + "authed_user": { + "type": "object", + "description": "The authenticated user details.", + "$ref": "#/components/schemas/AuthedUser" + }, + "scope": { + "type": "string", + "description": "The scopes granted to the application." + }, + "token_type": { + "type": "string", + "description": "The type of token issued." + }, + "access_token": { + "type": "string", + "description": "The access token for the application." + }, + "bot_user_id": { + "type": "string", + "description": "The bot user ID associated with the token." + }, + "refresh_token": { + "type": "string", + "description": "The refresh token for the application." + }, + "expires_in": { + "type": "integer", + "description": "The number of seconds until the token expires." + }, + "team": { + "description": "The team information.", + "$ref": "#/components/schemas/Team" + }, + "enterprise": { + "$ref": "#/components/schemas/Enterprise", + "description": "Enterprise details if available." + }, + "is_enterprise_install": { + "type": "boolean", + "description": "Indicates if the installation is for an enterprise." + } + } + } + } + } + }, + "ConnectorTestConnectionResponse": { + "description": "This has test connection details for the Connector defined in Harness.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorTestConnectionResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorTestConnectionResponse" + } + } + } + }, + "ConnectorResponse": { + "description": "Connector response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorResponse" + }, + "examples": { + "example-connector-response-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "description": "example_connector", + "spec": { + "type": "GitHttp", + "url": "https://github.com/example/example-repo.git", + "branch": "example_branch", + "connection_type": "Repo", + "username": "git-http-user", + "password_ref": "account.git-http-password" + } + }, + "created": 1234567890, + "updated": 1234567890 + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorResponse" + }, + "examples": { + "example-connector-response-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n description: example_connector\n spec:\n type: GitHttp\n url: 'https://github.com/example/example-repo.git'\n branch: example_branch\n connection_type: Repo\n username: git-http-user\n password_ref: account.git-http-password\ncreated: 1234567890\nupdated: 1234567890\n" + } + } + } + } + }, + "ConnectorListResponse": { + "description": "Connector list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConnectorResponse" + } + }, + "examples": { + "example-list-connector-response-json": { + "value": [ + { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "description": "example_connector", + "spec": { + "type": "GitHttp", + "url": "https://github.com/example/example-repo.git", + "branch": "example_branch", + "connection_type": "Repo", + "username": "git-http-user", + "password_ref": "account.git-http-password" + } + }, + "created": 1234567890, + "updated": 1234567890 + } + ] + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorResponse" + }, + "examples": { + "example-list-connector-response-yaml": { + "value": "- connector:\n name: example_connector\n identifier: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n description: example_connector\n spec:\n type: GitHttp\n url: 'https://github.com/example/example-repo.git'\n branch: example_branch\n connection_type: Repo\n username: git-http-user\n password_ref: account.git-http-password\n created: 1234567890\n updated: 1234567890\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "ResourceGroupsListResponse": { + "description": "Resource Groups List response body", + "content": { + "application/json": { + "schema": { + "type": "array", + "description": "List of Resource Groups", + "items": { + "$ref": "#/components/schemas/ResourceGroupsResponse" + } + }, + "examples": { + "resource-group-list-response": { + "value": [ + { + "identifier": "example_resource_group", + "name": "Example Resource Group", + "color": "#0063F7", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "description": "This is an Example Resource Group", + "allowed_scope_levels": [ + "account" + ], + "included_scope": [ + { + "filter": "EXCLUDING_CHILD_SCOPES", + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + } + ], + "resource_filter": [ + { + "resource_type": "resource", + "identifiers": [ + "example_resource" + ], + "attribute_name": "resource_attribute", + "attribute_values": [ + "example_resource_attribute" + ] + } + ], + "include_all_resources": false, + "harness_managed": true, + "created": 1234567890, + "updated": 1234567890 + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "description": "List of Resource Groups", + "items": { + "$ref": "#/components/schemas/ResourceGroupsResponse" + } + }, + "examples": { + "resource-group-list-response": { + "value": "- identifier: example_resource_group\n name: Example Resource Group\n color: '#0063F7'\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n description: This is an Example Resource Group\n allowed_scope_levels:\n - account\n included_scope:\n - filter: EXCLUDING_CHILD_SCOPES\n account: sample_account\n org: sample_organization\n project: sample_project\n resource_filter:\n - resource_type: resource\n identifiers:\n - example_resource\n attribute_name: resource_attribute\n attribute_values:\n - example_resource_attribute\n include_all: false\n harness_managed: true\n created: 1234567890\n updated: 1234567890\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "ResourceGroupsResponse": { + "description": "Resource Group response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupsResponse" + }, + "examples": { + "resource-group-response": { + "value": { + "identifier": "example_resource_group", + "name": "Example Resource Group", + "color": "#0063F7", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "description": "This is an Example Resource Group", + "allowed_scope_levels": [ + "account" + ], + "included_scope": [ + { + "filter": "EXCLUDING_CHILD_SCOPES", + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + } + ], + "resource_filter": [ + { + "resource_type": "resource", + "identifiers": [ + "example_resource" + ], + "attribute_name": "resource_attribute", + "attribute_values": [ + "example_resource_attribute" + ] + } + ], + "include_all_resources": false, + "harness_managed": true, + "created": 1234567890, + "updated": 1234567890 + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupsResponse" + }, + "examples": { + "resource-group-response": { + "value": "identifier: example_resource_group\nname: Example Resource Group\ncolor: '#0063F7'\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\ndescription: This is an Example Resource Group\nallowed_scope_levels:\n - account\nincluded_scope:\n - filter: EXCLUDING_CHILD_SCOPES\n account: sample_account\n org: sample_organization\n project: sample_project\nresource_filter:\n - resource_type: resource\n identifiers:\n - example_resource\n attribute_name: resource_attribute\n attribute_values:\n - example_resource_attribute\ninclude_all: false\nharness_managed: true\ncreated: 1234567890\nupdated: 1234567890\n" + } + } + } + } + }, + "StreamingDestinationResponse": { + "description": "Streaming Destination response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StreamingDestinationResponse" + }, + "examples": { + "example-streaming-destination-response": { + "value": { + "streaming_destination": { + "identifier": "example_destination", + "name": "example desitnation name", + "status": "ACTIVE", + "connector_ref": "account.example_connector", + "spec": { + "type": "AWS_S3", + "bucket": "example_bucket" + } + }, + "created": 1670304106000, + "update": 1670304106000 + } + } + } + } + } + }, + "StreamingDestinationListResponse": { + "description": "Streaming Destination list response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StreamingDestinationResponse" + } + }, + "examples": { + "example-list-streaming-destination-response": { + "value": [ + { + "streaming_destination": { + "identifier": "example_destination", + "name": "example desitnation name", + "status": "ACTIVE", + "connector_ref": "account.example_connector", + "spec": { + "type": "AWS_S3", + "bucket": "example_bucket" + } + }, + "created": 1670304106000, + "update": 1670304106000 + } + ] + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "StreamingDestinationValidateResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "boolean", + "description": "It returns true if the Identifier is unique and false if the Identifier is not unique" + } + } + } + }, + "StreamingDestinationCardsResponse": { + "description": "Streaming Destination cards response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StreamingDestinationCards" + } + } + } + }, + "StreamingDestinationAggregateListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StreamingDestinationAggregateDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "AuditListResponse": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AuditEventDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "NotificationChannelListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationChannelDTO" + } + } + }, + "application/xml": { + "schema": { + "$ref": "#/components/schemas/NotificationChannelDTO" + } + }, + "multipart/form-data": { + "schema": { + "$ref": "#/components/schemas/NotificationRuleDTO" + } + }, + "text/html": { + "schema": { + "$ref": "#/components/schemas/NotificationChannelDTO" + } + }, + "text/plain": { + "schema": { + "type": "object", + "properties": {} + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "NotificationChannelResponse": { + "description": "Notification channel response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotificationChannelDTO" + } + }, + "application/xml": { + "schema": { + "$ref": "#/components/schemas/NotificationChannelDTO" + } + }, + "multipart/form-data": { + "schema": { + "$ref": "#/components/schemas/NotificationChannelDTO" + } + } + } + }, + "NotificationRuleResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotificationRuleDTO" + } + }, + "application/xml": { + "schema": { + "$ref": "#/components/schemas/NotificationRuleDTO" + } + }, + "multipart/form-data": { + "schema": { + "$ref": "#/components/schemas/NotificationRuleDTO" + } + } + } + }, + "NotificationRuleListResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationRuleDTO" + } + } + }, + "application/xml": { + "schema": { + "$ref": "#/components/schemas/NotificationRuleDTO" + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "NotificationResourceList": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NotificationResourceDTO" + } + } + } + }, + "headers": {} + }, + "ValidateIdentifierResponse": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ValidateIdentifierDTO" + } + } + } + }, + "SaveAttachmentResponse": { + "description": "Save Notification Attachment Response", + "content": { + "application/json": { + "schema": { + "type": "string", + "description": "File Id of the attachment saved" + } + } + } + }, + "PipelineCreateResponseBody": { + "description": "Pipeline response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineCreateResponseBody" + }, + "examples": { + "example-pipeline": { + "value": { + "identifier": "example_pipeline" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineCreateResponseBody" + }, + "examples": { + "example-pipeline": { + "value": "identifier: example_pipeline\n" + } + } + } + } + }, + "TriggerResponseBody": { + "description": "Trigger response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TriggerResponseBody" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TriggerResponseBody" + } + } + } + }, + "TriggerGetResponseBody": { + "description": "Pipeline response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TriggerGetResponseBody" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TriggerGetResponseBody" + } + } + } + }, + "PipelineValidationResponseBody": { + "description": "Pipeline Validation response body", + "content": {} + }, + "PipelineValidationUUIDResponseBody": { + "description": "Contains the UUID of the Pipeline Validation Event that's started", + "content": {} + }, + "PipelineGetResponseBody": { + "description": "Pipeline response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineGetResponseBody" + }, + "examples": { + "example-response": { + "value": { + "pipeline_yaml": "example_yaml_text", + "template_applied_pipeline_yaml": "example_yaml_text_with_template", + "identifier": "example_pipeline", + "name": "ExamplePipeline", + "org": "example_org", + "project": "example_project", + "description": "Pipeline Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "modules": [ + "cd" + ], + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "valid": true, + "yaml_error_wrapper": { + "message": "something is incorrect", + "message_fqn": "something is incorrect at pipeline.name", + "stage_info": { + "identifier": "example_stage", + "type": "stage", + "name": "Example Stage", + "fqn": "pipeline.stages.stage" + }, + "step_info": { + "identifier": "example_step", + "type": "string", + "name": "string", + "fqn": "pipeline.steps.step" + }, + "fqn": "pipeline.name", + "hint_message": "try changing something" + }, + "cache_response_metadata": { + "cache_state": "VALID_CACHE", + "ttl_left": 9223372036854776000, + "last_updated_at": 9223372036854776000 + }, + "created": 1234567890, + "updated": 1234567890 + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineGetResponseBody" + }, + "examples": { + "example-response": { + "value": "pipeline_yaml: example_yaml_text\ntemplate_applied_pipeline_yaml: example_yaml_text_with_template\nidentifier: example_pipeline\nname: ExamplePipeline\norg: example_org\nproject: example_project\ndescription: Pipeline Description\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nmodules:\n - cd\ngit_details:\n object_id: example_object\n branch_name: branch\n file_path: /folder/file.json\n repo_name: example_repository\n commit_id: abcd123\n file_url: www.repo/folder/file.com\n repo_url: www.repo.com\nvalid: true\nyaml_error_wrapper:\n message: something is incorrect\n message_fqn: something is incorrect at pipeline.name\n stage_info:\n identifier: example_stage\n type: stage\n name: Example Stage\n fqn: pipeline.stages.stage\n step_info:\n identifier: example_step\n type: string\n name: string\n fqn: pipeline.steps.step\n fqn: pipeline.name\n hint_message: try changing something\ncache_response_metadata:\n cache_state: VALID_CACHE\n ttl_left: 9223372036854776000\n last_updated_at: 9223372036854776000\ncreated: 1234567890\nupdated: 1234567890\n" + } + } + } + } + }, + "PipelineListResponseBody": { + "description": "Response body for List Pipelines.", + "content": { + "application/json": { + "schema": { + "description": "Response body for List Pipelines.", + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelineListResponseBody" + } + }, + "examples": { + "example-list-response": { + "value": [ + { + "identifier": "example_pipeline", + "name": "Example Pipeline", + "description": "This is an Example Pipeline", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "created": 1234567890, + "updated": 1234567890, + "modules": [ + "CD" + ], + "recent_execution_info": [ + { + "executor_info": { + "trigger_type": "NOOP", + "username": "harness_user", + "email": "noreply@harness.io" + }, + "execution_id": "example_execution_identifier", + "execution_status": "Running", + "started": 1234567890, + "ended": 1234567890, + "run_number": 5, + "parent_stage_info": { + "has_parent_pipeline": true, + "execution_id": "example_parent_execution_identifier", + "identifier": "example_parent_pipeline_id", + "project_id": "example_project_id", + "org_id": "example_org_id", + "run_sequence": 12671687, + "stage_node_id": "example_stage_node_id" + } + } + ], + "store_type": "REMOTE", + "connector_ref": "example_connector", + "valid": true, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + } + } + ] + } + } + }, + "application/yaml": { + "schema": { + "description": "Response body for List Pipelines.", + "type": "array", + "items": { + "$ref": "#/components/schemas/PipelineListResponseBody" + } + }, + "examples": { + "example-list-response": { + "value": "- identifier: example_pipeline\n name: Example Pipeline\n description: This is an Example Pipeline\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n created: 1234567890\n updated: 1234567890\n modules:\n - CD\n recent_execution_info:\n - executor_info:\n trigger_type: NOOP\n username: harness_user\n email: noreply@harness.io\n execution_id: example_execution_identifier\n execution_status: Running\n started: 1234567890\n ended: 1234567890\n run_number: 5\n parent_stage_info:\n has_parent_pipeline: true\n execution_id: example_parent_execution_identifier\n identifier: example_parent_pipeline_id\n project_id: example_project_id\n org_id: example_org_id\n run_sequence: 12671687\n stage_node_id: example_stage_node_id\n store_type: REMOTE\n connector_ref: example_connector\n valid: true\n git_details:\n object_id: example_object\n branch_name: branch\n file_path: /folder/file.json\n repo_name: example_repository\n commit_id: abcd123\n file_url: www.repo/folder/file.com\n repo_url: www.repo.com\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "InputSetResponseBody": { + "description": "Input Set response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetResponseBody" + }, + "examples": { + "example-input-set": { + "value": { + "input_set_yaml": "example_input_set_yaml", + "identifier": "example_input_set", + "name": "Example Input Set", + "org": "example_org", + "project": "example_project", + "description": "InputSet Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "created": 1234567890, + "updated": 9876543210, + "error_details": { + "valid": false, + "message": "Some fields in the Input Set are invalid.", + "outdated": true, + "error_pipeline_yaml": "serviceConfig: \"pipeline.stages.example_deploy_stage.spec.serviceConfig\"\n", + "fqn_errors": [ + { + "fqn": "pipeline.stages.example_deploy_stage.spec.serviceConfig", + "errors": [ + { + "field_name": "serviceConfig", + "message": "Field not a runtime input", + "identifier_of_error_source": "example_input_set" + } + ] + } + ], + "invalid_refs": [ + "example_invalid_input_set" + ] + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InputSetResponseBody" + }, + "examples": { + "example-input-set": { + "value": "input_set_yaml: example_input_set_yaml\nidentifier: example_input_set\nname: Example Input Set\norg: example_org\nproject: example_project\ndescription: InputSet Description\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\ngit_details:\n object_id: example_object\n branch_name: branch\n file_path: /folder/file.json\n repo_name: example_repository\n commit_id: abcd123\n file_url: www.repo/folder/file.com\n repo_url: www.repo.com\ncreated: 1234567890\nupdated: 9876543210\nerror_details:\n valid: false\n message: Some fields in the Input Set are invalid.\n outdated: true\n error_pipeline_yaml: |\n serviceConfig: \"pipeline.stages.example_deploy_stage.spec.serviceConfig\"\n fqn_errors:\n - fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig\n errors:\n - field_name: serviceConfig\n message: Field not a runtime input\n identifier_of_error_source: example_input_set\n invalid_refs:\n - example_invalid_input_set\n" + } + } + } + } + }, + "InputSetListResponseBody": { + "description": "Input Set response body", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputSetResponseBody" + } + }, + "examples": { + "example-input-sets": { + "value": [ + { + "input_set_yaml": "example_input_set_yaml", + "identifier": "example_input_set", + "name": "Example Input Set", + "org": "example_org", + "project": "example_project", + "description": "InputSet Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "created": 1234567890, + "updated": 9876543210, + "error_details": { + "valid": false, + "message": "Some fields in the Input Set are invalid.", + "outdated": true, + "error_pipeline_yaml": "serviceConfig: \"pipeline.stages.example_deploy_stage.spec.serviceConfig\"\n", + "fqn_errors": [ + { + "fqn": "pipeline.stages.example_deploy_stage.spec.serviceConfig", + "errors": [ + { + "field_name": "serviceConfig", + "message": "Field not a runtime input", + "identifier_of_error_source": "example_input_set" + } + ] + } + ], + "invalid_refs": [ + "example_invalid_input_set" + ] + } + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputSetResponseBody" + } + }, + "examples": { + "example-input-sets": { + "value": "- input_set_yaml: example_input_set_yaml\n identifier: example_input_set\n name: Example Input Set\n org: example_org\n project: example_project\n description: InputSet Description\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n git_details:\n object_id: example_object\n branch_name: branch\n file_path: /folder/file.json\n repo_name: example_repository\n commit_id: abcd123\n file_url: www.repo/folder/file.com\n repo_url: www.repo.com\n created: 1234567890\n updated: 9876543210\n error_details:\n valid: false\n message: Some fields in the Input Set are invalid.\n outdated: true\n error_pipeline_yaml: |\n serviceConfig: \"pipeline.stages.example_deploy_stage.spec.serviceConfig\"\n fqn_errors:\n - fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig\n errors:\n - field_name: serviceConfig\n message: Field not a runtime input\n identifier_of_error_source: example_input_set\n invalid_refs:\n - example_invalid_input_set\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "InputsResponseBody": { + "description": "Inputs Response Body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputsResponseBody" + }, + "examples": { + "inputs-response-body": { + "value": { + "inputs": { + "key1": { + "prompt": false, + "required": false, + "default": "golang", + "type": "string", + "desc": "sample desc" + }, + "key2": { + "prompt": true, + "required": true, + "type": "string", + "desc": "sample desc" + }, + "key3": { + "prompt": false, + "required": false, + "type": "number" + }, + "key4": { + "prompt": false, + "required": true, + "type": "secret", + "desc": "sample desc", + "enums": [ + "enum1", + "enum2" + ] + } + }, + "options": { + "clone": { + "ref": { + "type": { + "prompt": false, + "required": true, + "type": "string", + "enums": [ + "enum1", + "enum2", + "enum3" + ] + }, + "name": { + "prompt": false, + "required": true, + "type": "string" + } + } + } + } + } + } + } + } + } + }, + "PipelineMoveConfigResponseBody": { + "description": "Response body for moving a pipeline configuration.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineMoveConfigResponseBody" + } + } + } + }, + "InputSetMoveConfigResponseBody": { + "description": "Response body for moving an input set configuration.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetMoveConfigResponseBody" + } + } + } + }, + "PipelineSaveResponseBody": { + "description": "Response body for pipeline save.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineSaveResponseBody" + } + } + } + }, + "InputSetImportResponseBody": { + "description": "Response body for input set import.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetImportResponseBody" + } + } + } + }, + "ApprovalInstanceResponseBody": { + "description": "Approval Instance response body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApprovalInstanceResponseBody" + }, + "examples": { + "example-approval-instance": { + "value": { + "id": "example_approval_instance", + "type": "HarnessApproval", + "status": "WAITING", + "deadline": 1683953545329, + "details": { + "approvalMessage": "Please review the following information\nand approve the pipeline progression", + "includePipelineExecutionHistory": true, + "approvers": { + "userGroups": [ + "example_usergroup_1", + "example_usergroup_2" + ], + "minimumCount": 3, + "disallowPipelineExecutor": false + }, + "approvalActivities": [], + "approverInputs": [ + { + "name": "example_input_1", + "defaultValue": "example_value_1" + }, + { + "name": "example_input_2", + "defaultValue": "example_value_2" + } + ], + "validatedApprovalUserGroups": [ + { + "accountIdentifier": "example_account_identifier", + "orgIdentifier": "example_org_identifier", + "projectIdentifier": "example_project_identifier", + "identifier": "example_usergroup_1", + "name": "Example Usergroup 1" + }, + { + "accountIdentifier": "example_account_identifier", + "orgIdentifier": "example_org_identifier", + "projectIdentifier": "example_project_identifier", + "identifier": "example_usergroup_2", + "name": "Example Usergroup 2" + } + ], + "autoRejectEnabled": false, + "created": 1683867145351, + "updated": 1683867145351 + }, + "error_message": "example error message" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ApprovalInstanceResponseBody" + }, + "examples": { + "example-approval-instance": { + "value": "id: example_approval_instance\ntype: HarnessApproval\nstatus: WAITING\ndeadline: 1683953545329\ndetails:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n userGroups:\n - example_usergroup_1\n - example_usergroup_2\n minimumCount: 3\n disallowPipelineExecutor: false\n approvalActivities: []\n approverInputs:\n - name: example_input_1\n defaultValue: example_value_1\n - name: example_input_2\n defaultValue: example_value_2\n validatedApprovalUserGroups:\n - accountIdentifier: example_account_identifier\n orgIdentifier: example_org_identifier\n projectIdentifier: example_project_identifier\n identifier: example_usergroup_1\n name: Example Usergroup 1\n - accountIdentifier: example_account_identifier\n orgIdentifier: example_org_identifier\n projectIdentifier: example_project_identifier\n identifier: example_usergroup_2\n name: Example Usergroup 2\n autoRejectEnabled: false\n created: 1683867145351\n updated: 1683867145351\nerror_message: example error message\n" + } + } + } + } + }, + "ApprovalInstanceListResponseBody": { + "description": "Approval Instances list response body", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApprovalInstanceResponseBody" + } + }, + "examples": { + "example-approval-instances": { + "value": [ + { + "id": "example_approval_instance", + "type": "HarnessApproval", + "status": "WAITING", + "deadline": 1683953545329, + "details": { + "approvalMessage": "Please review the following information\nand approve the pipeline progression", + "includePipelineExecutionHistory": true, + "approvers": { + "userGroups": [ + "example_usergroup_1", + "example_usergroup_2" + ], + "minimumCount": 3, + "disallowPipelineExecutor": false + }, + "approvalActivities": [], + "approverInputs": [ + { + "name": "example_input_1", + "defaultValue": "example_value_1" + }, + { + "name": "example_input_2", + "defaultValue": "example_value_2" + } + ], + "validatedApprovalUserGroups": [ + { + "accountIdentifier": "example_account_identifier", + "orgIdentifier": "example_org_identifier", + "projectIdentifier": "example_project_identifier", + "identifier": "example_usergroup_1", + "name": "Example Usergroup 1" + }, + { + "accountIdentifier": "example_account_identifier", + "orgIdentifier": "example_org_identifier", + "projectIdentifier": "example_project_identifier", + "identifier": "example_usergroup_2", + "name": "Example Usergroup 2" + } + ], + "autoRejectEnabled": false, + "created": 1683867145351, + "updated": 1683867145351 + }, + "error_message": "example error message" + } + ] + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ApprovalInstanceResponseBody" + } + }, + "examples": { + "example-approval-instances": { + "value": "- id: example_approval_instance\n type: HarnessApproval\n status: WAITING\n deadline: 1683953545329\n details:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n userGroups:\n - example_usergroup_1\n - example_usergroup_2\n minimumCount: 3\n disallowPipelineExecutor: false\n approvalActivities: []\n approverInputs:\n - name: example_input_1\n defaultValue: example_value_1\n - name: example_input_2\n defaultValue: example_value_2\n validatedApprovalUserGroups:\n - accountIdentifier: example_account_identifier\n orgIdentifier: example_org_identifier\n projectIdentifier: example_project_identifier\n identifier: example_usergroup_1\n name: Example Usergroup 1\n - accountIdentifier: example_account_identifier\n orgIdentifier: example_org_identifier\n projectIdentifier: example_project_identifier\n identifier: example_usergroup_2\n name: Example Usergroup 2\n autoRejectEnabled: false\n created: 1683867145351\n updated: 1683867145351\n error_message: example error message\n" + } + } + } + } + }, + "GitMetadataUpdateResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateResponseBody" + } + } + } + }, + "IndividualSchemaResponseBody": { + "description": "Example response", + "content": {} + }, + "PipelineExecuteResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineExecuteResponseBody" + } + } + } + }, + "StepsDataResponseBody": { + "description": "Steps data", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StepsDataResponseBody" + }, + "examples": { + "example-1": { + "value": { + "name": "Library", + "steps_data": [], + "step_categories": [ + { + "name": "Continuous Deployment", + "steps_data": [], + "step_categories": [ + { + "name": "GitOps", + "steps_data": [ + { + "name": "GitOps Merge PR", + "type": "MergePR", + "disabled": false, + "feature_restriction_name": null + }, + { + "name": "Update GitOps App", + "type": "UpdateGitOpsApp", + "disabled": false, + "feature_restriction_name": null + } + ], + "step_categories": [] + }, + { + "name": "Kubernetes", + "steps_data": [ + { + "name": "Canary Deployment", + "type": "K8sCanaryDeploy", + "disabled": false, + "feature_restriction_name": null + }, + { + "name": "Canary Delete", + "type": "K8sCanaryDelete", + "disabled": false, + "feature_restriction_name": null + }, + { + "name": "Apply", + "type": "K8sApply", + "disabled": false, + "feature_restriction_name": null + } + ], + "step_categories": [] + } + ] + } + ] + } + } + } + } + } + }, + "PipelineInputSchemaDetailsResponseBody": { + "description": "Example response", + "content": {} + }, + "MergeInputSetResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MergeInputSetResponseBody" + } + } + } + }, + "StageExecutionResponseList": { + "description": "Example response", + "content": {} + }, + "TemplateResponse": { + "description": "Template Response Body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateResponse" + }, + "examples": { + "example-1": { + "value": { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "identifier": "example_template", + "name": "Example_template", + "description": "string", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "version_label": "example_version", + "entity_type": "Stage", + "child_type": "example_child_type", + "scope": "org", + "version": 1234567890, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "updated": 1234567890, + "store_type": "INLINE", + "connector_ref": "example_connector_ref", + "stable_template": true + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateResponse" + }, + "examples": { + "example-1": { + "value": "account: example_account\norg: example_organization\nproject: example_project\nidentifier: example_template\nname: Example_template\ndescription: string\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nyaml: |\n template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\nversion_label: example_version\nentity_type: Stage\nchild_type: example_child_type\nscope: org\nversion: 1234567890\ngit_details:\n object_id: example_object\n branch_name: branch\n file_path: /folder/file.json\n repo_name: example_repository\n commit_id: abcd123\n file_url: www.repo/folder/file.com\n repo_url: www.repo.com\nupdated: 1234567890\nstore_type: INLINE\nconnector_ref: example_connector_ref\nstable_template: true\n" + } + } + } + } + }, + "TemplateWithInputsResponse": { + "description": "Template With Input reference", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateWithInputsResponse" + }, + "examples": { + "example-1": { + "value": { + "template": { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "identifier": "example_template", + "name": "Example_template", + "description": "string", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "version_label": "example_version", + "entity_type": "Stage", + "child_type": "example_child_type", + "scope": "org", + "version": 1234567890, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "updated": 1234567890, + "store_type": "INLINE", + "connector_ref": "example_connector_ref", + "stable_template": true + }, + "inputs": "example" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateWithInputsResponse" + }, + "examples": { + "example-1": { + "value": "template:\n account: example_account\n org: example_organization\n project: example_project\n identifier: example_template\n name: Example_template\n description: string\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n yaml: |\n template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n version_label: example_version\n entity_type: Stage\n child_type: example_child_type\n scope: org\n version: 1234567890\n git_details:\n object_id: example_object\n branch_name: branch\n file_path: /folder/file.json\n repo_name: example_repository\n commit_id: abcd123\n file_url: www.repo/folder/file.com\n repo_url: www.repo.com\n updated: 1234567890\n store_type: INLINE\n connector_ref: example_connector_ref\n stable_template: true\ninputs: example\n" + } + } + } + } + }, + "TemplateMetaDataList": { + "description": "Template Lists Meta Data Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateMetaDataList" + }, + "examples": { + "example-1": { + "value": [ + { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "identifier": "example_template", + "name": "Example_template", + "description": "string", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "version_label": "example_version", + "entity_type": "Step", + "child_type": "example_child_type", + "scope": "org", + "version": 1234567890, + "git_details": { + "object_id": "example_object", + "branch_name": "branch", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "commit_id": "abcd123", + "file_url": "www.repo/folder/file.com", + "repo_url": "www.repo.com" + }, + "updated": 1234567890, + "store_type": "INLINE", + "connector_ref": "example_connector_ref", + "stable_template": true + } + ] + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateMetaDataList" + }, + "examples": { + "example-1": { + "value": "- account: example_account\n org: example_organization\n project: example_project\n identifier: example_template\n name: Example_template\n description: string\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n version_label: example_version\n entity_type: Step\n child_type: example_child_type\n scope: org\n version: 1234567890\n git_details:\n object_id: example_object\n branch_name: branch\n file_path: /folder/file.json\n repo_name: example_repository\n commit_id: abcd123\n file_url: www.repo/folder/file.com\n repo_url: www.repo.com\n updated: 1234567890\n store_type: INLINE\n connector_ref: example_connector_ref\n stable_template: true\n" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "TemplateUpdateStableResponse": { + "description": "Template stable version update Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateUpdateStableResponse" + }, + "examples": { + "example-1": { + "value": { + "stable_version": "example_version" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateUpdateStableResponse" + }, + "examples": { + "example-1": { + "value": "stable_version: example_version\n" + } + } + } + } + }, + "TemplateImportResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateImportResponseBody" + } + } + } + }, + "TemplateSchemaResponse": { + "description": "Template Schema Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateSchemaResponse" + } + } + } + }, + "TemplateInputSchemaDetailsResponseBody": { + "description": "Example response", + "content": {} + }, + "TemplateUpdateGitMetadataResponse": { + "description": "Template GitMetadata response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "type": "boolean", + "x-stoplight": { + "id": "lnqiaqy3xo6xg" + } + } + } + } + } + } + }, + "BackstageEnvVariableResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BackstageEnvVariableResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/BackstageEnvVariableResponse" + } + } + } + }, + "BackstageEnvVariableResponseList": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BackstageEnvVariableResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/BackstageEnvVariableResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "BackstagePermissionsResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BackstagePermissionsResponse" + } + } + } + }, + "StatusInfoResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatusInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/StatusInfoResponse" + } + } + } + }, + "StatusInfoResponseV2": { + "description": "Response for getting status info", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatusInfoV2" + } + } + } + }, + "LayoutResponse": { + "description": "Layout response", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/LayoutResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/LayoutResponse" + } + } + } + }, + "NamespaceResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NamespaceResponse" + } + }, + "application/xml": { + "schema": { + "$ref": "#/components/schemas/NamespaceResponse" + } + } + } + }, + "HarnessEntitiesResponse": { + "description": "Response for harness entities mapping with backstage entities", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessEntitiesResponse" + }, + "examples": {} + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "ImportEntitiesResponse": { + "description": "Response for import / save harness entities to IDP", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ImportEntitiesResponse" + } + } + } + }, + "PluginInfoResponseList": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PluginInfoResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PluginInfoResponse" + } + } + } + } + }, + "PluginInfoResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PluginInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PluginInfoResponse" + } + } + } + }, + "PluginDetailedInfoResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PluginDetailedInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PluginDetailedInfoResponse" + } + } + } + }, + "AppConfigResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AppConfigResponse" + } + }, + "application/xml": { + "schema": { + "type": "object", + "properties": {} + } + }, + "multipart/form-data": { + "schema": { + "type": "object", + "properties": {} + } + }, + "text/html": { + "schema": { + "type": "object", + "properties": {} + } + } + } + }, + "ConnectorInfoResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorInfoResponse" + } + } + } + }, + "ConnectorInfoResponseList": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorInfoResponse" + } + } + } + }, + "MergedPluginConfigResponse": { + "description": "Merged Config for all Enabled Plugins Response.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MergedPluginConfigResponse" + } + } + } + }, + "HarnessEntitiesCountResponse": { + "description": "Response for harness entities count that can be imported to IDP", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessEntitiesCountResponse" + } + } + } + }, + "PluginRequestResponseList": { + "description": "Returns all plugin requests for an account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PluginRequestResponseList" + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "GenerateYamlResponse": { + "description": "Response contianing entity yaml definition and description about the entity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GenerateYamlResponse" + } + } + } + }, + "AuthInfoResponse": { + "description": "Response containing auth environment variables and namespace", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuthInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AuthInfoResponse" + } + } + } + }, + "AllowListResponse": { + "description": "Response containing backend url allow list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AllowListResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AllowListResponse" + } + } + } + }, + "ConfigurationEntitiesResponse": { + "description": "Response for configuration screen resources", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConfigurationEntities" + } + } + } + }, + "ResolvedEnvVariableResponse": { + "description": "Returns encrypted string of list of env variables with the decrypted value", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResolvedEnvVariableResponse" + }, + "examples": {} + }, + "application/yaml": { + "schema": { + "type": "string" + }, + "examples": {} + } + } + }, + "DataSourcesResponse": { + "description": "Response containing list of data sources present in account", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DataSourcesResponse" + } + }, + "application/xml": { + "schema": { + "type": "object", + "properties": { + "datasources": { + "type": "string", + "x-stoplight": { + "id": "1f3lviacdjj4f" + } + } + } + } + } + } + }, + "ScorecardSummaryInfoResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardSummaryResponse" + } + } + } + }, + "DatapointResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DataPointsResponse" + } + } + } + }, + "ScorecardScoreResponse": { + "description": "Response for scorecards score", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardScoreResponse" + } + } + } + }, + "EntityScoresResponseList": { + "description": "Response for all the entity scores", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityScoresResponse" + } + } + } + } + }, + "ScorecardGraphSummaryResponse": { + "description": "Response for scorecard's score summary for graph", + "content": {} + }, + "ScorecardRecalibrateResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardRecalibrateResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ScorecardRecalibrateResponse" + } + } + } + }, + "CheckResponseList": { + "description": "Response for all checks available", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CheckResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CheckResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "CheckDetailsResponse": { + "description": "Response for check details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CheckDetailsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CheckDetailsResponse" + } + } + } + }, + "ScorecardResponseList": { + "description": "Response for all scorecards available", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScorecardResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ScorecardResponse" + } + } + } + } + }, + "ScorecardDetailsResponse": { + "description": "Response for scorecard details", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardDetailsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ScorecardDetailsResponse" + } + } + } + }, + "FacetsResponse": { + "description": "Response for entity facets", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Facets" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/Facets" + } + } + } + }, + "DataSourceDataPointInfoResponse": { + "description": "Response for getting the data point data", + "content": {} + }, + "DefaultSaveResponse": { + "description": "Default response for Save/Edit operations", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DefaultSaveResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/DefaultSaveResponse" + } + } + } + }, + "DataSourceDataPointsMapResponse": { + "description": "Response for getting the data source and data point map", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DataSourceDataPointsMapResponse" + } + }, + "application/xml": { + "schema": { + "type": "object", + "properties": {} + } + } + } + }, + "LicenseUsageSaveResponse": { + "description": "Response for license usage save", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LicenseUsageSaveResponse" + } + } + } + }, + "ScorecardStatsResponse": { + "description": "Response for scorecard stats", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardStatsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ScorecardStatsResponse" + } + } + } + }, + "CheckStatsResponse": { + "description": "Response for check stats", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CheckStatsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CheckStatsResponse" + } + } + } + }, + "CheckGraphResponse": { + "description": "Response for check graph data", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CheckGraph" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CheckGraph" + } + } + } + } + }, + "ScorecardRecalibrateResponseV2": { + "description": "Response for async scorecard recalibrate request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardRecalibrateResponseV2" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ScorecardRecalibrateResponseV2" + } + } + } + }, + "CustomPluginInfoResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPluginInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPluginInfoResponse" + } + } + } + }, + "BackstageHarnessSyncEntitiesResponse": { + "description": "Response for backstage harness entities sync", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BackstageHarnessSyncEntitiesResponse" + } + } + } + }, + "CustomPropertyByFieldResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldResponse" + } + } + } + }, + "CustomPropertyResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyResponse" + } + } + } + }, + "CustomPropertyByEntityGetResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByEntityGetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByEntityGetResponse" + } + } + } + }, + "CustomPropertyByFieldGetResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldGetResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldGetResponse" + } + } + } + }, + "CustomPropertyDeleteByFieldResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldDeleteResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPropertyByFieldDeleteResponse" + } + } + } + }, + "GroupResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GroupResponse" + } + } + } + }, + "GroupResponseList": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GroupResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GroupResponse" + } + } + } + } + }, + "GroupResponseLayout": { + "description": "" + }, + "GroupsYamlResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GroupsYamlResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/GroupsYamlResponse" + } + } + } + }, + "WorkflowsInfoResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkflowsInfoResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/WorkflowsInfoResponse" + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "string" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "string" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "string" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "HomePageLayoutResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HomePageLayoutResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/HomePageLayoutResponse" + } + } + } + }, + "CardResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CardResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CardResponse" + } + } + } + }, + "HomePageLayoutYamlResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HomePageLayoutYamlResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/HomePageLayoutYamlResponse" + } + } + } + }, + "CardIconResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CardIconResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CardIconResponse" + } + } + } + }, + "EntityResponseBody": { + "description": "Response containing a complete Entity definition including its metadata, relationships, and YAML representation.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EntityResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EntityResponse" + } + } + } + }, + "EntityConvertResponseBody": { + "description": "Response containing the converted Entity YAML in the target format (either Backstage or Harness format).", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EntityConvertResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EntityConvertResponse" + } + } + } + }, + "EntityResponseBodyList": { + "description": "Response containing a paginated list of Entities matching the filter criteria, along with pagination metadata and entity counts.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements that match the filter criteria" + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Current page number in the paginated response" + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum number of items per page in the paginated response" + }, + "Total-Owned": { + "schema": { + "type": "integer" + }, + "description": "Total number of entities owned by the current user or their groups" + }, + "Total-Starred": { + "schema": { + "type": "integer" + }, + "description": "Total number of entities marked as favorites by the current user" + } + } + }, + "EntityKindsResponseBody": { + "description": "Response containing a list of all supported Entity Kinds along with their display names, descriptions, and counts.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityKindsResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityKindsResponse" + } + } + } + } + }, + "EntityFiltersResponseBodyList": { + "description": "Response containing available filter options that can be used when querying entities, including filter names and their possible values.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityFiltersResponse" + } + } + }, + "application/yaml": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityFiltersResponse" + } + } + } + } + }, + "EntityJsonSchemaResponseBody": { + "description": "Response containing the JSON Schema for validating Entity definitions, which can be used for client-side validation.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EntityJsonSchemaResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EntityJsonSchemaResponse" + } + } + } + }, + "EntitiesGroupsResponseBody": { + "description": "Response containing entities organized in hierarchical groups based on account, organization, and project, along with counts at each level.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EntitiesGroupsResponse" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EntitiesGroupsResponse" + } + } + }, + "headers": { + "Total-Owned": { + "schema": { + "type": "integer" + }, + "description": "Total number of entities owned by the current user or their groups" + }, + "Total-Starred": { + "schema": { + "type": "integer" + }, + "description": "Total number of entities marked as favorites by the current user" + } + } + }, + "APIKeyResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CfApiKey" + } + } + }, + "description": "Created" + }, + "APIKeysResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiKeys" + } + } + }, + "description": "OK" + }, + "AttributeEditResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AttributeResponseMetadata" + } + } + }, + "description": "OK" + }, + "AttributeResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Attribute" + } + } + }, + "description": "OK" + }, + "AttributesResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Attributes" + } + } + }, + "description": "OK" + }, + "AvailableFlagResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FlagBasicInfos" + } + } + }, + "description": "OK" + }, + "BadRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CfError" + } + } + }, + "description": "Bad request" + }, + "Conflict": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CfError" + } + } + }, + "description": "The specified resource already exists" + }, + "EnvironmentPerspectiveResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentPerspective" + } + } + }, + "description": "OK" + }, + "FeatureEditResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FeatureResponseMetadata" + } + } + }, + "description": "OK" + }, + "FeatureResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Feature" + } + } + }, + "description": "OK" + }, + "FeaturesResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Features" + } + } + }, + "description": "OK" + }, + "GitSyncError": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CfError" + } + } + }, + "description": "An error with git syncing" + }, + "InternalServerError": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RegistryError" + } + } + }, + "description": "Internal server error" + }, + "NotFound": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RegistryError" + } + } + }, + "description": "The specified resource was not found" + }, + "ProxyKeyResponse": { + "content": { + "application/json": { + "schema": { + "example": { + "createdAt": 1698235128877, + "description": "A description", + "id": "b56546aa-62e6-407e-bf14-63691a47b0e0", + "identifier": "MyProxyKey", + "name": "My Proxy Key", + "organizations": { + "org123": { + "projects": { + "project1": { + "environments": [], + "scope": "all" + }, + "project2": { + "environments": [], + "scope": "prod" + }, + "project3": { + "environments": [], + "scope": "non-prod" + }, + "project4": { + "environments": [ + "env1", + "env2", + "env3" + ], + "scope": "selected" + } + } + }, + "org456": { + "projects": { + "project1": { + "environments": [], + "scope": "all" + }, + "project2": { + "environments": [], + "scope": "prod" + }, + "project3": { + "environments": [], + "scope": "non-prod" + }, + "project4": { + "environments": [ + "env1", + "env2", + "env3" + ], + "scope": "selected" + } + } + } + }, + "updatedAt": 1698235128877 + }, + "properties": { + "createdAt": { + "description": "The date the key was created at in milliseconds", + "format": "int64", + "type": "integer" + }, + "description": { + "description": "A description of the Proxy Key", + "example": "This is a proxy key for production", + "type": "string" + }, + "id": { + "description": "The ProxyKeys ID", + "example": "31B0B299-7635-416D-9E99-CFCAA7ADABEA", + "type": "string" + }, + "identifier": { + "description": "The Proxy Keys identifier", + "example": "ProxyKeyOne", + "type": "string" + }, + "name": { + "description": "The ProxyKeys name", + "example": "Proxy Key One", + "type": "string" + }, + "organizations": { + "$ref": "#/components/schemas/OrganizationDictionary" + }, + "updatedAt": { + "description": "The date the key was last updated at in milliseconds", + "format": "int64", + "type": "integer" + }, + "version": { + "description": "The ProxyKey version", + "format": "int", + "type": "integer" + } + }, + "required": [ + "id", + "name", + "identifier", + "description", + "createdAt", + "updatedAt", + "version", + "organizations" + ], + "type": "object" + } + } + }, + "description": "OK" + }, + "ProxyKeysCreateResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "key": { + "example": "0202f58b-d670-44ef-bd1f-323a48c28004", + "type": "string" + } + }, + "type": "object" + } + } + }, + "description": "Created" + }, + "ProxyKeysResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProxyKeys" + } + } + }, + "description": "OK" + }, + "SegmentFlagsResponse": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/SegmentFlag" + }, + "type": "array" + } + } + }, + "description": "OK" + }, + "SegmentResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Segment" + } + } + }, + "description": "OK" + }, + "SegmentsResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Segments" + } + } + }, + "description": "OK" + }, + "TagEditResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TagResponseMetadata" + } + } + }, + "description": "OK" + }, + "TagsResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Tags" + } + } + }, + "description": "OK" + }, + "TargetDetailResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TargetDetail" + } + } + }, + "description": "OK" + }, + "TargetResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Target" + } + } + }, + "description": "OK" + }, + "TargetsResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Targets" + } + } + }, + "description": "OK" + }, + "Unauthenticated": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RegistryError" + } + } + }, + "description": "Unauthenticated" + }, + "Unauthorized": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RegistryError" + } + } + }, + "description": "Unauthorized" + }, + "ArtifactDeploymentsResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ArtifactDeploymentsDetails" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get docker artifact deployments details" + }, + "ArtifactDetailResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ArtifactDetail" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get artifact details" + }, + "ArtifactLabelResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ArtifactSummary" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get artifact label response" + }, + "ArtifactStatsResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ArtifactStats" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get artifact stats response" + }, + "ArtifactSummaryResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ArtifactSummary" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get artifact summary" + }, + "ArtifactVersionSummaryResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ArtifactVersionSummary" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get docker artifact version summary" + }, + "RegistryBadRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RegistryError" + } + } + }, + "description": "Bad request" + }, + "ClientSetupDetailsResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ClientSetupDetails" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for client setup details" + }, + "DockerArtifactDetailIntegrationResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/DockerArtifactIntegrationDetail" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get docker artifact integration detail" + }, + "DockerArtifactDetailResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/DockerArtifactDetail" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get docker artifact detail" + }, + "DockerArtifactManifestResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/DockerArtifactManifest" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get docker artifact manifest" + }, + "DockerLayersResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/DockerLayersSummary" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get artifact layers" + }, + "DockerManifestsResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/DockerManifests" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get artifact layers" + }, + "FileDetailResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "files": { + "description": "A list of Harness Artifact Files", + "items": { + "$ref": "#/components/schemas/FileDetail" + }, + "type": "array" + }, + "itemCount": { + "description": "The total number of items", + "example": 1, + "format": "int64", + "type": "integer" + }, + "pageCount": { + "description": "The total number of pages", + "example": 100, + "format": "int64", + "type": "integer" + }, + "pageIndex": { + "description": "The current page", + "example": 0, + "format": "int64", + "type": "integer" + }, + "pageSize": { + "description": "The number of items per page", + "example": 1, + "type": "integer" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data", + "files" + ], + "type": "object" + } + } + }, + "description": "response to get artifact files" + }, + "HelmArtifactDetailResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/HelmArtifactDetail" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get helm artifact detail" + }, + "HelmArtifactManifestResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/HelmArtifactManifest" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response to get helm artifact manifest" + }, + "ListArtifactLabelResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListArtifactLabel" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for list artifact labels" + }, + "ListArtifactResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListArtifact" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for list artifact" + }, + "ListArtifactVersionResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListArtifactVersion" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for list versions of artifact" + }, + "ListMigrationImageResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListMigrationImage" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "Response for list migration images" + }, + "ListRegistryArtifactResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListRegistryArtifact" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for list artifact" + }, + "ListRegistryResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListRegistry" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for list registry" + }, + "ListReplicationRuleResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListReplicationRule" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "Response for list replication rules" + }, + "ListWebhooksExecutionResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListWebhooksExecutions" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "list webhooks executions response" + }, + "ListWebhooksResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ListWebhooks" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for list webhooks" + }, + "PlainTextResponse": { + "content": { + "text/plain; charset=utf-8": { + "schema": { + "example": "Hello, world!", + "type": "string" + } + } + }, + "description": "A plain text response" + }, + "Redirect": { + "description": "Temporary Redirect", + "headers": { + "Location": { + "description": "The URL of the redirected resource", + "schema": { + "format": "uri", + "type": "string" + } + } + } + }, + "RegistryResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/Registry" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for create, get and update registry" + }, + "ReplicationRuleResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/ReplicationRule" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "Response for replication rule update" + }, + "StorageDetailsResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/StorageDetails" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for storage details" + }, + "Success": { + "content": { + "application/json": { + "schema": { + "properties": { + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status" + ], + "type": "object" + } + } + }, + "description": "Success Response" + }, + "WebhookExecutionResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/WebhookExecution" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "webhook execution response" + }, + "WebhookResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "$ref": "#/components/schemas/Webhook" + }, + "status": { + "$ref": "#/components/schemas/RegistryStatus" + } + }, + "required": [ + "status", + "data" + ], + "type": "object" + } + } + }, + "description": "response for create, get and update webhook" + }, + "ChangeSetDeploymentYamlResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChangeSetDeploymentYamlOutput" + } + } + }, + "description": "Response body for changeSet deployment yaml for an instance" + }, + "CustomOperationResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomOperationOutput" + } + } + }, + "description": "Response for custom property result" + }, + "DBInstanceListResponse": { + "content": { + "application/json": { + "schema": { + "description": "Response body for List Schema", + "items": { + "$ref": "#/components/schemas/DBInstanceOut" + }, + "type": "array" + } + } + }, + "description": "Response body for List Database Schema", + "headers": { + "X-Page-Number": { + "description": "Page number in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Page-Size": { + "description": "Maximum page size in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Total-Elements": { + "description": "Total number of elements returned in Paginated response.", + "schema": { + "type": "integer" + } + } + } + }, + "DBInstanceResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DBInstanceOut" + } + } + }, + "description": "Response body for Database Instance" + }, + "DBSchemaListResponse": { + "content": { + "application/json": { + "schema": { + "description": "Response body for List Schema", + "items": { + "$ref": "#/components/schemas/DBSchemaOut" + }, + "type": "array" + } + } + }, + "description": "Response body for List Database Schema", + "headers": { + "X-Page-Number": { + "description": "Page number in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Page-Size": { + "description": "Maximum page size in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Total-Elements": { + "description": "Total number of elements returned in Paginated response.", + "schema": { + "type": "integer" + } + } + } + }, + "DBSchemaResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DBSchemaOut" + } + } + }, + "description": "Response body for Database Schema" + }, + "ErrorResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DbOpsError" + } + } + }, + "description": "Error Response body" + }, + "ExecutionConfigSuccessResponse": { + "content": { + "application/json": { + "schema": { + "default": false, + "type": "boolean" + } + } + }, + "description": "Boolean response for execution config response" + }, + "ExecutionConfigTagsResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExecutionConfigTags" + } + } + }, + "description": "Response Body for Execution Config for Image tags" + }, + "FetchSQLStatementResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeployedChangesetSqlOutput" + } + } + }, + "description": "Response Body for Fetching SQL statements", + "headers": { + "X-Page-Number": { + "description": "Page number in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Page-Size": { + "description": "Maximum page size in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Total-Elements": { + "description": "Total number of elements returned in Paginated response.", + "schema": { + "type": "integer" + } + } + } + }, + "InstanceMigrationStateResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InstanceMigrationStateOut" + } + } + }, + "description": "Response body for migration state of a instance", + "headers": { + "X-Page-Number": { + "description": "Page number in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Page-Size": { + "description": "Maximum page size in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Total-Elements": { + "description": "Total number of elements returned in Paginated response.", + "schema": { + "type": "integer" + } + } + } + }, + "MigrationStateResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MigrationStateOut" + } + } + }, + "description": "Response body for migration state of a schema", + "headers": { + "X-Page-Number": { + "description": "Page number in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Page-Size": { + "description": "Maximum page size in Paginated response.", + "schema": { + "type": "integer" + } + }, + "X-Total-Elements": { + "description": "Total number of elements returned in Paginated response.", + "schema": { + "type": "integer" + } + } + } + }, + "OverviewResponse": { + "content": { + "application/json": { + "schema": { + "properties": { + "dbInstanceCount": { + "type": "integer", + "x-stoplight": { + "id": "e5je7p05bgy6e" + } + }, + "dbSchemaCount": { + "type": "integer", + "x-stoplight": { + "id": "vl4i8hl01jg9t" + } + }, + "recentDeployments": { + "items": { + "$ref": "#/components/schemas/OverviewResponseOutput" + }, + "maxItems": 5, + "type": "array", + "x-stoplight": { + "id": "a3qanidk29h47" + } + } + }, + "required": [ + "dbInstanceCount", + "dbSchemaCount" + ], + "type": "object" + } + } + }, + "description": "Get Overview Response" + }, + "ParsedLogResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ParsedLogOut" + } + } + }, + "description": "Response body for Log Event" + }, + "PluginInputsResponse": { + "content": { + "application/json": { + "examples": { + "Example 1": { + "value": { + "dbImages": { + "Image": "plugins/drone-liquibase:latest", + "MongoImage": "plugins/drone-liquibase-mongo:latest" + }, + "downloadImages": { + "artifactoryDownload": "plugins/artifactory-download:latest", + "gitClone": "harness/drone-git:1.5.6-rootless" + }, + "image": "plugins/drone-liquibase:latest", + "settings": { + "property1": "string", + "property2": "string" + } + } + } + }, + "schema": { + "properties": { + "dbImages": { + "type": "object" + }, + "defaultConfigs": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "downloadImages": { + "type": "object" + }, + "image": { + "type": "string" + }, + "instance": { + "$ref": "#/components/schemas/DBInstanceOut" + }, + "propertiesResult": { + "additionalProperties": { + "type": "string", + "x-stoplight": { + "id": "u4r7r5h1vr7wg" + } + }, + "type": "object", + "x-stoplight": { + "id": "fyjz8vfzb4jcs" + } + }, + "schema": { + "$ref": "#/components/schemas/DBSchemaOut" + }, + "settings": { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + }, + "type": "object" + } + } + }, + "description": "Plugin Inputs Create Response" + }, + "SchemaInstanceMetadataResponse": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SchemaInstanceMetadataOutput" + } + } + }, + "description": "Get schema-instance metadata and images for step execution response" + }, + "ComponentListResponseBody": { + "description": "List of components in the given scope.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComponentDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "SbomProcessResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SbomProcessResponseBody" + } + } + } + }, + "EnforceSbomResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnforceSbomResponseBody" + } + } + } + }, + "TokenIssueResponseBody": { + "description": "Response body for token", + "content": {} + }, + "ArtifactSbomResponseBody": { + "description": "Response Body for Artifact Sbom", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactSbomResponseBody" + } + } + } + }, + "OrchestrationSummaryResponseBody": { + "description": "Step Execution Response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrchestrationSummaryResponse" + } + } + } + }, + "EnforcementSummaryResponseBody": { + "description": "Enforcement Summary Response Body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnforcementSummaryResponse" + } + } + } + }, + "PolicyViolationResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PolicyViolation" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "NormaliseSbomResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/NormalizedSbomComponentDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ArtifactListingResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactListingResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ArtifactComponentViewResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactComponentViewResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ArtifactDeploymentViewResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactDeploymentViewResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ArtifactDetailResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactDetailResponse" + } + } + } + }, + "SbomScorecardResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SbomScorecardResponseBody" + } + } + } + }, + "ConfigResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConfigResponseBody" + } + } + } + }, + "ExecutionLimitResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExecutionLimitResponseBody" + } + } + } + }, + "ListConfigsResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ConfigResponseBody" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "SaveResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SaveResponse" + } + } + } + }, + "ComponentDriftResponseBody": { + "description": "Component Drift Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComponentDrift" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "BaselineResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BaselineResponseBody" + } + } + } + }, + "ArtifactSbomDriftResponseBody": { + "description": "Response body for calculating drift between 2 artifact versions.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactSbomDriftResponse" + } + } + } + }, + "LicenseDriftResponseBody": { + "description": "List of license drifts.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/LicenseDrift" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "RemediationTrackerCreateResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationTrackerCreateResponseBody" + } + } + } + }, + "OrchestrationStepDriftResponseBody": { + "description": "Response body for calculating drift in step execution.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactSbomDriftResponse" + } + } + } + }, + "RemediationTrackersOverallSummaryResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationTrackersOverallSummaryResponseBody" + } + } + } + }, + "RemediationListingResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RemediationListingResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "RemediationDetailsResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationDetailsResponse" + } + } + } + }, + "RemediationArtifactDetailResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationArtifactDetailsResponse" + } + } + } + }, + "RemediationTrackerUpdateResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationTrackerUpdateResponseBody" + } + } + } + }, + "RemediationArtifactListingResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RemediationArtifactListingResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "RemediationArtifactDeploymentsListingResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RemediationArtifactDeploymentsListingResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "RemediationEnvironmentResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/EnvironmentInfo" + } + } + } + } + }, + "CreateTicketResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTicketResponse" + } + } + } + }, + "ExemptionListResponseDTO": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ExemptionResponseDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ArtifactListingResponseBodyV2": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactListingResponseV2" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ArtifactListingResponsePipelineBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactListingPipelineResponse" + } + } + } + } + }, + "ProvenanceResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProvenanceResponseBody" + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "SaveOrchestrationResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SaveOrchestrationResponseBody" + } + } + } + }, + "ArtifactComponentsResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactComponentsResponseBody" + } + } + } + }, + "ArtifactSourcesListingResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactSourcesListingResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "IntegrationListingResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Integration" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "RepoDetailsDTO": { + "description": "" + }, + "FetchIntegrationReposResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RepoDetailsDTO" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ListIntegrationReposResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListIntegrationReposResponse" + } + } + }, + "headers": {} + }, + "CreateIntegrationResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Integration" + } + } + } + }, + "UpdateIntegrationResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateIntegration" + } + } + } + }, + "ComplianceStandardsResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceCheck" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ArtifactV2ListingResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactV2ListingResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "ComplianceResultResponseBody": { + "description": "" + }, + "FetchComplianceResultResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceResultDTO" + } + } + } + } + }, + "CodeRepositoryListingResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CodeRepositoryListingResponse" + } + } + } + }, + "headers": { + "X-Total-Elements": { + "$ref": "#/components/headers/X-Total-Elements" + }, + "X-Page-Number": { + "$ref": "#/components/headers/X-Page-Number" + }, + "X-Page-Size": { + "$ref": "#/components/headers/X-Page-Size" + } + } + }, + "CodeRepositoryOverviewResponseBody": { + "description": "Code Repository Overview Response Body", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CodeRepositoryOverview" + } + } + } + }, + "ComplianceResultsEvaluationBreakdownResponse": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceResultsEvaluationBreakdown" + } + } + } + }, + "ComplianceChecksStatsResponse": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceChecksMetrics" + } + } + } + } + }, + "ComplianceResultsGroupByComplianceIdResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceResultAggregationByType" + } + } + } + } + }, + "ComplianceEvaluationHistory": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "pipelineId": { + "type": "string" + }, + "pipelineExecutionId": { + "type": "string" + }, + "status": { + "type": "string" + } + }, + "x-examples": { + "Example 1": { + "pipelineId": "string", + "pipelineExecutionId": "string", + "status": "PASSED" + } + } + } + } + } + }, + "FetchComplianceResultByArtifactResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/FetchComplianceResultByArtifactResponseBody" + } + } + } + } + }, + "FetchArtifactsByComplianceIdResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceArtifactWithExecution" + } + } + } + } + }, + "FetchArtifactByComplianceIdResponse": { + "description": "" + }, + "ComplianceResultsEvaluationBreakdownByArtifactsResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ArtifactComplianceMetrics" + } + } + } + } + }, + "ComplianceStandardByIdResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceCheck" + } + } + } + }, + "ComplianceEvaluationTrendResponse": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceEvaluationTrend" + } + } + } + } + }, + "VersionResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VersionInfo" + } + } + } + }, + "CICDOverviewResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CICDOverviewResponseBody" + } + } + } + }, + "CICDHarnessPipelineResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CICDHarnessPipelineYamlResponseBody" + } + } + } + }, + "HarnessPipelineIntegrationResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessPipelineIntegrationResponse" + } + } + } + }, + "CICDWorklfowPluginsResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CICDWorklfowPluginsResponse" + } + } + } + } + }, + "PluginResponseBody": { + "description": "Example response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PluginResponseBody" + } + } + } + }, + "IntegrationStepConfigResponseBody": { + "description": "" + } + }, + "parameters": { + "Limit": { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 30, + "maximum": 100 + }, + "description": "Pagination: Number of items to return." + }, + "Sort": { + "name": "sort", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "identifier", + "name", + "created", + "updated" + ] + }, + "description": "Parameter on the basis of which sorting is done." + }, + "Order": { + "name": "order", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "ASC", + "DESC" + ] + }, + "description": "Order on the basis of which sorting is done." + }, + "PageIndex": { + "name": "page", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 0 + }, + "description": "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items on each page." + }, + "SearchTerm": { + "name": "search_term", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "This would be used to filter resources having attributes matching the search term." + }, + "OrgParam": { + "description": "Organization identifier", + "in": "path", + "name": "org", + "required": true, + "schema": { + "type": "string" + } + }, + "ProjectParam": { + "description": "Project identifier", + "in": "path", + "name": "project", + "required": true, + "schema": { + "type": "string" + } + }, + "RoleParam": { + "name": "role", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Role identifier" + }, + "AccountHeader": { + "name": "Harness-Account", + "in": "header", + "required": false, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped." + }, + "Page": { + "name": "page", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 0 + }, + "description": "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items in each page\t" + }, + "Limit1": { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 20, + "maximum": 1000 + }, + "description": "Number of items to return per page." + }, + "onlyFavorites": { + "name": "only_favorites", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + }, + "description": "Enable this field to fetch only the entities that are marked as favorites." + }, + "SearchTerm1": { + "name": "search_term", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "This would be used to filter resources having attributes matching with search term." + }, + "ResourceId": { + "name": "resource_id", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "This would be used to do operations on the favorite entity." + }, + "ForceDelete": { + "name": "forceDelete", + "in": "query", + "schema": { + "type": "boolean", + "default": false + }, + "description": "Enable this field to force delete the entity" + }, + "OidcProviderId": { + "name": "providerIdentifier", + "in": "path", + "schema": { + "type": "string" + }, + "required": true, + "description": "ProviderId of the OIDC provider" + }, + "OrgsQueryParam": { + "name": "org", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Identifier field of the organizations the resource is scoped to" + }, + "ProjectsQueryParam": { + "name": "project", + "in": "query", + "required": false, + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Identifier field of the projects the resource is scoped to" + }, + "OrgPathParam": { + "name": "org", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the organization the resource is scoped to" + }, + "UserIdPathParam": { + "name": "user-id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "This would be used to fetch the Favorites of the user." + }, + "PrivateSecret": { + "name": "private_secret", + "in": "query", + "schema": { + "type": "boolean", + "default": false + }, + "description": "This would be used to define secret as private." + }, + "ProjectPathParam": { + "name": "project", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the project the resource is scoped to" + }, + "ServicePathParam": { + "name": "service", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the service the resource is scoped to" + }, + "ServiceIdentifiers": { + "name": "service_ids", + "in": "query", + "required": false, + "schema": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "description": "List of Service Identifiers" + }, + "EnvironmentIdentifiers": { + "name": "environment_ids", + "in": "query", + "required": false, + "schema": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "description": "List of Environment Identifiers" + }, + "InfraIdentifiers": { + "name": "infra_ids", + "in": "query", + "required": false, + "schema": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "description": "List of Infrastructure Identifiers" + }, + "DeploymentType": { + "name": "deployment_type", + "in": "query", + "required": false, + "description": "Service Definition Type", + "schema": { + "type": "string", + "enum": [ + "Kubernetes", + "NativeHelm", + "Ssh", + "WinRm", + "ServerlessAwsLambda", + "AzureWebApp", + "GitOps", + "ECS", + "TAS", + "CustomDeployment", + "Elastigroup", + "Asg", + "GoogleCloudFunctions", + "AwsLambda", + "AWS_SAM" + ] + } + }, + "Sort1": { + "name": "sort", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "name", + "identifier", + "created", + "updated" + ] + }, + "description": "Parameter on the basis of which sorting is done." + }, + "ResourceType": { + "name": "resource_type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "CONNECTOR", + "DELEGATE", + "PIPELINE", + "SECRET", + "PROJECT" + ] + }, + "description": "Determines the type of favorite entity requested." + }, + "AgreementType": { + "name": "agreement_type", + "in": "query", + "required": true, + "schema": { + "type": "string", + "enum": [ + "AIDA" + ] + }, + "description": "Type of Agreements." + }, + "ConnectorPathParam": { + "name": "connector", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the scoped connector entity to be used for this operation." + }, + "EnvironmentPathParam": { + "name": "environment", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the scoped environment entity to be used for the selected operation." + }, + "InfrastructureDefinitionPathParam": { + "name": "infrastructure-definition", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the scoped infrastructure definition entity to be used in the selected operation." + }, + "GitXWebhookIdentifier": { + "name": "gitx-webhook", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "GitX webhook identifier" + }, + "UserGroupIdentifierPathParam": { + "name": "group-id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "UserGroup Identifier" + }, + "BadRequestResponse": { + "type": "object", + "properties": { + "error": { + "type": "string" + } + } + }, + "PrometheusRequestBody": { + "type": "object", + "properties": { + "query": { + "type": "string", + "description": "Prometheus query to be executed" + }, + "startTime": { + "type": "string", + "format": "date-time" + }, + "endTime": { + "type": "string", + "format": "date-time" + }, + "accountId": { + "type": "string" + }, + "connectorInfoDTO": { + "$ref": "#/components/schemas/ConnectorInfoDTO" + } + } + }, + "ConnectorInfoDTO": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "identifier": { + "type": "string" + }, + "description": { + "type": "string" + }, + "accountIdentifier": { + "type": "string" + }, + "orgIdentifier": { + "type": "string" + }, + "projectIdentifier": { + "type": "string" + }, + "type": { + "type": "string" + }, + "spec": { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "username": { + "type": "string" + }, + "passwordRef": { + "type": "string" + }, + "headers": { + "type": "array", + "items": { + "type": "object" + } + }, + "delegateSelectors": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "uniqueId": { + "type": "string" + }, + "parentUniqueId": { + "type": "string" + } + } + }, + "WebhookIdentifier": { + "name": "webhook", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Webhook identifier" + }, + "Limit2": { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 30, + "maximum": 1000 + }, + "description": "Number of items to return per page." + }, + "SearchTerm2": { + "name": "search_term", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "This would be used to filter resources having attributes matching with search term." + }, + "Sort2": { + "name": "sort", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "name", + "identifier", + "created", + "updated" + ] + }, + "description": "Parameter on the basis of which sorting is done." + }, + "AccountHeader1": { + "name": "Harness-Account", + "in": "header", + "required": false, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to." + }, + "ResourceGroupParam": { + "name": "resource-group", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Resource Group identifier" + }, + "AccountHeader2": { + "name": "Harness-Account", + "in": "header", + "required": false, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to." + }, + "AccountHeader3": { + "name": "Harness-Account", + "in": "header", + "required": false, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to." + }, + "Status": { + "name": "status", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Status of the Streaming Destination" + }, + "StreamingDestinationParam": { + "name": "streaming-destination", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Streaming Destination identifier" + }, + "Limit3": { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 30, + "maximum": 1000 + }, + "description": "Number of items to return per page." + }, + "SearchTerm3": { + "name": "search_term", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "This would be used to filter resources having attributes matching with search term." + }, + "Sort3": { + "name": "sort", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "name", + "identifier", + "created", + "updated" + ] + }, + "description": "Parameter on the basis of which sorting is done." + }, + "notification_channel_type": { + "name": "notification_channel_type", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Notification Channel Type" + }, + "IncludeParentScope": { + "name": "include_parent_scope", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + }, + "description": "Include entities from current and parent scopes." + }, + "AccountHeader4": { + "name": "Harness-Account", + "in": "header", + "required": false, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to." + }, + "Branch": { + "name": "branch_name", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Name of the branch (for Git Experience)." + }, + "PipelineParam": { + "name": "pipeline", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Pipeline identifier" + }, + "IgnoreError": { + "name": "ignoreError", + "in": "path", + "required": false, + "schema": { + "type": "boolean" + } + }, + "TriggerParam": { + "name": "trigger", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Trigger identifier" + }, + "Sort4": { + "name": "sort", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "name", + "updated" + ] + }, + "description": "Parameter on the basis of which sorting is done." + }, + "UuidParam": { + "name": "uuid", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "UUID" + }, + "InputSetParam": { + "name": "input-set", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Input Set identifier" + }, + "PipelineInputSetParam": { + "name": "pipeline", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Pipeline identifier for the Input Set." + }, + "ExecutionIdParam": { + "name": "execution-id", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Pipeline Execution identifier" + }, + "PipelineRepoID": { + "name": "pipeline_repo_id", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Github Repo identifier of the Pipeline to which the Input Sets belong" + }, + "PipelineBranch": { + "name": "pipeline_branch", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Github branch of the Pipeline to which the Input Sets belong" + }, + "Org": { + "name": "org", + "in": "path", + "schema": { + "type": "string" + }, + "required": true, + "description": "Organization Identifier" + }, + "Project": { + "name": "project", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Project Identifier" + }, + "Template": { + "name": "template", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Template Identifier" + }, + "Version": { + "name": "version", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Version Label for Template" + }, + "AccountHeaderParam": { + "name": "Harness-Account", + "in": "header", + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to." + }, + "Comments": { + "name": "comments", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Specify comment with respect to changes " + }, + "ForceDelete1": { + "name": "forceDelete", + "in": "query", + "schema": { + "type": "boolean", + "default": false + }, + "description": "Enable this field to force delete a template" + }, + "Limit4": { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 30 + }, + "description": "Pagination: Number of items to return" + }, + "Sort5": { + "name": "sort", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "identifier", + "name", + "updated" + ] + }, + "description": "Parameter on the basis of which sorting is done." + }, + "SearchTerm4": { + "name": "search_term", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "This would be used to filter resources having attributes matching with search term." + }, + "TemplateListType": { + "name": "type", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "STABLE_TEMPLATE", + "LAST_UPDATES_TEMPLATE", + "ALL" + ] + }, + "description": "Template List Type" + }, + "IncludeAllTemplatesAccessibleAtScope": { + "name": "recursive", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": false + }, + "description": "Specify true if all accessible Templates are to be included" + }, + "GetTemplateInputYaml": { + "name": "include_yaml", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + }, + "description": "Use it to get Template along with Input Set YAML" + }, + "Branch1": { + "name": "branch_name", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Name of the branch" + }, + "ParentConnectorRef": { + "name": "parent_entity_connector_ref", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Connector ref of parent template if its remote" + }, + "ParentRepoName": { + "name": "parent_entity_repo_name", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Repo name of parent template if its remote" + }, + "ParentAccountId": { + "name": "parent_entity_account_id", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Account name of parent template if its remote" + }, + "ParentOrgId": { + "name": "parent_entity_org_id", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Organization name of parent template if its remote" + }, + "ParentProjectId": { + "name": "parent_entity_project_id", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Project name of parent entity if its remote" + }, + "TemplateNames": { + "name": "names", + "in": "query", + "required": false, + "schema": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "description": "Template names for filtering" + }, + "TemplateIds": { + "name": "identifiers", + "in": "query", + "required": false, + "schema": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "description": "Template Ids for Filtering" + }, + "Description": { + "name": "description", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Filter properties description" + }, + "EntityType": { + "name": "entity_types", + "in": "query", + "schema": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string", + "enum": [ + "Step", + "Stage", + "Pipeline", + "CustomDeployment", + "MonitoredService", + "SecretManager" + ] + } + }, + "description": "Type of Template" + }, + "TemplateChildTypes": { + "name": "child_types", + "in": "query", + "required": false, + "schema": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "description": "Child types describe the type of Step or stage" + }, + "AccountIdentifierQueryParam": { + "name": "accountIdentifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Unique identifier of the account to operate on" + }, + "OrgIdentifierQueryParam": { + "name": "orgIdentifier", + "in": "query", + "schema": { + "type": "string" + }, + "description": "Unique identifier of the organization within the account" + }, + "ProjectIdentifierQueryParam": { + "name": "projectIdentifier", + "in": "query", + "schema": { + "type": "string" + }, + "description": "Unique identifier of the project within the organization" + }, + "KindQueryParam": { + "name": "kind", + "description": "Filter entities by their kind (e.g., component, api, resource, user, workflow)", + "in": "query", + "schema": { + "type": "string" + } + }, + "IdentifierParam": { + "name": "identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Unique identifier of the entity within its scope and kind" + }, + "KindParam": { + "name": "kind", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Kind of the entity (e.g., component, api, resource, user, workflow)" + }, + "ScopeParam": { + "name": "scope", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Scope of the entity (account, account.orgId, account.orgId.projectId)" + }, + "AccountHeader5": { + "name": "Harness-Account", + "in": "header", + "required": false, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to." + }, + "Limit5": { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer" + }, + "description": "Pagination: Number of items to return" + }, + "LimitWithRestriction": { + "name": "limit", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 10, + "maximum": 100 + }, + "description": "Maximum number of items to return per page (1-100, default: 10)" + }, + "Page1": { + "name": "page", + "in": "query", + "required": false, + "schema": { + "type": "integer" + }, + "description": "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items in each page\t" + }, + "Sort6": { + "name": "sort", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Parameter on the basis of which sorting is done." + }, + "BackstageEnvVariable": { + "name": "backstage-env-variable", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the backstage env variable the resource is scoped to" + }, + "StatusType": { + "name": "type", + "in": "path", + "description": "Status type", + "required": true, + "schema": { + "type": "string", + "enum": [ + "infra", + "onboarding", + "infra_onboarding" + ] + } + }, + "AccountIdentifier": { + "name": "accountIdentifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to" + }, + "Order1": { + "name": "order", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Order on the basis of which sorting is done." + }, + "LayoutIdentifier": { + "name": "layout-identifier", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Layout Identifier" + }, + "PluginId": { + "name": "plugin-id", + "in": "path", + "description": "Plugin Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + "PluginName": { + "name": "plugin_name", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Plugin name for filtering " + }, + "Enabled": { + "name": "enabled", + "in": "query", + "required": true, + "schema": { + "type": "boolean" + }, + "description": "flag for checking enablement/disablement" + }, + "ProviderType": { + "name": "provider-type", + "in": "path", + "description": "Provider Type", + "required": true, + "schema": { + "type": "string" + } + }, + "AuthId": { + "name": "auth-id", + "in": "path", + "description": "Auth Identifier", + "required": true, + "schema": { + "type": "string", + "enum": [ + "github-auth", + "google-auth" + ] + } + }, + "Namespace": { + "name": "namespace", + "in": "query", + "required": false, + "schema": { + "type": "string" + }, + "description": "Namespace from where the request is being made" + }, + "CheckType": { + "name": "custom", + "in": "query", + "schema": { + "type": "boolean" + }, + "description": "Type of checks to be returned", + "required": false + }, + "CheckIdentifier": { + "name": "check-id", + "in": "path", + "description": "Check Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + "ScorecardIdentifier": { + "name": "scorecard-id", + "in": "path", + "description": "Scorecard Identifier", + "required": true, + "schema": { + "type": "string" + } + }, + "EntityIdentifier": { + "name": "entity_identifier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier for entity to get the scores for score card " + }, + "ForceDelete2": { + "name": "force_delete", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + }, + "description": "This is used if an entity need to be force deleted" + }, + "CatalogKind": { + "name": "kind", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "This is used to filter backstage catalog entity facets by kind" + }, + "NamespacePathParam": { + "name": "namespace", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Namespace from where the request is being made" + }, + "Meta": { + "name": "meta", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + }, + "description": "Custom plugin metadata" + }, + "DryRunCatalogCustomProperties": { + "name": "dry_run", + "in": "query", + "required": false, + "schema": { + "type": "boolean" + }, + "description": "Dry run catalog custom properties" + }, + "EntityRef": { + "name": "entity_ref", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier for catalog entity" + }, + "Property": { + "name": "property", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier for catalog property" + }, + "GroupIdentifier": { + "name": "group_idenitfier", + "in": "query", + "required": true, + "schema": { + "type": "string" + }, + "description": "This is the identifier for the group" + }, + "accountQueryParam": { + "description": "Account Identifier", + "examples": { + "default": { + "value": "default" + } + }, + "in": "query", + "name": "accountIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + "archivedQueryParam": { + "description": "Status of the feature flag", + "in": "query", + "name": "archived", + "schema": { + "type": "boolean" + } + }, + "attributeCounts": { + "description": "Returns attribute", + "in": "query", + "name": "attributeCounts", + "schema": { + "type": "boolean" + } + }, + "commitMsgQueryParam": { + "allowEmptyValue": true, + "description": "Git commit message", + "in": "query", + "name": "commitMsg", + "schema": { + "type": "string" + } + }, + "customAttributeQueryParam": { + "description": "Returns only custom attributes", + "in": "query", + "name": "customAttributes", + "schema": { + "type": "boolean" + } + }, + "environmentOptionalQueryParam": { + "allowEmptyValue": true, + "description": "Environment", + "in": "query", + "name": "environmentIdentifier", + "schema": { + "type": "string" + } + }, + "environmentQueryParam": { + "allowEmptyValue": true, + "description": "Environment Identifier", + "in": "query", + "name": "environmentIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + "excludedFeaturesOptionalParam": { + "allowEmptyValue": true, + "description": "Comma separated identifiers to exclude from the response", + "in": "query", + "name": "excludedFeatures", + "schema": { + "type": "string" + } + }, + "featuresOptionalParam": { + "description": "Comma separated identifiers for multiple Features", + "in": "query", + "name": "featureIdentifiers", + "schema": { + "type": "string" + } + }, + "flagCounts": { + "description": "Returns counts for the different types of flags e.g num active, potentially-stale, recently-accessed etc", + "in": "query", + "name": "flagCounts", + "schema": { + "type": "boolean" + } + }, + "flagEnabled": { + "description": "Filter for flags based on if they are enabled or disabled", + "in": "query", + "name": "enabled", + "schema": { + "type": "boolean" + } + }, + "flagLifetime": { + "description": "Filter for flags based on their lifetime (permanent/temporary)", + "in": "query", + "name": "lifetime", + "schema": { + "type": "string" + } + }, + "flagNameQueryParam": { + "description": "Identifier of the feature flag", + "in": "query", + "name": "flagNameIdentifier", + "schema": { + "type": "string" + } + }, + "flagStatus": { + "description": "Filter for flags based on their status (active,never-requested,recently-accessed,potentially-stale)", + "in": "query", + "name": "status", + "schema": { + "type": "string" + } + }, + "flagSummary": { + "description": "Returns summary info on flags if set to true", + "in": "query", + "name": "summary", + "schema": { + "type": "boolean" + } + }, + "flagTags": { + "description": "Filter for flags based on their tag values supplied as comma separated list", + "in": "query", + "name": "tags", + "schema": { + "type": "string" + } + }, + "forceDeleteQueryParam": { + "description": "Permanently deletes the the feature flag", + "in": "query", + "name": "forceDelete", + "schema": { + "type": "boolean" + } + }, + "identifier": { + "description": "Unique identifier for the object in the API.", + "in": "path", + "name": "identifier", + "required": true, + "schema": { + "type": "string" + } + }, + "identifierQueryParam": { + "description": "Identifier of the field", + "in": "query", + "name": "identifier", + "schema": { + "type": "string" + } + }, + "key": { + "description": "Unique key for the attribute in the API.", + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + }, + "kindQueryParam": { + "description": "Kind of the feature flag", + "in": "query", + "name": "kind", + "schema": { + "enum": [ + "json", + "string", + "int", + "boolean" + ], + "type": "string" + } + }, + "metricsOptionalParam": { + "description": "Parameter to indicate if metrics data is requested in response", + "in": "query", + "name": "metrics", + "schema": { + "type": "boolean" + } + }, + "nameQueryParam": { + "allowEmptyValue": true, + "description": "Name of the field", + "in": "query", + "name": "name", + "schema": { + "type": "string" + } + }, + "orgQueryParam": { + "description": "Organization Identifier", + "examples": { + "default": { + "value": "default_org" + } + }, + "in": "query", + "name": "orgIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + "pageNumber": { + "description": "PageNumber", + "in": "query", + "name": "pageNumber", + "schema": { + "type": "integer" + } + }, + "pageSize": { + "description": "PageSize", + "in": "query", + "name": "pageSize", + "schema": { + "type": "integer" + } + }, + "projectQueryParam": { + "description": "The Project identifier", + "in": "query", + "name": "projectIdentifier", + "required": true, + "schema": { + "type": "string" + } + }, + "proxyKeySortByField": { + "description": "SortByField", + "in": "query", + "name": "sortByField", + "schema": { + "enum": [ + "name", + "createdAt", + "updatedAt" + ], + "type": "string" + } + }, + "safSortByField": { + "description": "SortByField", + "in": "query", + "name": "sortByField", + "schema": { + "enum": [ + "name" + ], + "type": "string" + } + }, + "safSortOrder": { + "description": "SortOrder", + "in": "query", + "name": "sortOrder", + "schema": { + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "type": "string" + } + }, + "segmentRulesV2QueryParam": { + "allowEmptyValue": true, + "description": "When set to rules=v2 will return AND rule compatible serving_rules field. When not set or set to any other value will return old rules field only compatible with OR rules.", + "in": "query", + "name": "rules", + "schema": { + "type": "string" + } + }, + "sortByField": { + "description": "SortByField", + "in": "query", + "name": "sortByField", + "schema": { + "enum": [ + "name", + "identifier", + "archived", + "kind", + "modifiedAt" + ], + "type": "string" + } + }, + "sortOrder": { + "description": "SortOrder", + "in": "query", + "name": "sortOrder", + "schema": { + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "type": "string" + } + }, + "tagFilterOptionalParam": { + "allowEmptyValue": true, + "description": "Partial Search of Tag Identifiers to filter on", + "in": "query", + "name": "tagIdentifierFilter", + "schema": { + "type": "string" + } + }, + "targetFilterOptionalParam": { + "allowEmptyValue": true, + "description": "Identifier of the target to filter on", + "in": "query", + "name": "targetIdentifierFilter", + "schema": { + "type": "string" + } + }, + "targetIdentifierQueryParam": { + "allowEmptyValue": true, + "description": "Identifier of the target", + "in": "query", + "name": "targetIdentifier", + "schema": { + "type": "string" + } + }, + "targetNameQueryParam": { + "allowEmptyValue": true, + "description": "Name of the target", + "in": "query", + "name": "targetName", + "schema": { + "type": "string" + } + }, + "targetOptionalParam": { + "allowEmptyValue": true, + "description": "Identifier of a target", + "in": "query", + "name": "targetIdentifier", + "schema": { + "type": "string" + } + }, + "targetSortByField": { + "allowEmptyValue": true, + "description": "SortByField", + "in": "query", + "name": "sortByField", + "schema": { + "enum": [ + "createdAt", + "name", + "identifier" + ], + "type": "string" + } + }, + "targetSortOrder": { + "allowEmptyValue": true, + "description": "SortOrder", + "in": "query", + "name": "sortOrder", + "schema": { + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } + }, + "AccountIdentifierParam": { + "description": "Account Identifier", + "in": "query", + "name": "accountIdentifier", + "schema": { + "type": "string" + } + }, + "LabelsParam": { + "description": "Label.", + "in": "query", + "name": "label", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "RegistryIdentifierParam": { + "description": "Registry Identifier", + "in": "query", + "name": "reg_identifier", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "RegistryIdentifierPathParam": { + "description": "Unique registry Identifier in a account.", + "in": "path", + "name": "registry_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + "RegistryTypeParam": { + "description": "Registry Type", + "in": "query", + "name": "type", + "schema": { + "enum": [ + "VIRTUAL", + "UPSTREAM" + ], + "type": "string" + } + }, + "artifactParam": { + "description": "Artifat", + "in": "query", + "name": "artifact", + "schema": { + "type": "string" + } + }, + "artifactPathParam": { + "description": "Name of artifact.", + "in": "path", + "name": "artifact", + "required": true, + "schema": { + "type": "string" + } + }, + "childVersionParam": { + "description": "Child version incase of Docker artifacts.", + "in": "query", + "name": "childVersion", + "schema": { + "type": "string" + } + }, + "deployedArtifact": { + "description": "Deployed Artifact Filter.", + "in": "query", + "name": "deployed_artifact", + "schema": { + "type": "boolean" + } + }, + "digestOptParam": { + "description": "Digest.", + "in": "query", + "name": "digest", + "schema": { + "type": "string" + } + }, + "digestParam": { + "description": "Digest.", + "in": "query", + "name": "digest", + "required": true, + "schema": { + "type": "string" + } + }, + "envType": { + "description": "env type", + "in": "query", + "name": "env_type", + "schema": { + "description": "Environment Type", + "enum": [ + "PreProduction", + "Production" + ], + "type": "string" + } + }, + "fromDateParam": { + "description": "Date. Format - MM/DD/YYYY", + "in": "query", + "name": "from", + "schema": { + "type": "string" + } + }, + "latestVersion": { + "description": "Latest Version Filter.", + "in": "query", + "name": "latest_version", + "schema": { + "type": "boolean" + } + }, + "packageTypeParam": { + "description": "Registry Package Type", + "in": "query", + "name": "package_type", + "schema": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "RegistrypageNumber": { + "description": "Current page number", + "in": "query", + "name": "page", + "schema": { + "default": 1, + "format": "int64", + "type": "integer" + } + }, + "RegistrypageSize": { + "description": "Number of items per page", + "in": "query", + "name": "size", + "schema": { + "default": 20, + "format": "int64", + "type": "integer" + } + }, + "recursiveParam": { + "description": "Whether to list registries recursively.", + "in": "query", + "name": "recursive", + "schema": { + "default": false, + "type": "boolean" + } + }, + "registryRefPathParam": { + "description": "Unique registry path.", + "in": "path", + "name": "registry_ref", + "required": true, + "schema": { + "type": "string" + } + }, + "searchTerm": { + "description": "search Term.", + "in": "query", + "name": "search_term", + "schema": { + "type": "string" + } + }, + "sortField": { + "description": "sortField", + "in": "query", + "name": "sort_field", + "schema": { + "type": "string" + } + }, + "RegistrysortOrder": { + "description": "sortOrder", + "in": "query", + "name": "sort_order", + "schema": { + "type": "string" + } + }, + "spaceRefPathParam": { + "description": "Unique space path.", + "in": "path", + "name": "space_ref", + "required": true, + "schema": { + "type": "string" + } + }, + "spaceRefQueryParam": { + "description": "Unique space path", + "in": "query", + "name": "space_ref", + "schema": { + "type": "string" + } + }, + "toDateParam": { + "description": "Date. Format - MM/DD/YYYY", + "in": "query", + "name": "to", + "schema": { + "type": "string" + } + }, + "versionParam": { + "description": "Version", + "in": "query", + "name": "version", + "schema": { + "type": "string" + } + }, + "versionPathParam": { + "description": "Name of Artifact Version.", + "in": "path", + "name": "version", + "required": true, + "schema": { + "type": "string" + } + }, + "webhookExecutionIdPathParam": { + "description": "Unique webhook execution identifier.", + "in": "path", + "name": "webhook_execution_id", + "required": true, + "schema": { + "type": "string" + } + }, + "webhookIdentifierPathParam": { + "description": "Unique webhook identifier.", + "in": "path", + "name": "webhook_identifier", + "required": true, + "schema": { + "type": "string" + } + }, + "DbOpsAccountHeader": { + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped.", + "in": "header", + "name": "Harness-Account", + "schema": { + "type": "string" + } + }, + "ChangeSetParam": { + "description": "FQN of the changeSet deployed. It is the combination of fileName, changeSetId and author separated by ::", + "in": "query", + "name": "changeSet", + "required": true, + "schema": { + "example": "folder1/fileName.yaml::changeSet1::author1", + "type": "string" + } + }, + "DBInstanceParam": { + "description": "database instance unique id", + "in": "path", + "name": "dbinstance", + "required": true, + "schema": { + "type": "string" + } + }, + "DBSchemaParam": { + "description": "Identifier of the database schema", + "in": "path", + "name": "dbschema", + "required": true, + "schema": { + "maxLength": 128, + "type": "string" + } + }, + "DbOpsLimit": { + "description": "Pagination: Number of items to return.", + "in": "query", + "name": "limit", + "schema": { + "default": 10, + "maximum": 100, + "type": "integer" + } + }, + "LogParam": { + "in": "path", + "name": "log", + "required": true, + "schema": { + "type": "string" + } + }, + "DbOpsOrder": { + "description": "Order on the basis of which sorting is done.", + "in": "query", + "name": "order", + "schema": { + "default": "DESC", + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + } + }, + "DbOpsPageIndex": { + "description": "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items on each page.", + "in": "query", + "name": "page", + "schema": { + "default": 0, + "format": "int64", + "type": "integer" + } + }, + "DbOpsSearchTerm": { + "allowEmptyValue": true, + "description": "This would be used to filter resources having attributes matching the search term.", + "in": "query", + "name": "search_term", + "schema": { + "type": "string" + } + }, + "DbOpsSort": { + "description": "Parameter on the basis of which sorting is done.", + "in": "query", + "name": "sort", + "schema": { + "default": "created", + "enum": [ + "name", + "updated", + "created" + ], + "type": "string" + } + }, + "OrgParam1": { + "name": "org", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Harness organization ID" + }, + "ProjectParam1": { + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Harness project ID", + "name": "project" + }, + "OrchestrationId": { + "name": "orchestration", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Orchestration ID for SBOM orchestration" + }, + "ProvenanceId": { + "name": "provenance", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Provenance Id" + }, + "AccountHeader6": { + "name": "Harness-Account", + "in": "header", + "required": true, + "schema": { + "type": "string" + }, + "description": "Identifier field of the account the resource is scoped to. This is required for Authorization methods other than the x-api-key header. If you are using the x-api-key header, this can be skipped." + }, + "Limit6": { + "name": "limit", + "in": "query", + "schema": { + "type": "integer", + "default": 30, + "maximum": 1000, + "minimum": 1 + }, + "description": "Number of items to return per page." + }, + "Order2": { + "name": "order", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "ASC", + "DESC" + ], + "default": "ASC" + }, + "description": "Order on the basis of which sorting is done." + }, + "OrderDefaultDesc": { + "name": "order", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "ASC", + "DESC" + ], + "default": "DESC" + }, + "description": "Order on the basis of which sorting is done." + }, + "Page2": { + "name": "page", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 0, + "minimum": 0 + }, + "description": "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items in each page\t" + }, + "SearchTerm5": { + "name": "search_term", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + "Artifact": { + "name": "artifact", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Harness artifact identifier" + }, + "Tag": { + "name": "tag", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Harness artifact tag" + }, + "Exemption": { + "name": "exemption", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "SSCA Enforcement Exemption Id" + }, + "EnvType": { + "name": "EnvType", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "Prod", + "PreProd" + ] + }, + "allowEmptyValue": true, + "description": "Environment Type" + }, + "ImageLayer": { + "name": "image_layer", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "BASE", + "APP", + "DISTRO" + ] + }, + "description": "Filters based on image layer" + }, + "SignatureId": { + "name": "signatureId", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "description": "Signature Id" + } + }, + "requestBodies": { + "CreateRoleRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRoleRequest" + }, + "examples": { + "role-request": { + "value": { + "identifier": "example_role", + "name": "Example_Role", + "permissions": [ + "core_view" + ], + "description": "This is an Example Role", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CreateRoleRequest" + }, + "examples": { + "role-request": { + "value": "identifier: example_role\nname: Example_Role\npermissions:\n - core_view\ndescription: This is an Example Role\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n" + } + } + } + }, + "description": "Role Request body", + "required": true + }, + "RoleAssignmentRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoleAssignment" + }, + "examples": { + "role-assignment-request-json": { + "value": { + "identifier": "example_role_assignment", + "resource_group": "example_resource_group_identifier", + "role": "example_role_identifier", + "principal": { + "scope": "ACCOUNT", + "identifier": "example_principal_identifier", + "type": "USER" + }, + "disabled": false, + "managed": false + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/RoleAssignment" + }, + "examples": { + "role-assignment-request-yaml": { + "value": "identifier: example_role_assignment\nresource_group: example_resource_group_identifier\nrole: example_role_identifier\nprincipal:\n scope: ACCOUNT\n identifier: example_principal_identifier\n type: USER\ndisabled: false\nmanaged: false\n" + } + } + } + }, + "description": "Role Request body", + "required": true + }, + "PublicAccessRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicAccessRequest" + } + } + } + }, + "AccessPolicyAnalysisRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AccessPolicyAnalysisRequest" + } + } + }, + "description": "This is the request body that accepts parameters based on which access policies will be analysed" + }, + "PublicAccessCheckRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicAccessCheckRequest" + } + } + }, + "description": "Request to query if given resources are public or not" + }, + "ServiceCreateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceCreateRequest" + }, + "examples": { + "example-1": { + "value": { + "identifier": "example_service", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceCreateRequest" + }, + "examples": { + "example-1": { + "value": "identifier: example_service\nname: Example_service\ndescription: This is a example service\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nyaml: |\n service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + } + } + } + }, + "description": "Create Service request body", + "required": true + }, + "ServiceUpdateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ServiceUpdateRequest" + }, + "examples": { + "example-1": { + "value": { + "identifier": "example_service", + "name": "Example_service", + "description": "This is a example service", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ServiceUpdateRequest" + }, + "examples": { + "example-1": { + "value": "identifier: example_service\nname: Example_service\ndescription: This is a example service\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nyaml: |\n service:\n name: \"Example_service\"\n identifier: \"example_service\"\n tags: {}\n" + } + } + } + }, + "description": "Update Service request body", + "required": true + }, + "UpdateProjectRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateProjectRequest" + }, + "examples": { + "example-project-update-request-json": { + "value": { + "project": { + "identifier": "example_project_identifier", + "name": "example-project-name", + "color": "#0063F7", + "modules": [ + "CD" + ], + "description": "This is a example project", + "tags": { + "property1": "value1", + "property2": "value2" + } + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UpdateProjectRequest" + }, + "examples": { + "example-project-update-request-yaml": { + "value": "project:\n identifier: example_project_identifier\n name: example-project-name\n color: '#0063F7'\n modules:\n - CD\n description: This is a example project\n tags:\n property1: value1\n property2: value2\n" + } + } + } + }, + "description": "Put the necessary fields for the API to update a Project.", + "required": true + }, + "CreateOrganizationRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateOrganizationRequest" + }, + "examples": { + "example-create-organization-request-json": { + "value": { + "org": { + "identifier": "example_organization", + "name": "Example Organization", + "description": "This is an Example organization", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + } + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CreateOrganizationRequest" + }, + "examples": { + "example-create-organization-request-yaml": { + "value": "org:\n identifier: example_organization\n name: Example Organization\n description: This is an Example organization\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n" + } + } + } + }, + "description": "Post the necessary fields for the API to create an organization.", + "required": true + }, + "UpdateOrganizationRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateOrganizationRequest" + }, + "examples": { + "example-organization-update-request-json": { + "value": { + "org": { + "identifier": "example_organization", + "name": "Example Organization", + "description": "This is an example organization", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + } + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/UpdateOrganizationRequest" + }, + "examples": { + "example-organization-update-request-json": { + "value": "org:\n identifier: example_organization\n name: Example Organization\n description: This is an example organization\n tags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\n" + } + } + } + }, + "description": "Put the necessary fields for the API to update a organization.", + "required": true + }, + "CreateProjectRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateProjectRequest" + }, + "examples": { + "example-create-project-request-json": { + "value": { + "project": { + "identifier": "example_project_identifier", + "name": "example-project-name", + "color": "#0063F7", + "modules": [ + "CD" + ], + "description": "This is a example project", + "tags": { + "property1": "value1", + "property2": "value2" + } + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CreateProjectRequest" + }, + "examples": { + "example-create-project-request-yaml": { + "value": "project:\n identifier: example_project_identifier\n name: example-project-name\n color: '#0063F7'\n modules:\n - CD\n description: This is a example project\n tags:\n property1: value1\n property2: value2\n" + } + } + } + }, + "description": "Post the necessary fields for the API to create a project.", + "required": true + }, + "SecretRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretRequest" + }, + "examples": { + "example-ssh-kerberos-tgt-key-tab-file-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SSHKerberosTGTKeyTabFile", + "port": 22, + "principal": "example-principal", + "realm": "example-realm", + "key_path": "key/file/path" + } + } + } + }, + "example-ssh-kerberos-tgt-password-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SSHKerberosTGTPassword", + "port": 22, + "principal": "example-principal", + "realm": "example-realm", + "password": "account.example-password" + } + } + } + }, + "example-secret-file-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SecretFile", + "secret_manager_identifier": "example_secret_manager_identifier" + } + } + } + }, + "example-secret-text-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SecretText", + "secret_manager_identifier": "example_secret_manager_identifier", + "value_type": "Inline", + "value": "example_secret_text_value" + } + } + } + }, + "example-ssh-key-path-file-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SSHKeyPath", + "port": 22, + "username": "example_username", + "key_path": "ssh/key/path", + "encrypted_passphrase": "account.example_passphrase" + } + } + } + }, + "example-ssh-key-reference-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SSHKeyReference", + "port": 22, + "username": "example_username", + "key": "example/secret/key/path", + "encrypted_passphrase": "account.example_passphrase" + } + } + } + }, + "example-ssh-password-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "SSHPassword", + "port": 22, + "username": "example_username", + "password": "account.example_password" + } + } + } + }, + "example-winrm-ntlm-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "WinRmNTLM", + "port": 5986, + "domain": "example-domain", + "username": "example-username", + "password": "example-password", + "use_ssl": true, + "skip_cert_checks": true, + "use_no_profile": true + } + } + } + }, + "example-winrm-tgt-key-file-tab-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "WinRmTGTKeyTabFile", + "port": 5986, + "principal": "example-principal", + "realm": "example-realm", + "key_path": "key/file/path", + "use_ssl": true, + "skip_cert_checks": true, + "use_no_profile": true + } + } + } + }, + "example-winrm-tgt-password-secret-request-json": { + "value": { + "secret": { + "name": "example_secret", + "identifier": "example_secret", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_secret" + }, + "description": "example_secret", + "spec": { + "type": "WinRmTGTPassword", + "port": 5986, + "principal": "example-principal", + "realm": "example-realm", + "password": "example-password", + "use_ssl": true, + "skip_cert_checks": true, + "use_no_profile": true + } + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/SecretRequest" + }, + "examples": { + "example-ssh-kerberos-tgt-key-tab-file-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SSHKerberosTGTKeyTabFile\n port: 22\n principal: example-principal\n realm: example-realm\n key_path: key/file/path\n" + }, + "example-ssh-kerberos-tgt-password-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SSHKerberosTGTPassword\n port: 22\n principal: example-principal\n realm: example-realm\n password: account.example-password\n" + }, + "example-secret-file-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SecretFile\n secret_manager_identifier: example_secret_manager_identifier\n" + }, + "example-secret-text-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SecretText\n secret_manager_identifier: example_secret_manager_identifier\n value_type: Inline\n value: example_secret_text_value\n" + }, + "example-ssh-key-path-file-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SSHKeyPath\n port: 22\n username: example_username\n key_path: ssh/key/path\n encrypted_passphrase: account.example_passphrase\n" + }, + "example-ssh-key-reference-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SSHKeyReference\n port: 22\n username: example_username\n key: example/secret/key/path\n encrypted_passphrase: account.example_passphrase\n" + }, + "example-ssh-password-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: SSHPassword\n port: 22\n username: example_username\n password: account.example_password\n" + }, + "example-winrm-ntlm-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: WinRmNTLM\n port: 5986\n domain: example-domain\n username: example-username\n password: example-password\n use_ssl: true\n skip_cert_checks: true\n use_no_profile: true\n" + }, + "example-winrm-tgt-key-file-tab-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: WinRmTGTKeyTabFile\n port: 5986\n principal: example-principal\n realm: example-realm\n key_path: key/file/path\n use_ssl: true\n skip_cert_checks: true\n use_no_profile: true\n" + }, + "example-winrm-tgt-password-secret-request-yaml": { + "value": "secret:\n name: example_secret\n identifier: example_secret\n org: default\n project: example_project\n tags:\n property1: example_secret\n description: example_secret\n spec:\n type: WinRmTGTPassword\n port: 5986\n principal: example-principal\n realm: example-realm\n password: example-password\n use_ssl: true\n skip_cert_checks: true\n use_no_profile: true\n" + } + } + }, + "multipart/form-data": { + "schema": { + "properties": { + "spec": { + "$ref": "#/components/schemas/SecretRequest" + }, + "file": { + "type": "string", + "format": "binary" + } + }, + "required": [ + "file", + "spec" + ] + }, + "encoding": { + "spec": { + "contentType": "application/json" + } + } + } + }, + "required": true + }, + "SecretValidationRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SecretRequest" + }, + "examples": { + "Example 1": { + "value": { + "secret_manager_identifier": "prod_sm_one", + "secret_ref_path": "path1/path2#key" + } + } + } + } + }, + "description": "Details of the secret reference" + }, + "IPAllowlistConfigRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IPAllowlistConfigRequest" + } + } + } + }, + "FavoriteRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FavoriteDTO" + }, + "examples": { + "ProjectFavConnector": { + "value": { + "org": "org_id", + "project": "project_id", + "user_id": "user_id", + "module": "CD", + "resource_type": "CONNECTOR", + "resource_id": "resource_id" + } + } + } + } + } + }, + "EulaSignRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EulaSignRequest" + } + } + } + }, + "CreateGitXWebhookRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateGitXWebhookRequest" + }, + "examples": { + "Example 1": { + "value": { + "webhook_identifier": "", + "repo_name": "", + "connector_ref": "", + "folder_paths": [ + "" + ], + "webhook_name": "" + } + } + } + } + }, + "description": "Create GitX webhook request" + }, + "UpdateGitXWebhookRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateGitXWebhookRequest" + }, + "examples": { + "Example 1": { + "value": { + "repo_name": "", + "connector_ref": "", + "webhook_name": "", + "folder_paths": [ + "" + ], + "is_enabled": true + } + } + } + } + }, + "description": "Update GitX webhook request" + }, + "BatchReleaseDetailsRequest": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ReleaseDetailsRequest" + } + }, + "examples": { + "Example 1": { + "value": [ + { + "namespace": "default", + "release_name": "release-pre-deployment-todolist" + } + ] + } + } + } + }, + "description": "Batch Release Details request body" + }, + "UpdateGitXWebhookEventRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateGitXWebhookEventRequest" + } + } + }, + "description": "Update GitX Webhook Event Request" + }, + "CreateBannerRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BannerDTO" + } + } + } + }, + "CreateCertificateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CertificateDTO" + }, + "examples": { + "example-certificate-input-text": { + "value": { + "name": "example_name", + "identifier": "example_identifier", + "org": "example_org", + "project": "example_project", + "certificateValue": "actual_certificate_content", + "tags": { + "property1": "tag1", + "property2": "tag2" + }, + "description": "example_description", + "inputSpec": { + "type": "TEXT" + } + } + } + } + }, + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/CertificateDTO" + }, + "file": { + "type": "string", + "x-stoplight": { + "id": "o0m5hvts15hyp" + }, + "format": "binary" + } + }, + "required": [ + "spec", + "file" + ] + }, + "examples": {} + } + } + }, + "UpdateCertificateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CertificateDTO" + } + }, + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "spec": { + "$ref": "#/components/schemas/CertificateDTO" + }, + "file": { + "type": "string", + "x-stoplight": { + "id": "11s7g7fmuu0xw" + }, + "format": "binary" + } + }, + "required": [ + "spec" + ] + } + } + } + }, + "LdapSettingsRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapSettingsRequest" + } + } + } + }, + "LinkSSOGroupRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LinkSSOGroupRequestDTO" + } + } + } + }, + "UnlinkSSOGroupRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UnlinkSSOGroupRequestDTO" + } + } + } + }, + "EnvironmentCreateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentCreateRequest" + }, + "examples": { + "example-1": { + "value": { + "identifier": "example_environment_v0", + "name": "Example_Env_V0", + "description": "This is a example environment v0", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_Env_V0\"\n identifier: \"example_environment_v0\"\n tags: {}\n" + } + }, + "example-2": { + "value": { + "identifier": "example_environment_v1", + "name": "Example_Env_V1", + "description": "This is a example environment v1", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n version: 1\n kind: Environment\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentCreateRequest" + }, + "examples": { + "example-1": { + "value": "identifier: example_environment_v0\nname: Example_Env_V0\ndescription: This is a example environment\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nyaml: |\n service:\n name: \"Example_Env_V0\"\n identifier: \"example_environment_v0\"\n tags: {}\n" + } + } + } + }, + "description": "Update Environment request body", + "required": true + }, + "EnvironmentUpdateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnvironmentUpdateRequest" + }, + "examples": { + "example-1": { + "value": { + "identifier": "example_environment_v0", + "name": "Example_Env_V0", + "description": "This is a example environment v0", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_Env_V0\"\n identifier: \"example_environment_v0\"\n tags: {}\n" + } + }, + "example-2": { + "value": { + "identifier": "example_environment_v1", + "name": "Example_Env_V1", + "description": "This is a example environment v1", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n version: 1\n kind: Environment\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/EnvironmentUpdateRequest" + }, + "examples": { + "example-1": { + "value": "identifier: example_environment_v0\nname: Example_Env_V0\ndescription: This is a example environment\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nyaml: |\n service:\n name: \"Example_Env_V0\"\n identifier: \"example_environment_v0\"\n tags: {}\n" + } + } + } + }, + "description": "Update Environment request body", + "required": true + }, + "InfrastructureCreateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InfrastructureCreateRequest" + }, + "examples": { + "example-1": { + "value": { + "identifier": "example_infrastructure_v0", + "name": "Example_Infra_V0", + "description": "This is a example infrastructure v0", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_Infra_V0\"\n identifier: \"example_infrastructure_v0\"\n tags: {}\n" + } + }, + "example-2": { + "value": { + "identifier": "example_infrastructure_v1", + "name": "Example_Env_V1", + "description": "This is a example infrastructure v1", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "infrastructure:\n version: 1\n kind: Infrastructure\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InfrastructureCreateRequest" + }, + "examples": { + "example-1": { + "value": "identifier: example_infrastructure_v0\nname: Example_Infra_V0\ndescription: This is a example infrastructure\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nyaml: |\n service:\n name: \"Example_Infra_V0\"\n identifier: \"example_infrastructure_v0\"\n tags: {}\n" + } + } + } + }, + "description": "Create Infrastructure request body", + "required": true + }, + "InfrastructureUpdateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InfrastructureUpdateRequest" + }, + "examples": { + "example-1": { + "value": { + "identifier": "example_infrastructure_v0", + "name": "Example_Infra_V0", + "description": "This is a example infrastructure v0", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "environment:\n name: \"Example_Infra_V0\"\n identifier: \"example_infrastructure_v0\"\n tags: {}\n" + } + }, + "example-2": { + "value": { + "identifier": "example_infrastructure_v1", + "name": "Example_Env_V1", + "description": "This is a example infrastructure v1", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "yaml": "infrastructure:\n version: 1\n kind: Infrastructure\n" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InfrastructureUpdateRequest" + }, + "examples": { + "example-1": { + "value": "identifier: example_infrastructure_v0\nname: Example_Infra_V0\ndescription: This is a example infrastructure\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\nyaml: |\n service:\n name: \"Example_Infra_V0\"\n identifier: \"example_infrastructure_v0\"\n tags: {}\n" + } + } + } + }, + "description": "Update Infrastructure request body", + "required": true + }, + "CronExpressionRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CronExpressionRequestDTO" + } + } + } + }, + "LdapTestLoginRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LdapTestLoginRequestDTO" + } + } + } + }, + "ListWebhookRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListWebhookRequest" + } + } + }, + "description": "List webhooks request" + }, + "CreateWebhookRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateWebhookRequest" + } + } + }, + "description": "Create webhook request" + }, + "UpdateWebhookRequest": { + "content": { + "application/json": { + "schema": { + "type": "object", + "$ref": "#/components/schemas/UpdateWebhookRequest" + } + } + }, + "description": "Update webhook request" + }, + "UpdateBannerRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BannerDTO" + } + } + }, + "description": "Request body when updating respective Banner." + }, + "OidcProviderRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OidcProviderDTO" + } + } + } + }, + "GitEntityFindInfoRequestBody": { + "description": "Optional Git synchronization details for filtering primary manifests.", + "required": false, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitEntityFindInfoDTO" + } + } + } + }, + "ConnectorRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorRequest" + }, + "examples": { + "example-git-http-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "GitHttp", + "url": "https://github.com/example/example-repo.git", + "branch": "example_branch", + "connection_type": "Repo", + "username": "git-http-user", + "password_ref": "account.git-http-password", + "execute_on_delegate": false + } + } + } + }, + "example-git-http-encrypted-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "GitHttpEncrypted", + "url": "https://github.com/example/example-repo.git", + "branch": "example_branch", + "connection_type": "Repo", + "username_ref": "account.git-http-user", + "password_ref": "account.git-http-password", + "validation_repo": "https://github.com/example/example-validation-repo.git", + "execute_on_delegate": false + } + } + } + }, + "example-git-ssh-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "GitSsh", + "url": "https://github.com/example/example-repo.git", + "branch": "example_branch", + "connection_type": "Repo", + "ssh_key_ref": "account.git-http-password", + "execute_on_delegate": false + } + } + } + }, + "example-appdynamics-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "Appdynamics", + "account_name": "appdynamics-account-name", + "controller_url": "https://appdynamics.com/controller/", + "username": "appdynamics-username", + "password_ref": "account.appdynamics-password", + "delegate_selectors": [] + } + } + } + }, + "example-appdynamics-client-id-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "AppdynamicsClientId", + "account_name": "appdynamics-account-name", + "controller_url": "https://appdynamics.com/controller/", + "client_id": "appdynamics-client-id", + "client_secret_ref": "account.appdynamics-client-secret", + "delegate_selectors": [] + } + } + } + }, + "example-artifactory-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "Artifactory", + "url": "https://artifactory.com/example/example-artifactory", + "username": "artifactory-user", + "password_ref": "account.artifactory-password", + "delegate_selectors": [], + "execute_on_delegate": false + } + } + } + }, + "example-artifactory-anonymous-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "ArtifactoryAnonymous", + "url": "https://artifactory.com/example/example-artifactory", + "delegate_selectors": [], + "execute_on_delegate": false + } + } + } + }, + "example-artifactory-encrypted-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "ArtifactoryEncrypted", + "url": "https://artifactory.com/example/example-artifactory", + "username_ref": "account.artifactory-user", + "password_ref": "account.artifactory-password", + "delegate_selectors": [], + "execute_on_delegate": false + } + } + } + }, + "example-azure-client-certificate-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "AzureClientCertificate", + "delegate_selectors": [ + "pl1" + ], + "azure_environment_type": "AZURE", + "execute_on_delegate": false, + "application_id": "1234567890", + "tenant_id": "1234567890", + "certificate_ref": "account.azure-client-certificate" + } + } + } + }, + "example-azure-client-secret-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "AzureClientSecretKey", + "delegate_selectors": [ + "pl1" + ], + "azure_environment_type": "AZURE", + "execute_on_delegate": false, + "application_id": "1234567890", + "tenant_id": "1234567890", + "secret_ref": "account.azure-secret-key" + } + } + } + }, + "example-azure-system-assigned-managed-identity-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "AzureInheritFromDelegateSystemAssignedManagedIdentity", + "delegate_selectors": [ + "pl1" + ], + "azure_environment_type": "AZURE", + "execute_on_delegate": false + } + } + } + }, + "example-azure-user-assigned-managed-identity-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "AzureInheritFromDelegateUserAssignedManagedIdentity", + "delegate_selectors": [ + "pl1" + ], + "azure_environment_type": "AZURE", + "execute_on_delegate": false, + "application_id": "1234567890", + "client_id": "1234567890" + } + } + } + }, + "example-aws-code-commit-connector-request-json": { + "value": { + "connector": { + "name": "example_connector", + "identifier": "example_connector", + "description": "example_connector", + "org": "default", + "project": "example_project", + "tags": { + "property1": "example_connector" + }, + "spec": { + "type": "AwsCodeCommit", + "url": "https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo", + "url_type": "Repo", + "access_key_ref": "account.aws-access-key", + "secret_key_ref": "account.aws-secret-key" + } + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ConnectorRequest" + }, + "examples": { + "example-git-http-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: GitHttp\n url: 'https://github.com/example/example-repo.git'\n branch: example_branch\n connection_type: Repo\n username: git-http-user\n password_ref: account.git-http-password\n execute_on_delegate: false\n" + }, + "example-git-http-encrypted-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: GitHttpEncrypted\n url: https://github.com/example/example-repo.git\n branch: example_branch\n connection_type: Repo\n username_ref: account.git-http-user\n password_ref: account.git-http-password\n validation_repo: https://github.com/example/example-validation-repo.git\n execute_on_delegate: false\n" + }, + "example-git-ssh-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: GitSsh\n url: 'https://github.com/example/example-repo.git'\n branch: example_branch\n connection_type: Repo\n ssh_key_ref: account.git-http-password\n execute_on_delegate: false\n" + }, + "example-appdynamics-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: Appdynamics\n account_name: appdynamics-account-name\n controller_url: https://appdynamics.com/controller/\n username: appdynamics-username\n password_ref: account.appdynamics-password\n delegate_selectors: []\n" + }, + "example-appdynamics-client-id-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: AppdynamicsClientId\n account_name: appdynamics-account-name\n controller_url: https://appdynamics.com/controller/\n client_id: appdynamics-client-id\n client_secret_ref: account.appdynamics-client-secret\n delegate_selectors: []\n" + }, + "example-artifactory-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: Artifactory\n url: https://artifactory.com/example/example-artifactory\n username: artifactory-user\n password_ref: account.artifactory-password\n delegate_selectors: []\n execute_on_delegate: false\n" + }, + "example-artifactory-anonymous-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: ArtifactoryAnonymous\n url: https://artifactory.com/example/example-artifactory\n delegate_selectors: []\n execute_on_delegate: false\n" + }, + "example-artifactory-encrypted-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: ArtifactoryEncrypted\n url: https://artifactory.com/example/example-artifactory\n username_ref: account.artifactory-user\n password_ref: account.artifactory-password\n delegate_selectors: []\n execute_on_delegate: false\n" + }, + "example-azure-client-certificate-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: AzureClientCertificate\n delegate_selectors:\n - pl1\n azure_environment_type: AZURE\n execute_on_delegate: false\n application_id: '1234567890'\n tenant_id: '1234567890'\n certificate_ref: account.azure-client-certificate\n" + }, + "example-azure-client-secret-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: AzureClientSecretKey\n delegate_selectors:\n - pl1\n azure_environment_type: AZURE\n execute_on_delegate: false\n application_id: '1234567890'\n tenant_id: '1234567890'\n secret_ref: account.azure-secret-key\n" + }, + "example-azure-system-assigned-managed-identity-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: AzureInheritFromDelegateSystemAssignedManagedIdentity\n delegate_selectors:\n - pl1\n azure_environment_type: AZURE\n execute_on_delegate: false\n" + }, + "example-azure-user-assigned-managed-identity-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: AzureInheritFromDelegateUserAssignedManagedIdentity\n delegate_selectors:\n - pl1\n azure_environment_type: AZURE\n execute_on_delegate: false\n application_id: '1234567890'\n client_id: '1234567890'\n" + }, + "example-aws-code-commit-connector-request-yaml": { + "value": "connector:\n name: example_connector\n identifier: example_connector\n description: example_connector\n org: default\n project: example_project\n tags:\n property1: example_connector\n spec:\n type: AwsCodeCommit\n url: 'https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo'\n url_type: Repo\n access_key_ref: account.aws-access-key\n secret_key_ref: account.aws-secret-key\n" + } + } + } + }, + "required": true + }, + "CreateResourceGroupRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateResourceGroupRequest" + }, + "examples": { + "resource-group-request": { + "value": { + "identifier": "example_resource_group", + "name": "Example Resource Group", + "color": "#0063F7", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "description": "This is an Example Resource Group", + "included_scope": [ + { + "filter": "EXCLUDING_CHILD_SCOPES", + "account": "sample_account", + "org": "sample_organization", + "project": "sample_project" + } + ], + "resource_filter": [ + { + "resource_type": "resource", + "identifiers": [ + "example_resource" + ], + "attribute_name": "resource_attribute", + "attribute_values": [ + "example_resource_attribute" + ] + } + ], + "include_all_resources": false + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CreateResourceGroupRequest" + }, + "examples": { + "resource-group-request": { + "value": "identifier: example_resource_group\nname: Example Resource Group\ncolor: '#0063F7'\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\ndescription: This is an Example Resource Group\nincluded_scope:\n - filter: EXCLUDING_CHILD_SCOPES\n account: sample_account\n org: sample_organization\n project: sample_project\nresource_filter:\n - resource_type: resource\n identifiers:\n - example_resource\n attribute_name: resource_attribute\n attribute_values:\n - example_resource_attribute\ninclude_all: false\n" + } + } + } + }, + "description": "Resource Group request body", + "required": true + }, + "FilterResourceGroupRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupFilterRequestBody" + }, + "examples": { + "example-filter": { + "value": { + "account": "example_account", + "org": "example_organization", + "project": "example_project", + "search_term": "search", + "identifier_filter": [ + "example_resource_group" + ], + "resource_selector_filter": [ + { + "resource_type": "RESOURCE", + "resource_identifier": "example_resource" + } + ], + "managed_filter": "NO_FILTER" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ResourceGroupFilterRequestBody" + }, + "examples": { + "example-filter": { + "value": "account: example_account\norg: example_organization\nproject: example_project\nsearch_term: search\nidentifier_filter:\n - example_resource_group\nresource_selector_filter:\n - resource_type: RESOURCE\n resource_identifier: example_resource\nmanaged_filter: NO_FILTER\n" + } + } + } + }, + "description": "Filter Resource Group request body", + "required": true + }, + "CreateStreamingDestinationRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StreamingDestinationDTO" + }, + "examples": { + "example-aws-s3-stream-destination-request": { + "value": { + "identifier": "example_destination", + "name": "example destination name", + "status": "ACTIVE", + "connector_ref": "account.example_aws_connector", + "spec": { + "type": "AWS_S3", + "bucket": "example_bucket" + } + } + } + } + } + }, + "description": "Streaming Destination request body" + }, + "NotificationChannelRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotificationChannelDTO" + } + } + }, + "description": "Notification channel request" + }, + "NotificationRuleRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NotificationRuleDTO" + } + } + }, + "description": "Notification rule request" + }, + "SaveAttachmentRequest": { + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "string", + "x-stoplight": { + "id": "vq1ldb6vnuj85" + }, + "format": "binary", + "description": "File content" + }, + "spec": { + "$ref": "#/components/schemas/AttachmentDTO" + } + }, + "required": [ + "file", + "spec" + ] + } + } + }, + "description": "Save Notification Attachment Request" + }, + "TriggerRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TriggerRequestBody" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TriggerRequestBody" + } + } + }, + "description": "Trigger request body", + "required": true + }, + "PipelineCreateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineCreateRequestBody" + }, + "examples": { + "example-pipeline": { + "value": { + "pipeline_yaml": "pipeline:\n identifier: example_pipeline\n name: ExamplePipeline\n allowStageExecutions: false\n stages:\n - stage:\n name: Example Build Stage\n identifier: example_build_stage\n description: ''\n type: Approval\n spec:\n execution:\n steps:\n - step:\n name: Approval Step\n identifier: Approval_Step\n type: HarnessApproval\n timeout: 1d\n spec:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n minimumCount: 1\n disallowPipelineExecutor: false\n userGroups: <+input>\n approverInputs: []\n - step:\n type: ShellScript\n name: ShellScript Step\n identifier: ShellScript_Step\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n executionTarget: {}\n timeout: 10m\n tags: {}\n - stage:\n name: Example Deploy Stage\n identifier: example_deploy_stage\n description: ''\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: <+input>\n serviceDefinition:\n spec:\n variables: []\n type: Kubernetes\n infrastructure:\n environmentRef: <+input>\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: <+input>\n namespace: <+input>\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n execution:\n steps:\n - step:\n name: Rollout Deployment\n identifier: rolloutDeployment\n type: K8sRollingDeploy\n timeout: 10m\n spec:\n skipDryRun: false\n rollbackSteps:\n - step:\n name: Rollback Rollout Deployment\n identifier: rollbackRolloutDeployment\n type: K8sRollingRollback\n timeout: 10m\n spec: {}\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n", + "identifier": "example_pipeline", + "name": "ExamplePipeline", + "description": "Pipeline Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository" + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineCreateRequestBody" + }, + "examples": { + "example-pipeline": { + "value": "pipeline_yaml: 'pipeline: identifier: example_pipeline name: ExamplePipeline allowStageExecutions: false stages: - stage: name: Example Build Stage identifier: example_build_stage description: '''' type: Approval spec: execution: steps: - step: name: Approval Step identifier: Approval_Step type: HarnessApproval timeout: 1d spec: approvalMessage: |- Please review the following information and approve the pipeline progression includePipelineExecutionHistory: true approvers: minimumCount: 1 disallowPipelineExecutor: false userGroups: <+input> approverInputs: [] - step: type: ShellScript name: ShellScript Step identifier: ShellScript_Step spec: shell: Bash onDelegate: true source: type: Inline spec: script: <+input> environmentVariables: [] outputVariables: [] executionTarget: {} timeout: 10m tags: {} - stage: name: Example Deploy Stage identifier: example_deploy_stage description: '''' type: Deployment spec: serviceConfig: serviceRef: <+input> serviceDefinition: spec: variables: [] type: Kubernetes infrastructure: environmentRef: <+input> infrastructureDefinition: type: KubernetesDirect spec: connectorRef: <+input> namespace: <+input> releaseName: release-<+INFRA_KEY> allowSimultaneousDeployments: false execution: steps: - step: name: Rollout Deployment identifier: rolloutDeployment type: K8sRollingDeploy timeout: 10m spec: skipDryRun: false rollbackSteps: - step: name: Rollback Rollout Deployment identifier: rollbackRolloutDeployment type: K8sRollingRollback timeout: 10m spec: {} tags: {} failureStrategies: - onFailure: errors: - AllErrors action: type: StageRollback'\nidentifier: example_pipeline\nname: ExamplePipeline\ndescription: Pipeline Description\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\ngit_details:\n branch_name: branch\n file_path: /folder/file.json\n commit_message: Added Harness Git Experience\n base_branch: old_branch\n connector_ref: git_connector\n store_type: REMOTE\n repo_name: example_repository\n" + } + } + } + }, + "description": "Pipeline request body", + "required": true + }, + "PipelineUpdateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineUpdateRequestBody" + }, + "examples": { + "example-pipeline": { + "value": { + "pipeline_yaml": "pipeline:\n identifier: example_pipeline\n name: ExamplePipeline\n allowStageExecutions: false\n stages:\n - stage:\n name: Example Build Stage\n identifier: example_build_stage\n description: ''\n type: Approval\n spec:\n execution:\n steps:\n - step:\n name: Approval Step\n identifier: Approval_Step\n type: HarnessApproval\n timeout: 1d\n spec:\n approvalMessage: |-\n Please review the following information\n and approve the pipeline progression\n includePipelineExecutionHistory: true\n approvers:\n minimumCount: 1\n disallowPipelineExecutor: false\n userGroups: <+input>\n approverInputs: []\n - step:\n type: ShellScript\n name: ShellScript Step\n identifier: ShellScript_Step\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: <+input>\n environmentVariables: []\n outputVariables: []\n executionTarget: {}\n timeout: 10m\n tags: {}\n - stage:\n name: Example Deploy Stage\n identifier: example_deploy_stage\n description: ''\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: <+input>\n serviceDefinition:\n spec:\n variables: []\n type: Kubernetes\n infrastructure:\n environmentRef: <+input>\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: <+input>\n namespace: <+input>\n releaseName: release-<+INFRA_KEY>\n allowSimultaneousDeployments: false\n execution:\n steps:\n - step:\n name: Rollout Deployment\n identifier: rolloutDeployment\n type: K8sRollingDeploy\n timeout: 10m\n spec:\n skipDryRun: false\n rollbackSteps:\n - step:\n name: Rollback Rollout Deployment\n identifier: rollbackRolloutDeployment\n type: K8sRollingRollback\n timeout: 10m\n spec: {}\n tags: {}\n failureStrategies:\n - onFailure:\n errors:\n - AllErrors\n action:\n type: StageRollback\n", + "identifier": "example_pipeline", + "name": "ExamplePipeline", + "description": "Pipeline Description", + "tags": { + "example-tag-1": "example-tag-1-value", + "example-tag-2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "abcdXYZ", + "base_branch": "old_branch", + "last_commit_id": "abcdXYZ", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository" + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/PipelineUpdateRequestBody" + }, + "examples": { + "example-pipeline": { + "value": "pipeline_yaml: 'pipeline: identifier: example_pipeline name: ExamplePipeline allowStageExecutions: false stages: - stage: name: Example Build Stage identifier: example_build_stage description: '''' type: Approval spec: execution: steps: - step: name: Approval Step identifier: Approval_Step type: HarnessApproval timeout: 1d spec: approvalMessage: |- Please review the following information and approve the pipeline progression includePipelineExecutionHistory: true approvers: minimumCount: 1 disallowPipelineExecutor: false userGroups: <+input> approverInputs: [] - step: type: ShellScript name: ShellScript Step identifier: ShellScript_Step spec: shell: Bash onDelegate: true source: type: Inline spec: script: <+input> environmentVariables: [] outputVariables: [] executionTarget: {} timeout: 10m tags: {} - stage: name: Example Deploy Stage identifier: example_deploy_stage description: '''' type: Deployment spec: serviceConfig: serviceRef: <+input> serviceDefinition: spec: variables: [] type: Kubernetes infrastructure: environmentRef: <+input> infrastructureDefinition: type: KubernetesDirect spec: connectorRef: <+input> namespace: <+input> releaseName: release-<+INFRA_KEY> allowSimultaneousDeployments: false execution: steps: - step: name: Rollout Deployment identifier: rolloutDeployment type: K8sRollingDeploy timeout: 10m spec: skipDryRun: false rollbackSteps: - step: name: Rollback Rollout Deployment identifier: rollbackRolloutDeployment type: K8sRollingRollback timeout: 10m spec: {} tags: {} failureStrategies: - onFailure: errors: - AllErrors action: type: StageRollback'\nidentifier: example_pipeline\nname: ExamplePipeline\ndescription: Pipeline Description\ntags:\n example-tag-1: example-tag-1-value\n example-tag-2: example-tag-2-value\ngit_details:\n branch_name: branch\n commit_message: Added Harness Git Experience\n last_object_id: abcdXYZ\n base_branch: old_branch\n last_commit_id: abcdXYZ\n" + } + } + } + }, + "description": "Pipeline request body", + "required": true + }, + "InputSetCreateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetCreateRequestBody" + }, + "examples": { + "example-input": { + "value": { + "input_set_yaml": "inputSet:\n pipeline:\n identifier: Example_Pipeline\n stages:\n - stage:\n identifier: Example_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\\n type: Inline\n spec:\\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample", + "identifier": "example_input_set", + "name": "ExampleInputSet", + "description": "Input Set Description", + "tags": { + "property1": "example-tag-1-value", + "property2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "REMOTE", + "repo_name": "example_repository" + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InputSetCreateRequestBody" + }, + "examples": { + "example-input": { + "value": "input_set_yaml: |-\n inputSet:\n pipeline:\n identifier: Example_Pipeline\n stages:\n - stage:\n identifier: Example_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\\n type: Inline\n spec:\\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample\nidentifier: example_input_set\nname: ExampleInputSet\ndescription: Input Set Description\ntags:\n property1: example-tag-1-value\n property2: example-tag-2-value\ngit_details:\n branch_name: branch\n file_path: /folder/file.json\n commit_message: Added Harness Git Experience\n base_branch: old_branch\n connector_ref: git_connector\n store_type: INLINE\n repo_name: example_repository\n" + } + } + } + }, + "description": "Input Set create request body.", + "required": true + }, + "InputSetUpdateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetUpdateRequestBody" + }, + "examples": { + "example-input": { + "value": { + "input_set_yaml": "inputSet:\n pipeline:\n identifier: Example_Pipeline\n stages:\n - stage:\n identifier: Example_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\\n type: Inline\n spec:\\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample", + "identifier": "example_input_set", + "name": "ExampleInputSet", + "description": "Input Set Description", + "tags": { + "property1": "example-tag-1-value", + "property2": "example-tag-2-value" + }, + "git_details": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "abcdXYZ", + "base_branch": "old_branch", + "last_commit_id": "abcdXYZ", + "parent_entity_connector_ref": "git_connector", + "parent_entity_repo_name": "example_repository" + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/InputSetUpdateRequestBody" + }, + "examples": { + "example-input": { + "value": "input_set_yaml: |-\n inputSet:\n pipeline:\n identifier: Example_Pipeline\n stages:\n - stage:\n identifier: Example_Stage\n type: Approval\n spec:\n execution:\n steps:\n - step:\n identifier: Approval_Step\n type: HarnessApproval\n spec:\n approvers:\n userGroups:\n - account.Admins\n - step:\n identifier: Shellscript_Step\n type: ShellScript\n spec:\n source:\\n type: Inline\n spec:\\n script: echo \"ShellScript\"\n - stage:\n identifier: Sample_Deploy_Stage\n type: Deployment\n spec:\n serviceConfig:\n serviceRef: Service1\n infrastructure:\n environmentRef: Env1\n infrastructureDefinition:\n type: KubernetesDirect\n spec:\n connectorRef: account.harnessciplatform\n namespace: sample\nidentifier: example_input_set\nname: ExampleInputSet\ndescription: Input Set Description\ntags:\n property1: example-tag-1-value\n property2: example-tag-2-value\ngit_details:\n branch_name: branch\n commit_message: Added Harness Git Experience\n last_object_id: abcdXYZ\n base_branch: old_branch\n last_commit_id: abcdXYZ\n parent_entity_connector_ref: git_connector\n parent_entity_repo_name: example_repository\n" + } + } + } + }, + "description": "Input Set update request body", + "required": true + }, + "PipelineMoveConfigRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineMoveConfigRequestBody" + } + } + } + }, + "InputSetMoveConfigRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetMoveConfigRequestBody" + } + } + } + }, + "PipelineImportRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineImportRequestBody" + } + } + }, + "description": "Pipeline import request body" + }, + "InputSetImportRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InputSetImportRequestBody" + } + } + }, + "description": "Input Set import request body" + }, + "GitMetadataUpdateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitMetadataUpdateRequestBody" + } + } + } + }, + "StepPalleteFilterRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StepPalleteFilterRequestBody" + }, + "examples": { + "example-1": { + "value": { + "step_pallete_module_infos": [ + { + "module": "cd", + "category": "Kubernetes", + "should_show_common_steps": true + }, + { + "module": "cd", + "category": "Builds", + "should_show_common_steps": false + }, + { + "module": "cv", + "should_show_common_steps": false + }, + { + "module": "cd", + "category": "Chaos", + "should_show_common_steps": false + }, + { + "module": "pms", + "category": "ssca", + "should_show_common_steps": false + } + ], + "version": "1" + } + } + } + } + } + }, + "PipelineInputsSchemaRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineInputsSchemaRequestBody" + } + } + } + }, + "PipelinePatchRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelinePatchRequestBody" + } + } + } + }, + "MergeInputSetRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MergeInputSetRequestBody" + } + } + } + }, + "HarnessApprovalActivityRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HarnessApprovalActivityRequestBody" + }, + "examples": { + "Example 1": { + "value": { + "comments": "string", + "action": "APPROVE", + "approver_inputs": [ + { + "name": "example_input_1", + "value": "example_value_1" + }, + { + "name": "example_input_2", + "value": "example_value_2" + } + ] + } + } + } + } + }, + "description": "Request Body for Harness Approval Activity" + }, + "RerunPipelineRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RerunPipelineRequest" + } + } + } + }, + "RunStageRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RunStageRequestBody" + } + } + } + }, + "PipelineExecuteRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineExecuteRequestBody" + } + } + } + }, + "TemplateUpdateBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateUpdateRequestBody" + }, + "examples": { + "example-1": { + "value": { + "template_yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "git_details": { + "branch_name": "branch", + "commit_message": "Added Harness Git Experience", + "last_object_id": "example_object_id", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "last_commit_id": "example_commit_id", + "file_path": "/folder/file.json", + "repo_name": "example_repository", + "store_type": "INLINE" + }, + "comments": "sample_comments" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateUpdateRequestBody" + }, + "examples": { + "example-1": { + "value": "template_yaml: |\n template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\ngit_details:\n branch_name: branch\n commit_message: Added Harness Git Experience\n last_object_id: example_object_id\n base_branch: old_branch\n connector_ref: git_connector\n last_commit_id: example_commit_id\n file_path: /folder/file.json\n repo_name: example_repository\n store_type: INLINE\ncomments: sample_comments\n" + } + } + } + }, + "description": "Templates Update Request Body" + }, + "TemplateFetchBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GitFindDetails" + }, + "examples": { + "example-1": { + "value": { + "branch_name": "branch", + "parent_entity_connector_ref": "example_connector_ref", + "parent_entity_repo_name": "example_repo_name", + "parent_entity_account_id": "example_account_id", + "parent_entity_org_id": "example_org_id", + "parent_entity_project_id": "example_project_id", + "comments": "sample_comments" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/GitFindDetails" + }, + "examples": { + "example-1": { + "value": "branch_name: branch\nparent_entity_connector_ref: example_connector_ref\nparent_entity_repo_name: example_repo_name\nparent_entity_account_id: example_account_id\nparent_entity_org_id: example_org_id\nparent_entity_project_id: example_project_id\ncomments: sample_comments\n" + } + } + } + }, + "description": "Templates Fetch Request Body" + }, + "TemplateCreateBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateCreateRequestBody" + }, + "examples": { + "example-1": { + "value": { + "template_yaml": "template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\n", + "git_details": { + "branch_name": "branch", + "file_path": "/folder/file.json", + "commit_message": "Added Harness Git Experience", + "base_branch": "old_branch", + "connector_ref": "git_connector", + "store_type": "INLINE", + "repo_name": "example_repository" + }, + "is_stable": true, + "comments": "sample_comment" + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/TemplateCreateRequestBody" + }, + "examples": { + "example-1": { + "value": "template_yaml: |\n template:\n name: Example_template\n identifier: example_template\n versionLabel: v1\n type: Stage\n tags: {}\n spec:\n type: Custom\n spec:\n execution:\n steps:\n - step:\n type: ShellScript\n name: ss1\n identifier: ss1\n spec:\n shell: Bash\n onDelegate: true\n source:\n type: Inline\n spec:\n script: exit 1\n environmentVariables: []\n outputVariables: []\n timeout: 10m\ngit_details:\n branch_name: branch\n file_path: /folder/file.json\n commit_message: Added Harness Git Experience\n base_branch: old_branch\n connector_ref: git_connector\n store_type: INLINE\n repo_name: example_repository\nis_stable: true\ncomments: sample_comment\n" + } + } + } + }, + "description": "Templates Create Request Body" + }, + "TemplateImportRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TemplateImportRequestBody" + } + } + } + }, + "TemplateInputsSchemaRequestBody": { + "content": {} + }, + "TemplateUpdateGitMetadataRequestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplateUpdateGitMetadataRequest" + } + } + } + } + }, + "BackstageEnvVariableRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BackstageEnvVariableRequest" + }, + "examples": { + "Example 1": { + "value": { + "env_variable": { + "identifier": "641c7f1aa18dbf72522d78f0", + "env_name": "PAGERDUTY_TOKEN", + "created": 1679589047352, + "updated": 1679589047352, + "type": "Secret", + "harness_secret_identifier": "pdtoken" + } + } + }, + "Example 2": { + "value": { + "env_variable": { + "identifier": "641c7f1aa18dbf72522d78f1", + "env_name": "GITHUB_APP_APPLICATION_ID", + "created": 1679589047352, + "updated": 1679589047352, + "type": "Config", + "value": "1234" + } + } + } + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/BackstageEnvVariableRequest" + } + } + } + }, + "BackstageEnvVariableBatchRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BackstageEnvVariableBatchRequest" + }, + "examples": {} + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/BackstageEnvVariableBatchRequest" + } + } + } + }, + "BackstagePermissionsRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BackstagePermissionsRequest" + }, + "examples": {} + } + } + }, + "StatusInfoRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatusInfoRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/StatusInfoRequest" + } + } + } + }, + "ImportHarnessEntitiesRequest": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ImportEntitiesBase" + }, + "examples": {} + } + }, + "description": "Details of Harness Entities and Catalog Location info" + }, + "LayoutRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LayoutRequest" + } + } + } + }, + "AppConfigRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AppConfigRequest" + }, + "examples": { + "Example 1": { + "value": { + "app_config": { + "config_id": "snyk-security", + "configs": "proxy:\n '/snyk':\n target: https://snyk.io/api/v1\n headers:\n User-Agent: tech-services/backstage-plugin/1.0\n Authorization: token ${SNYK_TOKEN}", + "enabled": true, + "enabled_disabled_at": 0, + "created": 1679589146025, + "updated": 1679589146025, + "env_variables": [ + { + "env_name": "SNYK_TOKEN", + "type": "Secret", + "harness_secret_identifier": "snyktoken" + } + ], + "config_name": "Snyk Security" + } + } + } + } + } + } + }, + "ConnectorInfoRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectorInfoRequest" + } + } + } + }, + "RequestPluginRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RequestPlugin" + } + } + }, + "description": "Details of the plugin being requested" + }, + "LayoutIngestRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LayoutIngestRequest" + } + } + } + }, + "GenerateYamlRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GenerateYamlRequest" + } + } + }, + "description": "Request to generate yaml for any one entity if provided or generate sample entity yaml definition" + }, + "AllowListRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AllowListRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/AllowListRequest" + } + } + } + }, + "ConfigurationEntitiesRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConfigurationEntities" + } + } + } + }, + "CheckDetailsRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CheckDetailsRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CheckDetailsRequest" + } + } + } + }, + "DataSourceDataPointInfoRequest": { + "content": {}, + "description": "Request for getting the data point data" + }, + "ScorecardRecalibrateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScorecardRecalibrateRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ScorecardRecalibrateRequest" + } + } + } + }, + "KubernetesConfigRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/KubernetesRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/KubernetesRequest" + } + } + }, + "description": "Kubernetes Configuration" + }, + "ScmConfigRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ScmRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/ScmRequest" + } + } + }, + "description": "Scm Configuration" + }, + "LicenseUsageSaveRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LicenseUsageSaveRequest" + } + } + }, + "description": "User details and accessedAt to capture license usage" + }, + "CustomPluginInfoRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomPluginInfoRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/CustomPluginInfoRequest" + } + } + } + }, + "CustomPluginCreateRequest": { + "content": { + "application/json": { + "schema": { + "type": "object" + } + } + } + }, + "BackstageHarnessSyncRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BackstageHarnessSyncRequest" + } + } + } + }, + "GroupRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GroupRequest" + } + } + } + }, + "GroupRequestList": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/GroupRequest" + } + } + } + } + }, + "HomePageLayoutRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HomePageLayoutRequest" + } + }, + "application/yaml": { + "schema": { + "$ref": "#/components/schemas/HomePageLayoutRequest" + } + } + } + }, + "DeleteHomePageLayoutIconRequest": { + "content": { + "application/json": { + "schema": { + "type": "object", + "$ref": "#/components/schemas/DeleteHomePageLayoutIconRequest" + } + } + } + }, + "EntityRequestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EntityRequest" + }, + "examples": { + "example-entity": { + "value": { + "yaml": "apiVersion: harness.io/v1\nkind: component\ntype: Service\nidentifier: my-sample-service\nname: my-sample-service\nowner: sample-owner\nspec:\n lifecycle: experimental\n ownedBy:\n - group/sample-group\nmetadata:\n description: My Sample service.\n annotations:\n backstage.io/source-location: url:https://github.com/sample/sample/tree/main/harness/sample/\n backstage.io/techdocs-ref: dir:.\n links:\n - title: Website\n url: http://my-sample-website.com\n tags:\n - my-sample\n" + } + }, + "backstage-entity": { + "value": { + "yaml": "apiVersion: backstage.io/v1alpha1\nkind: Component\nmetadata:\n name: my-sample-service\n description: My Sample service.\n annotations:\n backstage.io/source-location: url:https://github.com/sample/sample/tree/main/\n tags:\n - my-sample\nspec:\n type: service\n lifecycle: experimental\n owner: sample-owner\n" + } + } + } + } + }, + "description": "Entity YAML definition provided as a string. The YAML should conform to either the Harness entity format or the Backstage entity format, depending on the operation." + }, + "APIKeyRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "description": { + "example": "This key is for server side production environment", + "type": "string" + }, + "expiredAt": { + "type": "integer" + }, + "identifier": { + "example": "production-environment", + "type": "string" + }, + "name": { + "example": "production-env-key", + "type": "string" + }, + "type": { + "$ref": "#/components/schemas/ApiKeyRequestType" + } + }, + "required": [ + "name", + "identifier", + "type" + ], + "type": "object" + } + } + } + }, + "APIKeyUpdateRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "description": { + "example": "This key is for server side production environment", + "type": "string" + }, + "expiredAt": { + "type": "integer" + }, + "name": { + "example": "production-env-key", + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "AttributePatchRequest": { + "content": { + "application/json": { + "example": { + "instructions": [ + { + "kind": "updateAttribute", + "parameters": { + "key": "Updated attributeKey" + } + } + ] + }, + "schema": { + "$ref": "#/components/schemas/GitSyncPatchOperation" + } + } + } + }, + "AttributeRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Attribute" + } + } + }, + "required": true + }, + "EnvironmentPerspectiveUpsertRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "perspectiveIdentifier": { + "example": "12345", + "type": "string" + }, + "perspectiveName": { + "example": "myCluster", + "type": "string" + } + }, + "required": [ + "perspectiveIdentifier", + "perspectiveName" + ], + "type": "object" + } + } + } + }, + "FeatureFlagPutRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "defaultOffVariation": { + "type": "string" + }, + "defaultOnVariation": { + "type": "string" + }, + "description": { + "type": "string" + }, + "environments": { + "items": { + "$ref": "#/components/schemas/ActivationUpdate" + }, + "type": "array" + }, + "gitDetails": { + "$ref": "#/components/schemas/CfGitDetails" + }, + "name": { + "type": "string" + }, + "permanent": { + "type": "boolean" + }, + "tags": { + "items": { + "$ref": "#/components/schemas/Tag" + }, + "type": "array" + }, + "variations": { + "items": { + "$ref": "#/components/schemas/Variation" + }, + "minItems": 2, + "type": "array" + } + }, + "type": "object" + } + } + } + }, + "FeatureFlagRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "archived": { + "type": "boolean" + }, + "defaultOffVariation": { + "type": "string" + }, + "defaultOnVariation": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gitDetails": { + "$ref": "#/components/schemas/CfGitDetails" + }, + "identifier": { + "type": "string" + }, + "kind": { + "$ref": "#/components/schemas/FeatureFlagRequestKind" + }, + "name": { + "type": "string" + }, + "owner": { + "type": "string" + }, + "permanent": { + "type": "boolean" + }, + "prerequisites": { + "items": { + "$ref": "#/components/schemas/Prerequisite" + }, + "type": "array" + }, + "project": { + "type": "string" + }, + "services": { + "items": { + "$ref": "#/components/schemas/CfService" + }, + "type": "array" + }, + "tags": { + "items": { + "$ref": "#/components/schemas/Tag" + }, + "type": "array" + }, + "variations": { + "items": { + "$ref": "#/components/schemas/Variation" + }, + "minItems": 2, + "type": "array" + } + }, + "required": [ + "name", + "project", + "identifier", + "kind", + "variations", + "defaultOnVariation", + "defaultOffVariation", + "permanent" + ], + "type": "object" + } + } + } + }, + "FeaturePatchRequest": { + "content": { + "application/json": { + "example": { + "gitDetails": { + "commitMsg": "Making some changes" + }, + "instructions": [ + { + "kind": "updateName", + "parameters": { + "name": "Updated Name" + } + }, + { + "kind": "updateDescription", + "parameters": { + "description": "Updated Description" + } + }, + { + "kind": "addPrerequisite", + "parameters": { + "feature": "feature1", + "variations": [ + "variation1", + "variation2" + ] + } + }, + { + "kind": "updatePrerequisite", + "parameters": { + "feature": "feature1", + "variations": [ + "variation1" + ] + } + }, + { + "kind": "removePrerequisite", + "parameters": { + "feature": "feature1" + } + }, + { + "kind": "addVariation", + "parameters": { + "description": "Variation 1 description", + "identifier": "variation_1", + "name": "variation1", + "value": "v1" + } + }, + { + "kind": "updateVariation", + "parameters": { + "description": "Variation 1 description", + "identifier": "variation_1", + "name": "variation1", + "value": "v1" + } + }, + { + "kind": "deleteVariation", + "parameters": { + "identifier": "variation_1" + } + }, + { + "kind": "setDefaultOnVariation", + "parameters": { + "identifier": "variation_1" + } + }, + { + "kind": "setDefaultOffVariation", + "parameters": { + "identifier": "variation_1" + } + }, + { + "kind": "addTag", + "parameters": { + "name": "TagName", + "value": "TagValue" + } + }, + { + "kind": "updateTag", + "parameters": { + "name": "TagName", + "value": "TagValue" + } + }, + { + "kind": "removeTag", + "parameters": { + "name": "TagName", + "value": "TagValue" + } + }, + { + "kind": "setFeatureFlagState", + "parameters": { + "state": "on" + } + }, + { + "kind": "setFeatureFlagState", + "parameters": { + "state": "off" + } + }, + { + "kind": "addTargetsToVariationTargetMap", + "parameters": { + "targets": [ + "target1-identifier", + "target2-identifier" + ], + "variation": "variation-identifier" + } + }, + { + "kind": "removeTargetsToVariationTargetMap", + "parameters": { + "targets": [ + "target1-identifier", + "target2-identifier" + ], + "variation": "variation-identifier" + } + }, + { + "kind": "addSegmentToVariationTargetMap", + "parameters": { + "targetSegments": [ + "segment1", + "segment2" + ], + "variation": "variation-identifier" + } + }, + { + "kind": "removeSegmentToVariationTargetMap", + "parameters": { + "targetSegments": [ + "segment3", + "segment4" + ], + "variation": "variation-identifier" + } + }, + { + "kind": "clearVariationTargetMapping", + "parameters": { + "variation": "variation-identifier" + } + }, + { + "kind": "addRule", + "parameters": { + "clauses": [ + { + "attribute": "email", + "op": "eq", + "values": [ + "user1@gmail.com", + "user2@gmail.com" + ] + } + ], + "priority": 1, + "serve": { + "variation": "variation1" + }, + "uuid": "fd2ebf1f-7efb-4324-a7ee-6de0a47bf826" + } + }, + { + "kind": "removeRule", + "parameters": { + "ruleID": "testRuleID" + } + }, + { + "kind": "addClause", + "parameters": { + "clause": { + "attribute": "email", + "op": "eq", + "values": [ + "user1@gmail.com", + "user2@gmail.com" + ] + }, + "ruleID": "testRuleID" + } + }, + { + "kind": "removeClause", + "parameters": { + "clauseID": "testClauseID", + "ruleID": "testRuleID" + } + }, + { + "kind": "updateClause", + "parameters": { + "clause": [ + { + "attribute": "email", + "op": "eq", + "values": [ + "user1@gmail.com", + "user2@gmail.com" + ] + } + ], + "clauseID": "testClauseID", + "ruleID": "testRuleID" + } + }, + { + "kind": "reorderRules", + "parameters": { + "rules": [ + "rule1", + "rule2", + "rule3" + ] + } + }, + { + "kind": "updateDefaultServe", + "parameters": { + "bucketBy": "accountID", + "variations": [ + { + "variation": "variation1", + "weight": 30 + }, + { + "variation": "variation2", + "weight": 60 + }, + { + "variation": "variation3", + "weight": 10 + } + ] + } + }, + { + "kind": "updateRule", + "parameters": { + "ruleID": "testRuleID", + "variation": "variation1" + } + }, + { + "kind": "updateRule", + "parameters": { + "bucketBy": "accountID", + "ruleID": "testRuleID", + "variations": [ + { + "variation": "variation1", + "weight": 30 + }, + { + "variation": "variation2", + "weight": 60.66 + }, + { + "variation": "variation3", + "weight": 10.01 + } + ] + } + }, + { + "kind": "updateDefaultServe", + "parameters": { + "variation": "variation1" + } + }, + { + "kind": "updateOffVariation", + "parameters": { + "variation": "variation1" + } + }, + { + "Kind": "updateArchived", + "parameters": { + "archived": true + } + }, + { + "Kind": "updatePermanent", + "parameters": { + "permanent": true + } + } + ] + }, + "schema": { + "$ref": "#/components/schemas/GitSyncPatchOperation" + } + } + } + }, + "ProxyKeysPatchRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProxyKeyInstruction" + } + } + } + }, + "ProxyKeysPostRequest": { + "content": { + "application/json": { + "schema": { + "example": { + "description": "A description", + "identifier": "MyProxyKey", + "name": "My Proxy Key", + "organizations": { + "org123": { + "projects": { + "project1": { + "environments": [], + "scope": "all" + }, + "project2": { + "environments": [], + "scope": "prod" + }, + "project3": { + "environments": [], + "scope": "non-prod" + }, + "project4": { + "environments": [ + "env1", + "env2", + "env3" + ], + "scope": "selected" + } + } + }, + "org456": { + "projects": { + "project1": { + "environments": [], + "scope": "all" + }, + "project2": { + "environments": [], + "scope": "prod" + }, + "project3": { + "environments": [], + "scope": "non-prod" + }, + "project4": { + "environments": [ + "env1", + "env2", + "env3" + ], + "scope": "selected" + } + } + } + } + }, + "properties": { + "description": { + "example": "Description of the Proxy Key", + "type": "string" + }, + "identifier": { + "example": "ProxyKeyOne", + "type": "string" + }, + "name": { + "example": "Proxy key one", + "type": "string" + }, + "organizations": { + "$ref": "#/components/schemas/OrganizationDictionary" + } + }, + "required": [ + "identifier", + "name", + "organizations" + ], + "type": "object" + } + } + } + }, + "SegmentPatchRequest": { + "content": { + "application/json": { + "example": { + "instructions": [ + { + "kind": "addToIncludeList", + "parameters": { + "targets": [ + "target1", + "target2" + ] + } + }, + { + "kind": "removeFromIncludeList", + "parameters": { + "targets": [ + "target1", + "target2" + ] + } + }, + { + "kind": "addToExcludeList", + "parameters": { + "targets": [ + "target3" + ] + } + }, + { + "kind": "removeFromExcludeList", + "parameters": { + "targets": [ + "target4", + "target5" + ] + } + }, + { + "kind": "addClause", + "parameters": { + "attribute": "email", + "negate": false, + "op": "endsWith", + "values": [ + "gmail.com" + ] + } + }, + { + "kind": "updateClause", + "parameters": { + "attribute": "email", + "clauseID": "test-clause-ID", + "op": "equals", + "value": [ + "testuser@testcompany.com" + ] + } + }, + { + "kind": "removeClause", + "parameters": { + "clauseID": "test-clause-ID" + } + } + ] + }, + "schema": { + "$ref": "#/components/schemas/GitSyncPatchOperation" + } + } + } + }, + "SegmentRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "environment": { + "type": "string" + }, + "excluded": { + "items": { + "type": "string" + }, + "type": "array" + }, + "identifier": { + "example": "beta-testers", + "type": "string" + }, + "included": { + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Name of the target segment.", + "example": "Beta Testers", + "type": "string" + }, + "project": { + "type": "string" + }, + "rules": { + "description": "An array of rules that can cause a user to be included in this segment.", + "items": { + "$ref": "#/components/schemas/Clause" + }, + "type": "array" + }, + "servingRules": { + "description": "An array of rules that can cause a user to be included in this segment.", + "items": { + "$ref": "#/components/schemas/GroupServingRule" + }, + "type": "array" + }, + "tags": { + "items": { + "$ref": "#/components/schemas/Tag" + }, + "type": "array" + } + }, + "required": [ + "name", + "environment", + "project" + ], + "type": "object" + } + } + }, + "required": true + }, + "TagRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Tag" + } + } + }, + "required": true + }, + "TargetPatchRequest": { + "content": { + "application/json": { + "example": { + "gitDetails": { + "commitMsg": "Making some changes" + }, + "instructions": [ + { + "kind": "addToIncludeList", + "parameters": { + "segments": [ + "alpha-testers", + "beta-testers" + ] + } + }, + { + "kind": "removeFromIncludeList", + "parameters": { + "segments": [ + "alpha-testers", + "beta-testers" + ] + } + }, + { + "kind": "addToExcludeList", + "parameters": { + "segments": [ + "alpha-testers", + "beta-testers" + ] + } + }, + { + "kind": "removeFromExcludeList", + "parameters": { + "segments": [ + "alpha-testers", + "beta-testers" + ] + } + }, + { + "kind": "addTargetToFlagsVariationTargetMap", + "parameters": { + "features": [ + { + "identifier": "flag1", + "variation": "true" + }, + { + "identifier": "flag2", + "variation": "false" + } + ] + } + }, + { + "kind": "removeTargetFromFlagsVariationTargetMap", + "parameters": { + "features": [ + { + "identifier": "flag1", + "variation": "true" + }, + { + "identifier": "flag2", + "variation": "false" + } + ] + } + } + ] + }, + "schema": { + "$ref": "#/components/schemas/GitSyncPatchOperation" + } + } + } + }, + "TargetRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Target" + } + } + }, + "required": true + }, + "applicationsApplicationSetCreateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/applicationsApplicationSetCreateRequest" + } + } + }, + "required": true + }, + "v1Agent": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Agent" + } + } + }, + "required": true + }, + "servicev1ReconcilerFilter": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ReconcilerFilter" + } + } + }, + "required": true + }, + "servicev1ApplicationQuery": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/servicev1ApplicationQuery" + } + } + }, + "required": true + }, + "v1Filter": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1Filter" + } + } + }, + "required": true + }, + "v1AgentYamlQuery": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/v1AgentYamlQuery" + } + } + }, + "required": true + }, + "ArtifactLabelRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactLabelRequest" + } + } + }, + "description": "request to update artifact labels" + }, + "RegistryRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RegistryRequest" + } + } + }, + "description": "request for create and update registry" + }, + "ReplicationRuleRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReplicationRuleRequest" + } + } + }, + "description": "request for create and update replication rule" + }, + "WebhookRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WebhookRequest" + } + } + }, + "description": "request for create and update webhook" + }, + "ConsumePluginOutputRespRequest": { + "content": { + "application/json": { + "examples": { + "Example 1": { + "value": { + "command": "update", + "harnessCommand": "Update", + "instanceIdentifier": "instance1", + "orgId": "myOrg", + "pipelineExecutionId": "exec1", + "pipelineIdentifier": "pip1", + "projectId": "myProject", + "schemaIdentifier": "schema1", + "stageExecutionId": "stage1", + "stepResponse": "base64-compressed" + } + } + }, + "schema": { + "properties": { + "command": { + "type": "string", + "x-stoplight": { + "id": "zprby0nmdhugg" + } + }, + "instanceIdentifier": { + "type": "string", + "x-stoplight": { + "id": "e5hwdp3vd6g3k" + } + }, + "orgId": { + "type": "string", + "x-stoplight": { + "id": "ysxm7l1k2ma1m" + } + }, + "pipelineExecutionId": { + "type": "string", + "x-stoplight": { + "id": "ol0rbt3gjzj7n" + } + }, + "pipelineIdentifier": { + "type": "string", + "x-stoplight": { + "id": "cfke77225v14t" + } + }, + "projectId": { + "type": "string", + "x-stoplight": { + "id": "tjhcrfjkcvjy8" + } + }, + "schemaIdentifier": { + "type": "string", + "x-stoplight": { + "id": "yj3aw0b0xu898" + } + }, + "stageExecutionId": { + "type": "string", + "x-stoplight": { + "id": "b084jsvql4007" + } + }, + "stepResponse": { + "description": "base-64 encoded compressed step response from plugin extension based on command", + "type": "string", + "x-stoplight": { + "id": "uex4gsfsb00uc" + } + } + }, + "required": [ + "orgId", + "projectId", + "schemaIdentifier", + "instanceIdentifier", + "harnessCommand", + "command", + "pipelineIdentifier", + "pipelineExecutionId", + "stageExecutionId", + "stepResponse" + ], + "type": "object" + } + } + } + }, + "ConsumePluginRespRequest": { + "content": { + "application/json": { + "examples": { + "Example 1": { + "value": { + "command": "Update", + "data": { + "tag": "1.0" + }, + "dbInstance": "myinstance", + "dbSchema": "myschema", + "logs": "Starting Liquibase at...", + "org": "myorg", + "pipeline": "pip1", + "planExecutionId": "pipExec1", + "project": "myproject", + "stageExecutionId": "stageExec1", + "status": "IN_PROGRESS" + } + } + }, + "schema": { + "properties": { + "compressedStepOutput": { + "description": "compressed step output", + "type": "string", + "x-stoplight": { + "id": "a9cmmbokcnoe8" + } + }, + "data": { + "description": "Data associated with command execution", + "type": "object", + "x-stoplight": { + "id": "x106nmejwdkgl" + } + }, + "dbInstance": { + "type": "string", + "x-stoplight": { + "id": "3ddzm85isheyg" + } + }, + "dbSchema": { + "type": "string", + "x-stoplight": { + "id": "9dipu2aap5uz2" + } + }, + "logs": { + "type": "string", + "x-stoplight": { + "id": "8lr1r6lycw0fj" + } + }, + "org": { + "description": "Organization identifier", + "type": "string" + }, + "parentStepType": { + "type": "string", + "x-stoplight": { + "id": "bwner6khhs78u" + } + }, + "pipeline": { + "description": "Identifier of the pipeline", + "type": "string", + "x-stoplight": { + "id": "681af9f5ux915" + } + }, + "planExecutionId": { + "description": "ExecutionId of the pipeline executed", + "type": "string", + "x-stoplight": { + "id": "1k0q9xpfkoug5" + } + }, + "project": { + "description": "Project identifier", + "type": "string" + }, + "stageExecutionId": { + "description": "ExecutionId of the stage executed", + "type": "string", + "x-stoplight": { + "id": "3xilysg54w5bw" + } + }, + "status": { + "$ref": "#/components/schemas/CommandExecutionStatus" + } + }, + "required": [ + "org", + "project", + "dbSchema", + "dbInstance", + "logs", + "status", + "data", + "command", + "pipeline", + "planExecutionId", + "stageExecutionId" + ], + "type": "object" + } + } + } + }, + "CustomOperationRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomOperationInput" + } + } + }, + "description": "Request for getting custom operation result" + }, + "DBInstanceCreateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DBInstanceIn" + } + } + }, + "required": true + }, + "DBInstanceFilterRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DBInstanceFilterIn" + } + } + } + }, + "DBInstanceListRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DBInstanceListInput" + } + } + }, + "description": "Request for listing instances where schema input is not a required property." + }, + "DBInstanceUpdateRequest": { + "content": { + "application/json": { + "examples": { + "example-1": { + "value": { + "branch": "string", + "connector": "string", + "context": "string", + "name": "string", + "tags": { + "property1": "string", + "property2": "string" + } + } + } + }, + "schema": { + "properties": { + "branch": { + "description": "branch where the instance is stored", + "type": "string" + }, + "connector": { + "description": "DB Connector", + "type": "string" + }, + "context": { + "description": "Liquibase context", + "type": "string" + }, + "liquibaseSubstituteProperties": { + "additionalProperties": { + "type": "string", + "x-stoplight": { + "id": "mx0d9jv6cnyjq" + } + }, + "description": "properties to substitute in liquibase changelog", + "type": "object", + "x-stoplight": { + "id": "6da3nor82319i" + } + }, + "name": { + "description": "name of the database instance\n", + "maxLength": 128, + "type": "string" + }, + "tags": { + "additionalProperties": { + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "max=128" + } + }, + "description": "Database instance tags", + "maxProperties": 128, + "type": "object" + }, + "version": { + "description": "version of the changelog applied to the database", + "type": "string" + } + }, + "type": "object" + } + } + }, + "description": "Database instance update request", + "required": true + }, + "DBSchemaCreateRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DBSchemaIn" + } + } + }, + "required": true + }, + "DBSchemaFilterRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DBSchemaFilterIn" + } + } + } + }, + "DBSchemaUpdateRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "changeLogScript": { + "description": "if schemaType is Script location of the changelog file after using a custom script to download", + "properties": { + "command": { + "description": "command script used to download the changelog file", + "example": "curl -X -o changeLog.yaml https://www.filestore.com/changeLog.yaml", + "type": "string", + "x-stoplight": { + "id": "uga2w98ndtla2" + } + }, + "image": { + "description": "The fully-qualified name (FQN) of the image", + "example": "plugins/image:latest", + "type": "string", + "x-stoplight": { + "id": "rtvl2gmxyo7mw" + } + }, + "location": { + "description": "location of the changelog file", + "example": "folder/changelog.yaml", + "type": "string", + "x-stoplight": { + "id": "xarkte21qk96f" + } + }, + "shell": { + "description": "shell type", + "example": "Sh, Bash, <+pipeline.variables.shell>", + "type": "string" + } + }, + "type": "object", + "x-stoplight": { + "id": "715ey5dxwedi1" + } + }, + "changelog": { + "additionalProperties": false, + "description": "location of the changelog file containing schema changes in a git repository\n", + "properties": { + "archivePath": { + "description": "path excluding the repo till the archive file", + "type": "string", + "x-stoplight": { + "id": "lmyqjd54oln7q" + } + }, + "connector": { + "description": "identifier of the harness git connector", + "example": "harness_git", + "type": "string" + }, + "location": { + "description": "path to the change log file", + "example": "folder/changelog.yaml", + "type": "string" + }, + "repo": { + "description": "repo name of the git based connector when ConnectionType is Account", + "type": "string", + "x-stoplight": { + "id": "jpl7puzto8jfo" + } + } + }, + "type": "object" + }, + "name": { + "description": "name of the database schema\n", + "maxLength": 128, + "type": "string" + }, + "service": { + "description": "harness service corresponding to database schema\n", + "example": "harness_service", + "type": "string" + }, + "tags": { + "additionalProperties": { + "type": "string", + "x-oapi-codegen-extra-tags": { + "validate": "max=128" + } + }, + "description": "Database Schema tags", + "maxProperties": 128, + "type": "object" + }, + "type": { + "$ref": "#/components/schemas/DBSchemaType" + } + }, + "type": "object" + } + } + }, + "description": "Database schema update request", + "required": true + }, + "ExecutionConfigUpdateRequest": { + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ExecutionConfigOperation" + }, + "type": "array" + } + } + }, + "description": "Details of the Update Operations" + }, + "FailureInterruptRequest": { + "content": { + "application/json": { + "examples": { + "Example 1": { + "value": { + "command": "update", + "harnessCommand": "Update", + "instanceIdentifier": "instance1", + "interruptType": "Abort", + "orgId": "myOrg", + "pipelineExecutionId": "exec1", + "pipelineIdentifier": "pip1", + "projectId": "myProject", + "schemaIdentifier": "schema1", + "stageExecutionId": "stage1" + } + } + }, + "schema": { + "properties": { + "command": { + "description": "Plugin actual command run on customer db", + "type": "string", + "x-stoplight": { + "id": "2sur1xciaxo7g" + } + }, + "instanceIdentifier": { + "type": "string", + "x-stoplight": { + "id": "dd9eskstc1qfo" + } + }, + "interruptType": { + "type": "string", + "x-stoplight": { + "id": "6jcjf7pv5xkqh" + } + }, + "orgId": { + "type": "string", + "x-stoplight": { + "id": "q31sgv0yohdg2" + } + }, + "pipelineExecutionId": { + "type": "string", + "x-stoplight": { + "id": "ncsxeit18aman" + } + }, + "pipelineIdentifier": { + "type": "string", + "x-stoplight": { + "id": "kz819pteguv6h" + } + }, + "projectId": { + "type": "string", + "x-stoplight": { + "id": "gcxo9lb81t7j4" + } + }, + "schemaIdentifier": { + "type": "string", + "x-stoplight": { + "id": "zyf5fsgn5spry" + } + }, + "stageExecutionId": { + "type": "string", + "x-stoplight": { + "id": "9s88c94tzs2ah" + } + } + }, + "required": [ + "orgId", + "projectId", + "schemaIdentifier", + "instanceIdentifier", + "harnessCommand", + "harnessParentStepType", + "command", + "pipelineIdentifier", + "pipelineExecutionId", + "stageExecutionId", + "interruptType" + ], + "type": "object" + } + } + }, + "description": "Request body for consuming failure interrupts" + }, + "FetchSQLStatementRequest": { + "content": { + "application/json": { + "schema": { + "properties": { + "changesetFQN": { + "minLength": 1, + "type": "string", + "x-stoplight": { + "id": "dcbwmse6c7iw6" + } + } + }, + "required": [ + "changesetFQN" + ], + "type": "object" + } + } + }, + "description": "Request Body for Fetching SQL statements" + }, + "LogIngestRequest": { + "content": { + "text/plain": { + "schema": { + "description": "raw text logs from plugin", + "type": "string" + } + } + }, + "description": "Request body for log ingestion", + "required": true + }, + "MigrationStateGetRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MigrationStateIn" + } + } + }, + "description": "Inputs to get migration state of schema" + }, + "PluginStepInputsRequest": { + "content": { + "application/json": { + "examples": { + "Example 1": { + "value": { + "command": "Update", + "dbInstance": "prod-1-instance", + "dbSchema": "myschema", + "directory": "myDir", + "metadata": { + "pipeline": "pip1", + "planExecutionId": "planExec1", + "stageExecutionId": "stageExec1" + }, + "tag": "tag1" + } + } + }, + "schema": { + "properties": { + "Org": { + "description": "Organization identifier", + "type": "string" + }, + "Project": { + "description": "Project identifier", + "type": "string" + }, + "customCommand": { + "description": "when pluginCommand type is Custom, customCommand is considered which is any string provided by the user", + "type": "string", + "x-stoplight": { + "id": "jjz90v9xyk450" + } + }, + "dbInstance": { + "description": "db instance identifier", + "example": "myschema/prod-1-instance", + "type": "string" + }, + "dbSchema": { + "description": "dbSchema reference", + "type": "string", + "x-stoplight": { + "id": "saiftwb6u1v5i" + } + }, + "directory": { + "type": "string" + }, + "excludeChangeLogFile": { + "default": false, + "description": "if changeLogFile is required or not for LiquibaseCommand step. If true, then dbops-clone will not happen and changeLog is not passed in the settings.", + "type": "boolean", + "x-stoplight": { + "id": "z5xwt0vstng3h" + } + }, + "includeJwtAuth": { + "default": false, + "description": "Controls whether to include JWT authentication token in the plugin settings. If true, a bearer token will be included.", + "type": "boolean", + "x-stoplight": { + "id": "j8k2m5n9p0q1r" + } + }, + "pipelineExecutionMetadata": { + "$ref": "#/components/schemas/PipelineExecutionMetadata" + }, + "properties": { + "additionalProperties": { + "type": "string", + "x-stoplight": { + "id": "ana2k0b6a90wb" + } + }, + "description": "key value pair for properties which help decide response", + "type": "object", + "x-stoplight": { + "id": "j7t40kp0dulaf" + } + }, + "settings": { + "additionalProperties": { + "type": "string", + "x-stoplight": { + "id": "zqkdd4n7n4nay" + } + }, + "description": "Key value mapping of user input plugin settings", + "type": "object", + "x-stoplight": { + "id": "f7g438c5t4whg" + } + } + }, + "required": [ + "dbInstance", + "command", + "dbSchema" + ], + "type": "object" + } + } + }, + "description": "Inputs to create plugin inputs", + "required": true + }, + "SchemaInstanceMetadataRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SchemaInstanceMetadataInput" + } + } + }, + "description": "Request for getting schema-instance metadata and image versions for step execution" + }, + "SbomProcessRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SbomProcessRequestBody" + } + } + } + }, + "EnforceSbomRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnforceSbomRequestBody" + } + } + } + }, + "EnforceSbomRequestBodyV2": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/EnforceSbomRequestBodyV2" + } + } + } + }, + "NormalisedSbomComponentRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NormalisedSbomComponentRequestBody" + } + } + }, + "description": "" + }, + "ArtifactListingRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactListingRequestBody" + } + } + } + }, + "SbomScorecardRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SbomScorecardRequestBody" + } + } + } + }, + "ConfigRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConfigRequestBody" + } + } + } + }, + "ExecutionLimitRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExecutionLimitRequestBody" + } + } + } + }, + "PipelineInfraConfigRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineInfraConfigRequestBody" + } + } + } + }, + "BaselineRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BaselineRequestBody" + } + } + } + }, + "ArtifactSbomDriftRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactSbomDriftRequestBody" + } + } + } + }, + "RemediationTrackerCreateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationTrackerCreateRequestBody" + } + } + } + }, + "ExcludeArtifactRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ExcludeArtifactRequest" + } + } + } + }, + "OrchestrationStepDriftRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrchestrationStepDriftRequestBody" + } + } + }, + "description": "Provide the base from which drift has to be calculated." + }, + "RemediationListingRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationListingRequestBody" + } + } + } + }, + "RemediationTrackerUpdateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationTrackerUpdateRequestBody" + } + } + } + }, + "RemediationArtifactListingRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationArtifactListingRequestBody" + } + } + } + }, + "RemediationArtifactDeploymentsListingRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RemediationArtifactDeploymentsListingRequestBody" + } + } + } + }, + "CreateTicketRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTicketRequest" + } + } + } + }, + "ArtifactListingPipelineRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactListingPipelineRequestBody" + } + } + } + }, + "PipelineStoreConfigRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineStoreConfigRequestBody" + } + } + } + }, + "SLSAVerificationRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SLSAVerificationRequestBody" + } + } + } + }, + "SLSAVerificationRequestBodyV2": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SLSAVerificationRequestBodyV2" + } + } + } + }, + "PolicyViolationRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PolicyViolationRequestBody" + } + } + } + }, + "ProvenanceRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProvenanceRequestBody" + } + } + } + }, + "ProvenanceRequestBodyV2": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProvenanceRequestBodyV2" + } + } + } + }, + "SaveOrchestrationRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SaveOrchestrationRequest" + } + } + } + }, + "SaveOrchestrationRequestBodyV2": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SaveOrchestrationRequestV2" + } + } + } + }, + "ArtifactComponentsRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ArtifactComponentsRequestBody" + } + } + } + }, + "CreateIntegrationRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateIntegrationRequest" + } + } + } + }, + "ConfigureReposRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConfigureReposRequest" + } + } + } + }, + "ComplianceStandardsRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceFilter" + } + } + } + }, + "CreateComplianceStandardRequestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ComplianceCheck" + } + } + } + } + }, + "BaselineV2RequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BaselineV2RequestBody" + } + } + } + }, + "CreateComplianceResultRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateComplianceResult" + }, + "examples": { + "Example 1": { + "value": { + "repo_url": "string", + "default_branch": "string", + "pipeline_execution_identifier": "string", + "step_execution_identifier": "string", + "scm_platform": "string", + "results": [ + { + "compliance_id": "string", + "title": "string", + "category": "string", + "category_id": "string", + "type": "SCM", + "standards": [ + "CIS" + ], + "description": "string", + "tags": [ + "string" + ], + "severity": "CRITICAL", + "reason": "string", + "status": "PASS", + "remediation": "string", + "url": "string", + "entity": "REPOSITORY" + } + ], + "stage_execution_identifier": "string", + "pipeline": "string" + } + } + } + } + } + }, + "FetchComplianceResultRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceResultFilter" + } + } + } + }, + "ComplianceEvaluationTrendRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceResultFilter" + } + } + } + }, + "PipelineConfigUpdateRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PipelineConfigUpdateRequest" + } + } + } + }, + "CodeRepositoryListingRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CodeRepositoryListingRequest" + } + } + } + }, + "ComplianceResultsOverviewRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceResultFilter" + } + } + }, + "description": "" + }, + "FetchComplianeResultChecksStatsRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceResultFilter" + } + } + } + }, + "ComplianceResultsEvaluationBreakdownByArtifactsRequest": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceResultFilter" + } + } + } + }, + "FetchComplianceResultByArtifactRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ComplianceResultByArtifactFilter" + } + } + } + }, + "DownloadSbomRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DownloadSbomRequest" + } + } + } + }, + "IntegrationStepConfigRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IntegrationStepConfigRequestBody" + } + } + } + } + }, + "securitySchemes": { + "x-api-key": { + "name": "x-api-key", + "type": "apiKey", + "in": "header", + "description": "API key is a token provided while making the API calls. This is used to authenticate the client at the exposed endpoint." + } + }, + "headers": { + "X-Total-Elements": { + "schema": { + "type": "integer" + }, + "description": "Total number of elements returned in Paginated response." + }, + "X-Page-Number": { + "schema": { + "type": "integer" + }, + "description": "Page number in Paginated response." + }, + "X-Page-Size": { + "schema": { + "type": "integer" + }, + "description": "Maximum page size in Paginated response." + } + } + }, + "x-stoplight": { + "id": "oc91t4vrfnjyi" + }, + "x-tagGroups": [ + { + "name": "Organizations", + "tags": [ + "Organization" + ] + }, + { + "name": "Projects", + "tags": [ + "Org Project", + "Project" + ] + }, + { + "name": "Secrets", + "tags": [ + "Account Secret", + "Org Secret", + "Project Secret", + "Secrets" + ] + }, + { + "name": "Connectors", + "tags": [ + "Account Connector", + "Org Connector", + "Project Connector", + "Connectors", + "GoogleSecretManagerConnector" + ] + }, + { + "name": "Roles", + "tags": [ + "Account Roles", + "Organization Roles", + "Project Roles", + "Roles" + ] + }, + { + "name": "Resource Groups", + "tags": [ + "Account Resource Groups", + "Organization Resource Groups", + "Project Resource Groups", + "Filter Resource Groups", + "Harness Resource Group", + "Zendesk" + ] + }, + { + "name": "Role Assignments", + "tags": [ + "Account Role Assignments", + "Org Role Assignments", + "Project Role Assignments", + "Role Assignments" + ] + }, + { + "name": "Platform", + "tags": [ + "Access Control List", + "Account Banner", + "Account Banner", + "Account Licensed Modules", + "Account License Type", + "Account Webhooks", + "AccountSetting", + "Accounts", + "Analyze Account Access Policy", + "Analyze Organization Access Policy", + "Analyze Project Access Policy", + "ApiKey", + "Audit", + "AuditFilters", + "Authentication Settings", + "Canny", + "Devops Essentials License Data By Account", + "EULA", + "Filter", + "Harness Resource Type", + "Invite", + "IP Allowlist", + "Nextgen Ldap", + "Notification Channels", + "Notification Rules", + "OIDC", + "Oidc-Access-Token", + "Oidc-ID-Token", + "Org Webhooks", + "Permissions", + "Project Webhooks", + "Secret Managers", + "Service Account", + "Setting", + "SMTP", + "Source Code Manager", + "Token", + "User", + "User Group", + "Variables" + ] + }, + { + "name": "Delegate", + "tags": [ + "Agent mTLS Endpoint Management", + "Delegate Download Resource", + "Delegate Group Tags Resource", + "Delegate Setup Resource", + "Delegate Token Resource" + ] + }, + { + "name": "Pipelines", + "tags": [ + "Pipelines", + "Input Sets", + "Approvals", + "Pipeline Execution", + "Pipeline Dashboard", + "Pipeline Input Set", + "Pipeline", + "Pipeline Execution Details", + "Pipeline Execute", + "Pipeline Refresh", + "Pipeline data retention", + "Triggers", + "TriggersEvents", + "Webhook Triggers", + "Webhook Event Handler" + ] + }, + { + "name": "Artifact Registry", + "tags": [ + "Registries", + "Artifacts", + "Docker Artifacts", + "Helm Artifacts", + "Spaces" + ] + }, + { + "name": "Database DevOps", + "tags": [ + "Database Schema", + "Database Instance", + "Deployed State", + "Execution Config", + "Migration State" + ] + }, + { + "name": "CD", + "tags": [ + "K8s Release Service Mapping", + "CustomDeployment", + "Environments", + "EnvironmentGroup", + "Infrastructures", + "Usage", + "File Store", + "Service Dashboard", + "ServiceOverrides", + "Rollback", + "tas" + ] + }, + { + "name": "Deployment Freeze", + "tags": [ + "Freeze CRUD", + "Freeze Evaluation", + "Freeze Schema" + ] + }, + { + "name": "Services", + "tags": [ + "Account Services", + "Org Services", + "Project Services", + "Services" + ] + }, + { + "name": "Rancher Infrastructures", + "tags": [ + "Account Rancher Infrastructure", + "Org Rancher Infrastructure", + "Project Rancher Infrastructure" + ] + }, + { + "name": "Templates", + "tags": [ + "Account Template", + "Org Template", + "Project Template", + "Templates", + "Global Templates" + ] + }, + { + "name": "GitOps", + "tags": [ + "Agents", + "Application", + "Applications", + "Certificates", + "Clusters", + "Dashboard Aggregates", + "Dashboards", + "GnuPGP Keys", + "GPG Keys", + "Hosts", + "Project mappings", + "Projects", + "Reconciler", + "Repositories", + "Repository Certificates", + "Repository credentials", + "ValidateHost" + ] + }, + { + "name": "GitX", + "tags": [ + "GitX Webhooks", + "Org Gitx Webhooks", + "Project Gitx Webhooks" + ] + }, + { + "name": "CCM", + "tags": [ + "Cloud Cost Anomalies", + "Cloud Cost BI Dashboards", + "Cloud Cost Budget Groups", + "Cloud Cost Budgets", + "Cloud Cost K8S Connectors Metadata", + "Cloud Cost Details", + "Cloud Cost Overview", + "Cloud Cost Cost Categories", + "RuleEnforcement", + "Rule", + "Rule Executions", + "Rule Sets", + "Governance Overview", + "Cloud Cost Perspectives Folders", + "Cloud Cost Perspective Reports", + "Cloud Cost Perspectives", + "Cloud Cost Recommendations Details", + "Cloud Cost Recommendations", + "Cloud Cost Recommendation Jira", + "Cloud Cost Recommendation Servicenow", + "Cloud Cost Recommendation Ignore List", + "Cloud Cost AutoStopping Rules", + "Cloud Cost AutoStopping Rules V2", + "Cloud Cost AutoStopping Load Balancers", + "Cloud Cost AutoStopping Fixed Schedules", + "Commitment Orchestrator Events APIs" + ] + }, + { + "name": "Feature Flags", + "tags": [ + "API Keys", + "Feature Flags", + "Targets", + "Target Groups", + "Environment Perspectives", + "Anomalies", + "Proxy", + "Tags" + ] + }, + { + "name": "SRM", + "tags": [ + "Monitored Services", + "SLOs dashboard", + "NG SLOs", + "SLOs", + "Downtime", + "Srm Notification" + ] + }, + { + "name": "IDP", + "tags": [ + "Entities", + "CatalogCustomProperties", + "Scores", + "DataSource", + "KubernetesDataPoints", + "AppConfig", + "PluginInfo", + "LayoutProxy" + ] + }, + { + "name": "Custom Dashboards", + "tags": [ + "aida", + "dashboards", + "downloads", + "embed", + "folders" + ] + }, + { + "name": "Policy Management", + "tags": [ + "dashboard", + "examples", + "policies", + "evaluate", + "evaluations", + "policysets", + "system" + ] + }, + { + "name": "Code", + "tags": [ + "repository", + "status_checks", + "pullreq", + "upload", + "webhook", + "resource", + "rules", + "labels" + ] + }, + { + "name": "IaCM", + "tags": [ + "usage", + "approvals", + "costs", + "executions", + "module-registry", + "workspaces", + "settings", + "tf-standard-backend", + "variables" + ] + }, + { + "name": "STO", + "tags": [ + "Exemptions", + "Issues", + "Scans", + "Products", + "Test Targets", + "Target Variants" + ] + }, + { + "name": "SEI", + "tags": [ + "Collection categories", + "Collections", + "Contributors", + "DORA" + ] + }, + { + "name": "Git Sync (deprecated)", + "tags": [ + "Git Branches", + "Git Full Sync", + "Git Sync Settings", + "Git Sync", + "Git Sync Errors" + ] + }, + { + "name": "Error Models", + "tags": [ + "Error Response", + "Governance Metadata" + ] + }, + { + "name": "Supply Chain Security", + "tags": [ + "integration", + "PipelineInfraConfig", + "SBOM", + "Integration Step Config", + "Delete Step Config", + "Delete Repositories", + "Pipeline Store Config" + ] + }, + { + "name": "Chaos Engineering", + "tags": [ + "Chaos Engineering" + ] + } + ] +} \ No newline at end of file